Space is limited
Course logo

Search Engineering

This course covers the fundamentals of developing, debugging, deploying and maintaining a search engine. We'll learn how to develop performant indexing and query pipelines, scale our engine for both high volume query and document loads. We will also dig into how to best debug common scenarios related to typical search use cases and performance needs. Finally, we will cover how to design for fault tolerance and disaster recovery, while monitoring the health and security of your production system.

Throughout the course, you will take a hands-on approach via weekly projects and examples using the OpenSearch search engine (an open fork of Elasticsearch). While the course uses OpenSearch, the concepts taught will be broadly applicable across search engines like Apache Solr, Lucene, Elasticsearch and Vespa.

Note: This course assumes that you have already learned search fundamentals; if not, then we encourage you to take our companion “Search Fundamentals” course so that you will be prepared for this one.

Instructor profile photo
Grant Ingersoll
Former CTO at Wikimedia
Instructor profile photo
Dave Anderson
Principal Software Engineer at NetSuite
Real-world projects that teach you industry skills.
Learn alongside a small group of your professional peers
Part-time program with 2 live events per week:
Next Cohort
April 3, 2023
Duration
4 weeks
Price
US$ 800
or included with membership

Course taught by expert instructors

Instructor Photo
Affiliation logo

Grant Ingersoll

Former CTO at Wikimedia

Grant is a CTO, independent consultant and advisor. He is the former CTO of the Wikimedia Foundation and the co-founder and ex-CTO of Lucidworks, co-author of Taming Text, co-founder of Apache Mahout and a long-standing committer on the Apache Lucene and Solr open source projects. Grant’s experience includes managing a large team of engineers, researchers and data scientists at a top ten website as well as engineering a variety of search, question answering, and natural language processing applications for a variety of domains and languages. He earned his B.S. from Amherst College in Math and Computer Science and his M.S. in Computer Science from Syracuse University.

Instructor Photo
Affiliation logo

Dave Anderson

Principal Software Engineer at NetSuite

Dave is a versatile software architect, technology, and entrepreneur, and currently a Principal Software Engineer at Oracle NetSuite. Dave's areas of expertise include building and operating high-scale, data-intensive distributed systems, search with machine learning applications, container orchestration, and SRE. Prior to Oracle NetSuite, Dave has been a serial entrepreneur as Co-Founder of Peopleclick and Zema Good.

The course

Learn and apply skills with real-world projects.

Who is it for?
  • Software engineers looking to enhance their search engineering skills related to indexing and search performance, scalability, fault tolerance, security and debugging.

Prerequisites
  • Ability to write Python and work with documented libraries.

  • Comfort working with web applications, Docker basics (e.g. start, stop) and the command line.

  • Search Fundamentals (https://corise.com/course/search-fundamentals) class certificate or academic or industry experience working with search engines such as Elasticsearch/OpenSearch/Solr/Vespa. We will not be teaching search fundamentals in this course.

Not ready?

Try these prep courses first

Learn
  • Understand common search architectures and when to use them
  • Learn how to increase query and indexing performance
  • Know key data modeling tradeoffs performance implications
Project
You will improve the Indexing and query performance of a working search system.
    Learn
    • Understand how to tune a search engine for memory and storage considerations of an application
    • Learn how different caching strategies work and their performance implications
    • Know what OpenSearch, JVM and operating system parameters impact search operations
    Project
    You will tune a single node of OpenSearch for memory, storage and performance factors as well as explore key single node configurations and their impact on the system.
      Learn
      • Know the node roles and strategies for scaling out your cluster, such as election of primary and replica nodes
      • Understand leader election and failover scenarios
      • Learn common sharding and replication strategies and how they relate to query and ingestion performance
      Project
      You will expand your single node OpenSearch instance to a multi-node search cluster
        Learn
        • Understand key monitoring features and functionalities
        • Know what the key operational metrics are to ensure cluster health and stability
        • Learn how to configure key security features such as encryption, authentication, and authorization on a cluster
        • Understand options for backup and recovery of indices
        Project
        You will work through key monitoring, backup/recovery and security scenarios to improve the health of your cluster.

          Real-world projects

          Work on projects that bring your learning to life.
          Made to be directly applicable in your work.

          Live access to experts

          Sessions and Q&As with our expert instructors, along with real-world projects.

          Network & community

          Core reviews a study groups. Share experiences and learn alongside a global network of professionals.

          Support & accountability

          We have a system in place to make sure you complete the course, and to help nudge you along the way.

          Frequently Asked Questions

          Still not sure?

          Get in touch and we'll help you decide.

          Keep in touch for updates, discounts, and new courses.

          Questions? Ask us anything at hello@corise.com

          © 2021-2022 CoRise Education