GitHub is the world’s leading platform for agentic software development, and they are seeking a Senior Software Engineer to enhance the collaboration experience by designing and implementing scalable code search technology. The role involves working closely with a diverse team to deliver high-quality technical solutions that millions of developers depend on.
Responsibilities:
- Design, develop, test and ship high-quality technical solutions that scale across multiple GitHub services
- Collaborate with cross-functional teams to define and implement innovative solutions
- Provide technical leadership, mentorship, pairing opportunities, and code reviews to encourage the growth of others
- Own and advocate for the health and quality of the systems that the team builds, including participating in on-call and first responder rotations
- Write architecture briefs and proposals, carry out code experiments, and build prototypes to learn how we can achieve planetary scale with our systems
- 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
- Become intimately familiar with the systems you build and take pride in writing maintainable code
Requirements:
- 6+ 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, C, C++, C#, Java, JavaScript, Go, Ruby, Rust, or Python
- OR Associate's Degree in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field AND 5+ 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, C, C++, C#, Java, JavaScript, Go, Ruby, Rust, or Python
- OR Bachelor's Degree in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field AND 4+ 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, C, C++, C#, Java, JavaScript, Go, Ruby, Rust, or Python
- OR Master's Degree in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field AND 2+ 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, C, C++, C#, Java, JavaScript, Go, Ruby, Rust, or Python
- OR Doctorate in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field
- OR equivalent experience
- 6+ years experience designing, building, scaling and maintaining large-scale distributed systems (large scale = user base of 100 million+)
- 2+ years experience in systems programming, search index internals and information retrieval
- 4+ years experience designing and implementing data structures and algorithms
- Experience effectively contributing to technical strategy and roadmaps with strong customer focus and data-driven approach
- Passionate about fostering good engineering practices and processes with solid understanding of testing principles and high-quality software
- Understanding of production system monitoring and observability with skills across network, application, caching, queuing, load-balancing, storage and distributed services layers