Software Engineering at Google Chapter #3 - Knowledge Sharing (3 of 3)

  • The first time you read a document is the best time to update it
  • Documentation helps your organization scale
  • Cultivate a knowledge sharing culture
  • Respect each other, no brilliant jerks, no assholes
  • At Google, more senior rungs on the ladder specifically call out wider, cross-team influence
  • Grow future leaders by first having them be mentors to juniors
  • Peer rewards allows an individual contributor to give an award of some sort (gift card, etc) to another individual contributor. This way recognition for good work does not only come from management.
  • Create a developer guide for your company so there is agreement on how your company works and so you have a document to provide to new hires
  • Static analysis is a way to enforce best practices programmatically
  • Static analysis tools scale very well
  • Static analysis tools are often worth the investment as they free up all engineers from fixing simple, repeated mistakes
  • The other powerful point about static analysis tools is that they enforce best practices 100% of the time; they can’t be missed by a human code reviewer
  • Newsletters and communities keep people in the loop
  • At Google a Readability Review is how humans disseminate best practices. This is more than a code review and covers code structure, language idioms, appropriate use of common libraries, and more.
  • Readability reviews should be a teaching, mentoring, cooperative experience
  • If you don’t know something, ask for clarification
  • Highly readable code is important to help scale an engineering organization
  • Code is read many more times than it is written. That is the value of consistent code.
  • Increased short term latency due to code review pays off later
  • Take notes. Write things down. Don’t let ideas and thoughts drift away.



Thank you for your time and attention.
Apply what you've learned here.
Enjoy it all.