Timofey Nevolin wrote an excellent article “Eight Rules for Effective Software Production” over at Toptal.com. The whole thing is well worth a read, but here are the 8 rules to get you started:
- Understand the IT Mentality
- Do Not Mix Software Production and Development Methodologies
- Use Persistent Storage as an Extension to Human Memory
- Stop Wasting Time on Formal Time Estimation
- Understand the Cost of Switching Tasks and Juggling Priorities
- Use Architecture Reviews as a Way to Improve System Design
- Value Team Players
- Focus on Teamwork Organization
All of these are good and true, but if I had to pick one, I’d say that rule 4 is my personal favorite. Sometimes I feel like I’ve spent a good quarter of my life in meetings, discussions, and other estimation sessions. And looking back at all of them, I have to honestly say that they all of them were a waste of time. The only useful part of an estimation session is a high-level project plan, but that can be achieved with a project planning session – much narrower goal, much more measurable, and much easier to achieve.