This page provides a strategic introduction to one of our company use cases. Check that link to find the rest of the use cases and learn how we use them as part of our company strategy.
Why this is important
One of the fundamental principles of developer onboarding and initial velocity relates to confidence, and confidence comes from understanding. There are many other factors that form part of the overall effectiveness of developer onboarding, however, as far as what Sourcegraph’s role is in relation to it, we will constrain it to the idea of understanding code.
If we unpack this a bit further, understanding relates to:
- Being able to form a clear mental model of the overall system (i.e. knowing the various parts and how they relate)
- Knowing where the code is or being able to find it
- Knowing what dependencies there are on the code (i.e. what would be the impact of changing the code)
- Knowing what dependencies the code depends on (i.e. internal/external libraries used)
- Knowing who is responsible for or has contextual knowledge about the code
- Knowing who updated the code and why
This kind of understanding is central to onboarding.
Sourcegraph anchors onboarding inside engineering organizations and enables engineers to dive into unfamiliar code and get to “first bug fix or feature” quickly. With Soucegraph integrated in the developers workflow they see increased velocity in their work over their peers that do not integrate Sourcegraph in their workflow.
How we solve this today
Today we do not specifically focus on solving this problem, however we know from speaking with existing customers they use Sourcegraph to enhance developer onboarding and initial velocity. Below are case studies further elaborating these notions.
Despite the lack of deliberate focus on solving this problem, the following are real, anonymized quotes from customers today on how we’re already helping them with this use case:
- Sourcegraph is our answer for sharing information and facilitating easy collaboration across teams, despite the boundaries of distance and time
- Sourcegraph increases the efficiency and confidence of our entry level developers when they build features that touch different parts of our code base.
- For our new developers, Sourcegraph has been invaluable to get to know the repository structure, to track down where code lives, and self-service during their investigations.
- Liberate yourself with the power of Sourcegraph
- Self-serve: You no longer need to rely on other engineers on your team to get to the bottom of something you investigate
- Stay in flow: without cloning repos and without being disrupted by random questions
- Find anything in the codebase and understand its context
- Boost your teams’ experience and productivity
- Create a best-in-class onboarding experience for your new hires
- Allow your engineers to move faster
- Eliminate single point of failure and knowledge silos: every dev can self-serve and troubleshoot
- Help surface best practices across the team
Features that enable this use case
- Literal Search
- Regular Expression Search
- Structural Search
- Diff/Commit Search
- Saved Searches
- Search Contexts
- Search-based code navigation
- Precise code navigation for Go
- Precise code navigation for Java, Scala & Kotlin
- Precise code navigation for C/C++
- Precise code navigation for Python
- Precise code navigation for Ruby
- Precise code navigation for Rust
- Code Insights