Processes are for the team
Hamid Shojaee makes some interesting points in the article “5 Common Sense Practices Dev Teams Should Avoid”, but I’d like to focus on the 2nd point. Hamid suggests that procedures and processes should not always be followed as they might be limiting to the members of the team, and that they should be taken as suggestions or guidelines rather than “The law”.
What is a process?
This is one point I would strongly disagree with. Processes are implemented to mitigate risk involved in getting a project from start to finish, and any deviation from the designed process is an open invitation for things to go wrong.
When you break down a process, it’s really just a set of rules that define the metaphorical “box” you work within. Learn to work within the box, rather than pushing against it, and things will be much more simple and far less frustrating.
Processes are too limiting!
The feeling of being limited by a process is, no doubt, a common one amongst the average developer. I’ve been there many times, as have many of my coworkers. As far as I’m concerned, processes are part of any job, and they’re there to keep things running well.
If you, or your team, find that the current process is too limiting and not efficient enough; break it down and design a new one.
Designing a new process
As developers we should not find designing a new processes an overly difficult task, since analysis and design are (or should be) a big part of our skill sets. Treat your process the same way you’d treat an application.
• Analyze and determine the problem(s)
• Brainstorm solutions to the problems and run simulations on them
• Analyze the solutions and go with the best ones
• Implement and analyze
• Start again
Processes change
At least, they should be. A process doesn’t need to be limiting, in fact, I don’t believe it should be! A process should be continually updated in a planned and purposeful manner. Processes should be designed around the current team – their experience, skills and work habits. Design something that works well for them and makes their jobs easier and allows them to work more efficiently.
If the people you have in the team are growing and learning, your process needs to grow with them. The process should be part of what is making them grow and it should be a tool to help them learn.
A good process is dynamic, will suit the people who have to work with it, and help them deliver quality work on a consistent basis.












Get Updates via RSS
Get Updates via Email
What is RSS?
0 comments
Get things started with the first comment.
Leave a Comment