A development team is a living organism with moving parts, where engineers join and leave, make mistakes, and hate a lot of processes. How can we ensure smooth functioning of such a team? Let's try to list out the possible ingredients for a good development process for engineers. Think along the lines of collaboration, measurement, and automation. I want to go over a few key areas that might help; it is not a comprehensive list, but it can serve as a starting list that you can build on:
- Measurement (telemetry): This measures anything and everything. It is probably one of the most valuable tasks other than writing code. This needs to be at the core of the engineering culture to be effective. To help you remember this, I want to mention two catchy quotes in the industry:
"If it moves measure it, if it's important alert it."...