About the Role
About GitHub
GitHub is the world’s leading platform for agentic software development — powered by Copilot to build, scale, and deliver secure software. Over 180 million developers, including more than 90% of the Fortune 100 companies, use GitHub to collaborate, and more than 77,000 organisations have adopted GitHub Copilot.
Locations
In this role you can work from Remote, Canada.
Overview
The Elasticsearch team at GitHub owns the infrastructure and code that powers searching Issues, Pull Requests, Projects, Discussions and more. We're responsible for the creation and management of large-scale Elasticsearch clusters (hundreds of terabytes of data serving multiple thousands of reads and writes per second). Our problem space also includes optimizing index creation, population, repair and reindex processes to ensure that indexes with billions or trillions of records are recoverable, correctly mapped, and can be restored quickly. At the same time we're also focused on pushing the boundaries of cluster management, scale and availability.
We're looking for a staff search and data focused engineer to join the team and help us build the future of Search at GitHub. Our top priorities include scaling support for both agentic and human-driven traffic, improving relevance tooling for teams that build search experiences, and building an API-driven interface between our relational data and search indexes.
Responsibilities
- Design, develop, test and ship high-quality technical solutions that scale across multiple GitHub services and become intimately familiar with the systems you build and take pride in writing maintainable code.
- Provide technical leadership, mentorship, pairing opportunities, and code reviews to encourage the growth of others; support teams in producing extensible and maintainable code, ensuring integration with downstream dependencies and adherence to quality standards.
- Own and advocate for the health and quality of the systems that the team builds, including participating in on-call for first responder rotations and live incidents.
- Write architecture briefs and proposals and carry out code experiments.
- Design and implement APIs to facilitate seamless integration between software components.
- Utilize CI/CD tools to set up automated pipelines for continuous integration and delivery.
- Collaborate with cross-functional teams and partner with stakeholders and lead discussions for technical solutions, including design and cost considerations.
- Create and guide others in developing clear testing plans to assure solution quality, reliability, and performance; defining success metrics; and integrating customer feedback for continuous improvement - all while ensuring system architecture meets security and compliance standards.
- Maintain executional and operational excellence within and potentially across teams/organizations.
- Apply debugging tools and telemetry to verify assumptions, proactively resolve issues, and optimize code performance and maintainability.
Qualifications
Required Qualifications
9+ years' experience in software engineering, computer science, or related technical discipline with proven experience maintaining and delivering production software coding in languages including, but not limited to, Go, Ruby, Rust, Python, JavaScript, C, C++, C#, Java, OR associate’s degree in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field AND 8+ years' experience in software engineering, computer science, or related technical discipline with proven experience maintaining and delivering production software coding in languages including, but not limited to, Go, Ruby, Rust, Python, JavaScript, C, C++, C#, Java, OR bachelor's degree in Computer Science or related field AND 7+ years' experience in software engineering, computer science, or related technical discipline with proven experience maintaining and delivering production software.
Requirements
Software Engineering Experience
9+ years of experience in software engineering or related technical discipline.
Elasticsearch Knowledge
Experience with managing large-scale Elasticsearch clusters.
API Development
Proficiency in designing and implementing APIs for software integration.
CI/CD Tools
Familiarity with CI/CD tools for automated integration and delivery.
Nice to Have
Experience in providing technical leadership and mentorship.
Ability to apply debugging tools and telemetry for performance optimization.
Benefits
Remote Work
Opportunity to work remotely from Canada.
Professional Development
Access to resources for continuous learning and improvement.