Posted almost 4 years ago
We are looking for backend engineers who know how to design and build performance-sensitive distributed systems. You will innovate key systems (e.g., code search, campaigns, syntax highlighting, auth, code host integrations) to make Universal Code Search more powerful and scale to our customers with the largest codebases in the world. Read our product roadmap to see the challenges that we are working on today and in the near future.
Qualifications
- Solid understanding of Go fundamentals (e.g., dealing with concurrency, error handling, unit testing).
- Skilled at designing, building, testing (e.g., unit, integration, end-to-end), and debugging high performance distributed systems.
- Ability to communicate clearly and empathetically, especially in writing and documentation.
- Practiced at creating high quality software balanced with a pragmatic understanding of how to make appropriate tradeoffs (e.g., cut scope) to ship quickly and iterate when necessary.
- Good knowledge of Git in particular and other version control systems more generally.
Nice-to-haves
- Experience making distributed systems observable (e.g., logging, Prometheus metrics, request tracing).
- Experience using Postgres and Redis.
- Experience load testing distributed systems.
- Experience writing high performance Go code and benchmarks.
- Large and/or numerous contributions to open source projects.
- Published blog posts and/or tech talks about your work.
- Experience working on small high-performing teams, preferably tech startups.
Learn more about us
To create a product that serves the needs of all developers, we are building a diverse
all-remote team that is
distributed across the world. Sourcegraph is an equal opportunity workplace; we welcome people from all backgrounds and communities.
Learn more about what it is like to work at Sourcegraph by reading
our handbook.
Interview process
1. You apply.
2. We set up a 30-minute call to learn more about what you are looking for, tell you about Sourcegraph, and answer any questions that you have.
3. You complete a 2-hour
coding exercise in Go that we designed to measure your understanding of concurrency and error handling.
4. We schedule 4 hours of remote interviews over video chat across multiple days.
- Architecture: We give you an open problem statement and you walk us through how you would solve the problem.
- Technical experience: We ask you about your past work and accomplishments.
- Team collaboration: We ask you about how you work and communicate in a team setting, and how you handle tricky situations.
- CEO/CTO: We ask you about what motivates you to do your best work, and we tell you more about the vision for the company.
5. We check your references.
6. We make you a job offer.
We want to ensure Sourcegraph is an environment that suits your working style and empowers you to do your best work, so we are eager to answer any questions that you have about us at any point in the interview process.
If you're interested in Sourcegraph but aren't yet ready to apply, we are still happy to connect and answer any questions that you might have:
DM us on Twitter or email
[email protected].