Software Engineer - Graph

Sourcegraph
Summary
Join Sourcegraph and play a key role in improving how developers understand and navigate complex codebases by building advanced compiler-type indexers and robust backend APIs and services. As a software engineer on the Graph team, you will contribute to a small but impactful team essential to the developer experience worldwide. This role requires a mix of skills in programming language implementation, database optimization, and backend web development. You will actively drive bug fixes and small enhancements, develop and maintain compiler integrations, and drive significant features such as cross-language precise navigation. Sourcegraph offers above-average salaries, equity, and generous perks and benefits. The company values innovation, collaboration, and continuous learning, providing opportunities to work on cutting-edge technology and make a real difference in the software development community.
Requirements
- Focused on improving the end-user experience while understanding constraints imposed by existing code and specific business needs
- Strong background in software engineering with a particular interest in compilers and backend web development
- Experience with or willingness to learn Go, and a demonstrated ability to become proficient in new technologies
- Willingness to dig in deep to debug complex cross-cutting issues, along with a desire to improve upon the status quo incrementally
Responsibilities
- Actively drive bug fixes and small enhancements in both indexers and/or backend APIs
- Embed in the team's processes and partner with team members to learn and make an immediate impact
- Develop and maintain compiler integrations and distributed systems primarily using Go, focusing on scalability and reliability across multiple programming languages
- Actively shape the direction and participate in the planning of the features we're going to build
- Driving significant features such as cross-language precise navigation, dependency graph analysis or auto-inference of how to build and compile customer projects automatically
- Make a significant impact by being a key contributor and help us improve our existing engineering practices
- Feel confident working more autonomously, leaning into our values, especially customer-driven, teamwork and high agency
Preferred Qualifications
- Prior involvement with small teams that manage a wide surface area of functionality is highly desirable
- Appreciation for deep dives into specific technical silos, with the capability to contribute effectively to broad architectural discussions and decisions
- Exposure to design of data-intensive applications and a solid understanding of the underlying challenges
- Familiarity with compiler construction or integration is a significant plus
Benefits
- Above-average salary
- Equity
- Generous perks & benefits