Software Development

Good vs Bad Leader

Software is more about people than technology. When I graduated from college, I thought I only had to master technical skills to be a great developer, thinking that people skills are the appanage of managers solely. But experience taught me a good lesson on this one. Whenever I hear that people skills can’t be acquired, and you have to be a born with them, I just beg to differ.

Nobody is born with any given skill, we learn through observation and by copying others (our role-models). You might get some valuable info from reading books on this subject, but I remember an old saying, scribbled on the cover of a book I read in my teens: “Life is not learned from books, but by living it.”

If you feel you’re having troubles dealing with people, then you only have to watch and learn. It’s as simple as that. Even if you are not currently leading anyone, it pays off learning how to handle people, especially in our people-centric industry.

While meeting great leaders has always been a wonderful experience, it is the bad ones that really enforce the true values of a leadership. I’ve been lucky in this sense, as I got the chance to meet some of the worst leaders you can possibly imagine. Let’s see how a good leader compares to a bad one.

ContextGood LeaderBad Leader
ResponsibilityA good leader always takes responsibility of his project. If the project fails, he knows he’s the one to blame and he has the courage to admit it.A bad leader knows it can’t be his fault, so he channels his energy into proving his team was the culprit, or maybe just some members he doesn’t like anyway.
Hard-workA leader is a role-model for his team members. He’s working at least as hard as any other team member. Just because he’s the authority, it doesn’t mean he has to work only what he enjoys, leaving the ugly stuff for the rest of the team.A bad leader has had enough already. Why he should write code anymore when you have all these guys at your service.
MentoringA good leader always mentors his junior team members. He doesn’t let them fail with difficult assignments. He knows that investing in his team will definitely bring a return of investment in the form of quality.A bad leader doesn’t care about this stuff. The less experienced members should be hardened through tough tasks.
RespectA good leader respects all his members, no matter how skillful they are. He knows that there is only one way to lead a team, and that’s through respect, not fear.A bad leader doesn’t respect anyone but himself. He may laugh when someone makes a mistake, that’s going to be reported the upper management anyway.
Climbing the company hierarchyA good leader believes in skills and professionalism. He does his job and expects to earn the right position he deserves.A bad leader doesn’t have many skills, but he’s a master bootlicker. As much as he despises his subalterns, he’s constantly flattering his superiors.
Anger managementA good leader is emotionally mature, so he knows how to control his feelings. He doesn’t scream at his team, or threatens them in any way.A bad leader likes to show his rank, and what could be a better way if not through intimidating his team. He knows that fear is a great motivator.
TrustA good leader trust his team members. He knows he’s working with intelligent individuals that couldn’t have made it here otherwise. That’s why he encourages everybody to push themselves out of their knowledge comfort zone, so they could end up learning more, and becoming better.A bad leader doesn’t trust anyone but himself. And those less experienced developers shouldn’t be given anything but writing documents, or probably doing some unit tests for the code he writes. After all, who likes all that hassle of testing perfectly written code anyway.
Task assignmentA good leader chooses those tasks everybody is running away from. He gives an example when assigning himself laborious tasks everybody’s had enough of.A bad leader always chooses the tasks he likes best. Maybe it’s a new framework he would love trying out, and why would anyone give up on such a pleasant experience. If he finds it to too difficult, he can then pass it to his team, to fix the remaining issues.
Reporting issuesA good leader tries to do his best to overcome any difficulty. But there are times when this is not enough, so he immediately reports the situation to his upper management, so proper action may be taken.A bad leader always masks issues. He doesn’t like to report them, since that may affect his good reputation. If the problem arises he will try to find someone to blame, as it can’t ever be his fault.
Code ReviewingA good leader believes in code review and encourages his team to take part into reviewing others’ work. When recurrent issues arise, he writes them into a shared knowledge blog, so that everybody can learn better ways of tackling a given problem.A bad leader doesn’t have time for reviewing, and everybody is on his own anyway. If someone breaks something, the bad leader will simply tell on him.
FrustrationA good leader may have been led by a bad leader, and he promised himself he wouldn’t ever be that guy. He is mature enough to learn from others’ mistakes.A bad leader wants others to suffer as he suffered when he was himself a junior.
New ideasA good leader likes to listen more than talking. He let all his team members participate in any brain-storming session. He knows that great ideas may pop-up from where you’d expect less.A bad leader doesn’t like when others show off their so-called good ideas. His ideas are better anyway. And if he hears an interesting opinion, he may laugh at it, and then go to the upper management praising what he’s just come up with.

A bad leader may cost you a fortune. The project led by a bad leader may end up costing more to fix it than to start it from scratch with a skilled team. As fictional as it may sound, this bad leader examples are inspired by real-life situations, and I have to thank all the great antiheros that taught me valuable lessons about leadership.
 

Reference: Good vs Bad Leader from our JCG partner Vlad Mihalcea at the Vlad Mihalcea’s Blog blog.

Vlad Mihalcea

Vlad Mihalcea is a software architect passionate about software integration, high scalability and concurrency challenges.
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

2 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Riccardo
10 years ago

Nice post, it seems like you worked in the same team I did :-)

I think that the bottom line a bad leader is fear and lack confidence; if you don’t have those you will never have the courage and strenght to lead others.

Vlad Mihalcea
10 years ago

Thanks. I’ve worked with good and bad team, which is important to getting a full-picture of what it really means to be a good leader.

Back to top button