Google's Engineering Philosophy
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
For contrast see my top software development practices.
Further Reading
“Why do medical tests always have error rates?”
-
John Cook writes: Someone recently asked me why medical tests always have
an error rate. It’s a good question. A test is necessarily a proxy, a
substitute ...
7 hours ago
No comments:
Post a Comment