[Software Engineering at Google] CH3 Knowledge Sharing

1 minute read


Setting the Stage: Psychological Safety

  • Psychological safety is critical to promoting a learning environment
  • To learn, you must first acknowledge that there are things you don’t understand. We should welcome such honesty rather than punish it
  • An enormous part of learning is being able to try things and feeling safe to fail
  • One important way of building psychological safety is to assign a mentor someone who is not their team member manager, or tech lead whose responsibilities explicitly include answering questions and helping ramping up

Growing Your Knowledge

  • Learning is not just about understanding new things; it also includes developing an understanding of the decisions behind the design and implementation of existing things
    • Seek out and understand context, especially for decisions that seem unusual. After you’ve understood the context and purpose of the code, consider whether your change still makes sense

Scaling Your Questions: Ask the Community

  • Use the following community to ask questions
    • Group Chats
    • Mailing Lists
    • Question-and-Answer Platform

Scaling Your Knowledge

  • Use the following source to increase/spread knowledge
    • Office Hours
    • Tech Talks and Classes
    • Documentation
    • Code and Comments

Scaling Your Organization’s Knowledge

  • Be aware of the following for cultivating a knowledge-sharing culture
    • Respect
    • Incentives and recognition

Readability: Standardized Mentorship Through Code Review

  • Code review is mandatory at Google
  • Every changelist (CL) requires readability approval, which indicates that someone who has readability certification for that language has approved the CL
  • Certified authors implicitly provide readability approvalof their own CLs; otherwise, one or more qualified reviewers must explicitly give readability approval for the CL

TL;DR

  • Psychological safety is the foundation for fostering a knowledge-sharing environment
  • Make it easy for people to get the help they need from both human experts and documented references
  • At a systemic level, encourage and reward those who take time to teach and broaden their expertise beyond just themselves, their team, or their organization
  • There is no silver bullet: empowering a knowledge-sharing culture requires a combination of multiple strategies, and the exact mix that works best for your organization will likely change over time

Tags:

Categories:

Updated: