The key points are:
- Be asynchronous first
- Write things down
- Make work visible and overcommunicate
- Prefer GitHub tools and workflows
- Embrace collaboration
- Foster a culture that values documentation maintenance
- Communicate openly, honestly, and authentically
- Remember practicality beats purity
Three things that stand out to me:
1 Writing things down, being visible, overcommunicating, being asynchronous are expensive. Getting up on a whiteboard, scribbling in realtime, is fast and cheap. However, you will end up doing that 100 times. If you take the time to “write things down” you avoid the repetition. 2 If you need proof that engineering is a team activity and not a lone coder with a hoody in a dark room, here it is. Nothing of substance gets built by a single person. 3 Remember that you are communicating with people who have different backgrounds, experiences, and cultures to you. You need to write and structure your thinking in a way that will work across all of those people.