Why micromanaging software developers is not a good idea
How would you feel when you have someone looking over your shoulder constantly?
What would it be like when the manager keeps calling you constantly asking for progress reports when you are trying to get some work done?
That sounds frustrating to say the least, right? That would be detrimental to your productivity, right?
How about having a manager who gives you a creative job, and then gives you step-by-step instructions on how to do it? That doesn’t leave much room for creativity then, right?
This is what micromanaging is all about.
What is micromanagement?
The line between controlling your team, and giving them inspirational tips could be a little confusing. But it is important to know where the line blurs and you become a frustrating and irritating manager. In micromanagement, the manager constantly tries to control everything the team does, suggesting changes and making comments on the projects, especially unwelcome ones. Talented, skilled, and experienced professionals do not take this kindly at all. It applies to practically every job, and especially true in the field of software development.
Often companies hire software developers, and managers who don’t have experience in managing particular software development projects, and this combination can be lethal.
It is not just software developers who detest micromanaging, but they see the process as something that stands in the way of their productivity. The focus of developers is
- To improve velocity
- Improve code deployment frequency
- Real-time performance objectives
Scrum developer teams have performance reviews at the end of every sprint, and they have code reviews every week, so having these yearly, half-yearly, or quarterly performance reviews seems like a waste of time.
So how is it possible to manage their work without making the developers miserable? Organisations still need to use methods that see whether the software developers meet/exceed expectations, business objectives, and performance.
Tips on how to avoid micromanaging, and still get the work done
Since micromanagement can make the team stressed out and anxious, you will have to come up with ways that will ease the process for all.
Promoting autonomy in the workplace
Building a culture of autonomy in the workplace will enable the team to flourish and work better. Managers who give their team plenty of autonomy are more likely to get work done successfully. Rather than giving them direction, let the team follow their instinct and experience, and get the work done. Let them take full advantage of the tools and frameworks available to them, and let them set their schedules. Once they have the tools they will work in the best way possible. The freedom to do work they think will be best will bring more success to the table than monitoring them every step of the way.
Objectives and key results to be aligned with business objectives
The team managers and the developer team must collaborate with each other to ensure the objectives and key results are in tandem with technical and business objectives. Doing this in a balanced manner will make sure that both parties have the objectives in their sights. The team works with the manager by discussing, debating, and deciding the results on various aspects of app development.
Check whether the sprint and release commitments are met
Meeting deadlines is one way to measure a team’s discipline and align the standards they have followed throughout the project. Rather than being on their heels all the time, managers can set a high/low bar of expectations across all the sprints, and review their performances across them. This is one effective way to check whether they meet quality benchmarks.
Using the satisfaction survey from the stakeholders and product owners
Every project aims to ensure the satisfaction of the stakeholders and product owners. One tool to measure that is through a satisfaction survey that will capture the feedback to give back to the agile developers. This way it is possible to collect current feedback on the work done, and areas of improvement from the perspective of both stakeholders and product owners. After all, the agile manifesto clearly defines the core value of ‘customer collaboration over contract negotiation’.
The right resources for the team
The developer team doesn’t work by the clock, and they will work well only when they work autonomously. Even so, you can have some resources that will work their style at work. The tracking tool could be one such tool, and you can use it to collect data from sprints and projects and to predict timelines for projects.
Making great hires
Hiring the right team, and you don’t have to micromanage anymore. They will know what to do, and how to deliver. When the company offers competitive pay and great benefits, it will bring in the cream of the team, and people who deliver.
Create a process for peer reviews
Peer reviews are a great way to determine if the developers are doing their job in developing maintainable code and useful documentation. When peers comment on code readability, provide ratings on documentation, and perform surveys for integrating microservices, APIs, etc.
The rapid developments in the field of software development make it imperative for developers to adopt these technologies and methodologies. And they need the autonomy to explore new tools and employ best practices. Micromanagement restricts their freedom to do this as it can lead to demotivated and disrupted teams.
Developers are a different breed, and when they are micromanaged they might feel that their contributions are not valued or respected. And that’s now when developer teams are micromanaged, the chances of errors are higher because they might be forced to make decisions that are not required, and that might affect the work quality.
When there is a manager to lead the team, their job is actually to provide all the resources that they need, provide them with resources and guidance if needed, and then literally, get out of the way!
The author: Sascha Thattil works at Software-Developer-India.com which is a part of the YUHIRO Group. YUHIRO is a German-Indian enterprise which provides programmers to IT companies, agencies and IT departments.