Reading list

The goal is for each reading list to contain sufficient information such that after reading it, an exprienced engineer is ready to start making meaningful contributions to that area of the product in a way that's aligned with the practices of the team.

Everyone

Read our Core Engineering Values and spend time to understand them.

Backend / Systems

Complete the entirety of the Rust Guide, or achieve a comparable level of fluency in Rust.

Read through the Protocol Buffers Guide, especially the section on Encoding. Given that we deal with the data plane, it's important that we actually understand how the bits are laid out — not all ways of expressing the same semantic structure is equivalent, some are much more efficient than others.

Read Lampson's classic guide on system design: https://bwlampson.site/33-Hints/Acrobat.pdf

Frontend / UI

Complete the entirety of the React & Redux Guide, or achieve a comparable level of fluency in React and Redux.

Read our Frontend Philosophy.

Infra