Why We Urgently Need Real Managers in Software Engineering
Like many software developers, I’ve had my fair share of poor managers.
I’d love to use this blog post to share my experience of trash management techniques, before diving into the details about what makes a great tech manager.
The latter might be tricky as I’ve never seen a great tech manager in person, but I’ll give it a go.
My Most Recent Experience
The catch-up
Only last week my tech lead said we were going to have a catchup. We haven’t had it. Usually, this wouldn’t be a big deal and I shouldn’t complain as I don’t know the pressures my tech lead might be under.
I say usually because this keeps happening. I get pushed out again and again. After the first five times, I’m not willing to accept this behavior anymore.
Reading of the Situation
I’m not important enough to make time for. It’s a people management issue but also a culture issue within the company.
I want to look at why this matters, and how this might get resolved.
Why It Matters
In my blog posts people oftentimes write that my relationship with the boss is my fault. Turnover is typically caused by poor management.
It’s important stuff and must be looked at to create healthy productive work environments. This isn’t all about me, and here are many general signs of poor management seen in tech companies we can watch out for.
The Signs of Poor Management in Tech
The Micromanager
I think I’m detail-oriented. Yet when someone looks over my shoulder all of the time, I make many trivial mistakes.
If you do that for my whole job you’ll probably think me incompetent. Micromanagement brings out the worst in me and I don’t think I’m the only one.
If your boss wants an hour-to-hour justification of where you spend your time you have a poor manager.
The Manager Who Fails to Prioritize Management Tasks
This might be a controversial opinion, but I think managers should prioritize management.
I’ve had managers giving late feedback, last-minute cancellations of one-to-ones, and being overall unresponsive to members of staff. If you have a task to manage someone perhaps you should manage them.
Even better would be to prioritize the management of your subordinates. Avoid the sort of behavior that cut short my performance review because my boss’s boss needs them. Put your people first!
Lack of Openness to Feedback
A poor manager will often fail to take feedback on board, meaning their conduct does not improve. They aren’t listening about what they should be doing or how they can become a better manager.
This is the same type of advice that is given to juniors. Listen, learn, and improve. So why are managers not doing the same?
Dismissive
Rather than building employees up, poor managers may dismiss their ideas and contributions. They might simply not listen to their subordinates. Worse they might even take credit for subordinates' work. It’s not fair, not right, and might even encourage staff to leave. Is that the sort of culture that companies are going for?
No Structure
Bad managers can be disorganized, unprepared, and unwilling to put in the work. This type of manager might be in a company where they are satisfied with this type of lazy work, and if that is what you are looking for sure go for it.
The components of a great tech manager
Communication Skills
Great managers communicate expectations, feedback, and concerns. They ensure everyone on the team understands their roles and how they contribute to the project’s success.
Empathy and Understanding
They understand their team members’ strengths and weaknesses and provide support where necessary. They foster a supportive and inclusive environment, ensuring all team members feel valued.
Delegation and Trust
Effective managers delegate tasks effectively, trusting their team members to complete their work while providing guidance and support when needed.
Vision and Strategy
They have a clear vision and strategy for their team, aligning their goals with the company’s overall objectives. They help their team understand how their work contributes to the larger picture.
Adaptability
They are adaptable and open to change, are able to adjust strategies as needed based on feedback and changing circumstances.
Feedback and Development
They provide constructive feedback and are committed to the professional development of their team members, helping them grow and advance in their careers.
How to Be a Great Tech Manager
Listen Actively
Spend more time listening than speaking. Understand your team’s challenges and concerns and be open to challenges and change.
Provide Clear Direction
Set clear goals and expectations. Ensure your team knows what success looks like. Support them to achieve and provide leadership to help the team to be the best they can be.
Encourage and Support
Encourage innovation and creativity. Support your team by protecting them from demands from higher management, and protect them when they make honest mistakes. Give your colleagues what they need.
Foster a Positive Environment
Create a culture of respect, collaboration, and inclusivity. Recognize and celebrate achievements. Model this behavior — lead by example. Be accountable, ethical, and committed.
Promote Continuous Learning
Encourage your team to seek out learning opportunities and challenges. Provide feedback and coaching to help them grow, and where the gaps are in their technical skills and behaviors.
Conclusion
Managers are crucial. A great tech manager does more than just manage tasks; they inspire, guide, and support their team toward achieving team goals.
We have problems with technical managers because some know nothing about coding, and others know nothing about management. How about we get some managers who know something about both? That can’t be too big an ask, can it?