The question in this post is a familiar one, but no less important. I recently read that in 70% of cases where people leave their jobs, they’re actually running away from their bosses. That’s unfortunate, especially because a good professional can be ruined if they’re not surrounded by the right team—and, in particular, by a boss (manager or coordinator) who does their job well. I once also heard Sergio Fernández say that you should be able to choose your boss. Whether that’s true or not, the reality is that a bad manager can make your life miserable, while a good one can make you go to the office feeling extraordinarily motivated.
Among other things, I’ve been leading development teams for a long time, and for years I’ve been convinced that a good project succeeds not only because it’s approached professionally, but also because the person coordinating everyone else’s work does a good job.
I’ve never liked the word boss, or manager (why does everyone on LinkedIn label themselves a manager of something?), because it sounds too hierarchical, as if some people in an organization were more important than others. Everyone has a role, and for things to work, each person has to do their own job professionally. Yes, saying things like this sounds very democratic and cool; putting it into practice every day is another matter. The idea that “we’re all in the same boat,” that “the team comes first,” and so on—things mediocre managers love to repeat—doesn’t always translate into real action. In other words, what people say and what they do are very different things.
But what does it really mean to be a good manager? Can a successful project really be called successful if the team is burned out and the manager takes all the credit ($)? That would be like saying companies exist only to make money and generate profits. No, that shouldn’t be their only purpose: profits should be a consequence of doing things well and providing quality work for everyone in the organization.
In some ways, software projects have a somewhat special nature compared with other kinds of work, so we need to understand what makes them different if we want things to go well.
Want to improve as a manager? Want to evaluate your boss and maybe give them a hard time? Then read on.
Here are the key basics that, in my opinion, make someone a good software project manager:
- They always know what the members of the team they lead are working on.
- They never just issue orders: they plan and organize so everyone knows what they need to do at any given time, and everyone understands the rationale and context behind their assignments.
- They take the hits. Since your boss probably has bosses of their own, it’s essential that they sometimes act as a shield. In other words, team members need to be insulated from the background noise, anxieties, or internal battles elsewhere in the company. Creativity can’t emerge in a toxic environment where pressure and stress are palpable.
- They encourage and motivate: they recognize improvements and achievements, and always offer constructive criticism with the aim of helping people improve.
- They don’t believe in “mistakes”: they call an error or failure a “result that can be improved.”
- They share knowledge. If the manager has the role because they have more years of experience and have been through many professional battles, their job is to pass that knowledge on to the team.
- They never focus on personal matters; they focus on the results each person contributes.
- They delegate. Many managers distrust others because they believe no one else can do a seemingly difficult or high-responsibility task as well as they can. That’s a mistake. I’ve seen countless times how team members, when given responsibility and, above all, trust, can do a better job than you. Everyone wins: the manager gets to delegate, and the team gains experience.
- They take responsibility for failures. This may sound a little heavy, but if a team member makes a mistake—and a serious one—their boss or manager is responsible. That’s it. The manager has to face the rest of the organization. How often have managers (the thuggish, scheming, ladder-climbing types, as I call them) pointed the finger at their team to dodge the blame? As with everything else, if someone isn’t honest outside work, why would they suddenly be honest at work? What I mean is, we are the same people in everything we do.
- They promote the team’s good results whenever they can. Teams have the right to progress, financially and professionally. Often, the manager is the person who can advocate for that within the rest of the organization. If you’re not improving, you’re getting worse.
- They build cohesive teams. Everyone needs to contribute, and the atmosphere should be positive, proactive, and stimulating. You can’t pass your own anxieties, uncertainties, and insecurities on to the team. Who hasn’t had a gloomy, negative, complaining boss who spreads stress to everyone else? Can creativity and innovation thrive in an environment like that?
- A boss may need more training than anyone else, so they should keep learning throughout their career. Why? A team manager needs certain skills that aren’t necessarily technical: communicating clearly and effectively, organizing themselves exceptionally well to meet their responsibilities, and knowing how to manage and motivate people, among other things. At the end, I’ll list some books I like on this subject.
- Working with people can sometimes be difficult. The manager needs to identify when a team member isn’t working out and why, whatever the reason, and remove them from the team. I’ve occasionally caused people to leave the company I was working for at the time (because they lacked commitment or the necessary skills, of course). I assure you, it’s very hard and keeps you awake at night (literally), but it’s necessary to get the work done. Ironically, over time, the teams involved thanked me for being firm.
- A good manager must never play favorites; it creates a sense of unfairness among the team.
- Above all, a good manager provides the means for the team to work without stress, focused on the tasks at hand and with the right resources.
This topic could easily fill an entire book, and more than a few people are probably rating their own boss from one to ten against the points above.
I always say it, and I’ll never get tired of repeating it: the success of a software project is the collective success of every team member, from the designer, developers, and manager to the business owner who backed the project.
If you’d like to read more, here are a few books I read some time ago, with direct links to Amazon. It’s a somewhat eclectic mix of academic and personal-development books, because a good manager needs to develop many professional skills (public speaking, effective communication, good work organization, and so on):
- Behind Closed Doors: Secrets of Great Management, an excellent book about management.
- Aprendiendo de los mejores: Tu desarrollo personal es tu destino by Francisco Alcaide. I discovered this author this summer and have read several of his books. It’s a good motivational book about improving every aspect of your life, including your professional life.
- Organízate con eficacia: Llega más lejos de lo que nunca hubieras imaginado, essential for learning how to organize your work well.
- Cómo hablar bien en público e influir en los hombres de negocios (Elipse), a go-to book for learning to get your ideas across and communicate well.