Code review exercise

We ask candidates to complete a time-bound asynchronous code review exercise so we can evaluate you on certain skills that we think are relevant to being successful at Sourcegraph.

Why? Read the FAQ.

👉 Sourcegraph teammates: see the internal documentation for this exercise.

Frontend code review exercise

We designed this exercise to measure your understanding of HTML/CSS/React/TypeScript best-practices.

  • You will choose a one hour time-frame to independently work on the exercise. You can choose any day and time; we just schedule an email.
  • The exercise asks you to review a small collection of React components.
  • We provide you entirely with the code. Your task is not to write any code, just to review it.
  • You can leave your review as comments on specific parts of the code. You can also leave a general review in the Markdown file, for comments that might not make sense attached to a specific part of the code.
  • You are not expected to run the application, or attempt to review the created design. This exercise is focused entirely on reviewing code.


Why do you do a code review exercise?

A significant part of your job as a software engineer is to read and understand code. Code reviews are a good way to measure this.

An asynchronous code review exercise provides the most realistic environment for measuring how you would work at Sourcegraph on a daily basis.

  • You can use the programming environment that you are most familiar with (i.e., your laptop with your editor with all the keyboard shortcuts and extensions/tools that you like, and with access to documentation on the internet).
  • You don’t have the extra pressure of explaining your thoughts and reasoning while someone else is watching.
  • You can schedule our asynchronous code review exercise for the best time that works for you.

Why a time limit?

We choose to enforce a finite limit so that we get a consistent signal across all candidates. It wouldn’t be fair if candidates could spend as much time as they wanted, because some candidates have more time than others.

The allocated time for each exercise should be long enough that we can ask non-trivial questions that test for relevant skills while also being short enough that it shouldn’t be an unreasonable burden for anyone.

Go back to the careers page for all open positions.