Sourcegraph is building universal code search for every developer and company so they can innovate faster on the software we use every day. Sourcegraph lets you onboard to a new codebase quickly, make large-scale refactors, find and reuse code, increase dev efficiency, address security risks, root-cause incidents, and find and fix issues across all your code.
Customer case studies
Cloudflare solve the big code problems they face every day with Sourcegraph. For example, engineers can quickly identify out-of-date code libraries by only searching certain repositories, while excluding specific file types. And it’s easier to search for error logs. As a result, the team can refactor and debug faster and feel confident they've addressed each issue.
CERN's Large Hadron Collider (LHC) features five-year operational periods and the software must be stable during this time. Sourcegraph helps developers make small, backward-compatible changes and ensures that any change made by a given team to one part of the codebase doesn't break (or require adaptations of) dependent code written by other people. It’s essential that these changes are done correctly, as mistakes can stop the operation of the CERN accelerators and waste precious time for physics research.
works at Sourcegraph
How are the teams structured?
Teams are split into different groups, including Engineering, Product, Customer
Support, Customer Engineering, Tech Ops and others. The org chart is
available on the Sourcegraph website.
What tools do engineers use?
Source Control: git & GitHub
Issue tracking: GitHub + Jira
Devops: Sentry, Honeycomb, Datadog, Incident.io
Comms: Slack, Twitter, Blog
Can developers pick their own tools?
Yes, we generally believe everyone and every team should be able to choose the
tools that enable them to best do their jobs. We have many different editors in
use and a lot of the monitoring and deployment tools we use across the company
now were spearheaded by individuals. That being said, there are some soft
constraints around the introduction of tools and technologies that affect
others’ work. For example, we are open to using new languages if there is a
reason to favor them over existing languages in our stack, but have a status quo
bias toward our existing set of languages.
How does the development process work? What’s the process for working through bugs, features and tech debt?
Fast-paced, but structured. Most teams are on a 2-week or monthly cycle. We do
quarterly planning for big projects/features. We have a lightweight process for
planning and getting approval from key stakeholders that typically involves
writing up an RFC and tagging the requisite stakeholders. We generally use
GitHub Issues and Projects as the roadmap source of truth. We have a monthly
product demo day for features and fixes that are shipping.
How does code get reviewed, merged, and deployed?
Development happens in branches.
Changes then are squash-merged into our main branch following code review from
Deployment to sourcegraph.com is automatic after a change is merged into the
We have a monthly release cycle for self-hosted customers, which is cut from
the main branch.
What is the QA process?
Automated CI using Buildkite, with automated end-to-end tests.
What are some recent examples of interesting development challenges solved by internal teams as part of building the product?
sg: internal tool for
managing the Sourcegraph dev environment
Sub-repository permissions: enforcing code permissions within repositories.
Both Notebooks and
Code Insights were created as
hack projects to help with onboarding, documenting code investigations and
understanding high-level trends in our code, but they worked so well, we ended
up productizing it and releasing them to our customers.
How does on-call work?
OpsGenie for handling and routing alerts. Incident.io for collaboratively
responding to incidents.
We have an on-call rotation, but no one gets woken up in the middle of the
night, because we distribute the rotation to our teammates around the world
Hiring process at Sourcegraph
How does the application process work? What are the stages and what is the timeline?
Applications are received through our careers page and we have a standardized
engineering interview process plus a set of resources for candidates.
It is our goal to fill our openings as quickly as possible while maintaining a
high quality bar and a strong candidate experience. Once a candidate begins the
interview process with us, we aim to complete the interview process in 2-weeks
Console is the place developers go to find the best
tools. Each week, our weekly newsletter picks out the most interesting tools and new releases. We keep
track of everything - dev tools, devops, cloud, and APIs - so you don’t have to.
Subscribe to the weekly Console newsletter
An email digest of the best tools and beta releases for developers. Every Thursday. See the latest email.