2008-03-02

Google's Engineering Philosophy

From Google Operating System:

12 principles that guide programming at Google:

  1. All developers work out of a ~single source depot; shared infrastructure!
  2. A developer can fix bugs anywhere in the source tree.
  3. Building a product takes 3 commands ("get, config, make")
  4. Uniform coding style guidelines across company
  5. Code reviews mandatory for all checkins
  6. Pervasive unit testing, written by developers
  7. Unit tests run continuously, email sent on failure
  8. Powerful tools, shared company-wide
  9. Rapid project cycles; developers change projects often; 20% time
  10. Peer-driven review process; flat management structure
  11. Transparency into projects, code, process, ideas, etc.
  12. Dozens of offices around world => hire best people regardless of location

No comments: