Development

Communication

For a list of engineering relevant Slack channels to join see the team chat page in the handbook.

Repositories

Sourcegraph has a lot of repositories!

Where Sourcegraph is built (things you’ll find out-of-the-box)

How Sourcegraph gets deployed

Where Sourcegraph gets extended functionality

How Sourcegraph operates as a business

Sourcegraph deployments and other developer test instances

Slack channels

Slack channels for non-team-specific engineering interests typically start with a #dev- prefix

The current channels are:

IC5 mandate

  • IC5s are expected to raise global tech problems and recommend solutions to the Head of Engineering.
    • This only applies to problems/solutions that require significant cross-team coordination and staffing. For anything smaller that doesn’t need help from the Head of Engineering, just go do it; no process required.
  • Each recommendation should have been reviewed by each IC5.
    • Consensus is not necessary.
    • If an IC5 is out on leave or otherwise can’t review it, don’t block on them unless you think it is necessary.
  • When given a problem and recommended solution, the Head of Engineering should generally approve (and get a staffing plan in place) or reject within 48 hours.

Misc.

This point lives here for now:

  • We require passing checks on GitHub PRs before merging (and don’t allow direct pushes to main). Sometimes it’s nice to push without waiting for checks (such as for docs-only changes), but this is outweighed by the downside that people too often accidentally merged changes that broke the build. Certain kinds of low risk changes (e.g., documentation only changes) may only run a subset of the build pipeline so that checks pass quickly in those cases.