Sunday, September 15, 2024

A Friendly Guide to Software Development

Just finished this book by Leticia Portella.

Although I am not a developer, working in the IT industry means that i need to have a basic understanding of the working processes and terminology. While I would say I already know about 70-80% of the information, its presentation provides food for thought in organising my team/work and the simple explanations also provided some "oh so thats what it means" moments.

Crucially, the work of developers isnt just about developing, but there is a whole other ecosystem of work needed in order for the coding to happen. 

The key points i need to note relating to tracking and visibility of work, and making work better. Alot of points arent new, and it is heartening to know that we arent the only ones facing these issues!

1. Documentation is important for maintainability, including decision logs

2. Documentation also helps in versioning, which helps us roll back changes quickly

3. Tests should be written alongside development, similar to how they are tied to requirements

4. Incident management is intensive and stressful, and eats into project work.

5. Errors are unavoidable. Every crisis forces a re-examination of policies and practices

6. External and unpredicted work requires reprioritization, leading to fatigue, lower morale and context switching/ interrupted work

7. Communications is key. Consider making teams small enough using the Two Pizza Rule.

8. Glue work (admin such as setting up meetings, taking notes, onboarding) is also work. It should be visible and shared.

9. Good teams require psychological safety and not star players

10 . Managers should be available for their team, to be interrupted so that engineers can focus on their work. They also need to know how the team feels (likes/dislikes, feeling satisfied, learning wants)

11. Lastly, product managers, project managers, business specialists are all different roles!

No comments: