5 Subtle Secrets Of Effective Leaders
Being a great leader may not be something most developers would immediately identify with. To many, it conjures up a grandiose mental image with a podium and speeches.
Yet take Seth Godin’s definition of Leadership:
“The secret of leadership is simple: Do what you believe in. Paint a picture of the future. Go there. People will follow”
Suddenly Leadership seems far more accessible; it seems like something everyone can do! Leadership is not just reserved for those who are given authority, like the CEO, the CTO, or the founder of a company.
Leadership could be the missing piece that enables a big step in your career or it could be the tool needed to solve that big pervasive issue in your codebase.
While we may like the thought of being a great leader, what leaders do in order to achieve their influence and respect is more subtle than it may seem on the surface. Great leaders have subtle habits and behaviors that they weave into their everyday interactions and relationships.
Okay, but I'm a Coder; Why Do I Need to Lead?
Leadership happens at all levels. It’s not just CTOs and founders who can lead. Leadership can come from any level of the organizational tree. Since most developers are at the beating heart of operations, they have great opportunities to notice efficiencies and lead the way on innovations.
Leadership sets you apart. The “I’m just a developer” mentality has the propensity to significantly hold back a career. An individual who is both technically proficient and also adept in the skills of leadership will stand out significantly.
You can lead AND continue coding. Becoming a leader doesn’t mean giving up your day job as a developer. A leader is someone with an idea who’s daring enough to paint a vision and relentlessly pursue it. You can even lead your team towards a technical vision that connects you more deeply with the development job you love, as opposed to tearing you away from it.
Leadership is timeless. Your ability to code in Java, C++, or Ruby might fade with time or as the languages, platforms, or demands change. However, the ability to lead a team to success is timeless and will always be in demand.
Leadership takes time. Building leadership skills takes time. While leading teams may not be high on your priority list right now, in the future it’s quite likely that you’ll find yourself either in a leadership role or wanting one—and it’s a good idea to be prepared.
Leadership gives you influence within your team. Got a great idea about how to improve the codebase? Want to move to a new coding language/framework? Got a great idea for a new product? Wonderful! However, the harsh reality is that everyone has ideas. The question is: can you implement them? Leaders are the ones whose ideas are listened to and moved forward.
Rewards come to those who make change. Your title might be “software developer” and it's easy to get caught up in this identity. However, you are more than your title; you were hired to solve problems (admittedly, mostly with code). In order to solve problems, you need to be able to leverage the power and experience of others—this is leadership. When you achieve change and make an impact, you will be rewarded. Don't wait for the change—make it happen.
Heroic software developers are a myth. No software developer ever achieved anything alone. Software development is a team sport. You need to be able to get others around you to support you or the team in order to achieve success. If you can prove you can motivate a team and get them moving, you become invaluable.
There's no such thing as a 10x software developer… but there is a software developer who can 2x their 5 teammates’ skills.
The Not-So-Simple Task of Becoming a Leader
As a junior developer, I made a huge mistake when I first tried to become a leader: I copied others around me. I painfully found out the naivety of my ways and learned that leadership was far more subtle than I had first imagined.
In fact, I learnt the same lesson of leadership in the weight room. I've been in and out of gyms for over seven years, and there's a phenomenon with novices that I see at every gym. Hilariously, they all act the same… everywhere I go.
What did the novices all have in common? They copied and emulated others directly.
Imagine this: You're finishing up your first exercise and step away to move onto your second exercise. As soon as you leave and look over your shoulder, you see some gym novice is behind you copying your every move like a shadow!
When you know very little about a topic, it can seem to make sense to just copy others. But, in my experience, this is a huge mistake.
In gym training, things happen behind the scenes. The advanced gym member might be getting the results you desire by doing things you cannot see.
As a novice, I failed to recognise the following aspects of those who were more advanced in their training:
- They had already strategically analysed their own weaknesses
- They braced their core in a different way
- They were focussed on building “mind-muscle” connection
All of these cannot be visibly observed—they’re subtleties, just like the actions of effective leaders.
When you watch your senior developer or team leader, you might not realise how much ground work they are putting in behind the scenes to support and encourage the team.
A strong senior developer’s ability to get the team moving with the click of their fingers wasn't created overnight—and it's not even about how good they are at coding. Their influence has been crafted over many years and implemented carefully with all the teams that they join.
I made “the copying mistake” in my first leadership roles—I copied how others appeared to lead, creating a style that was inauthentic, robotic, and false. I wasn't observing the subtleties of leadership. I thought it was all:
- Delegating tasks!
- Barking orders!
- Being authoritative!
What was I missing? The simple fact that good leaders are masters in support and persuasion.
Merely observing the actions of a leader only gives you half of the picture.
As a developer, when you want to get your ideas through, you need to be able to understand others, their motivations, and their needs in order to get the movement and change you desire.
The (Subtle) Habits of Leaders
Okay, so you're convinced that becoming a leader could be huge for your career as a software developer, but how do you go about doing it?
1) Leaders Control Their Emotions With Empathy
When we react emotionally to criticism or difficulties, the result can be an unapproachable manner. Leaders need to remain approachable so their teammates feel that they can be open and honest with them; as a leader, you want honest information as opposed to sugar-coated niceties.
In order to achieve this emotional stability, leaders are constantly trying to understand how others feel.
Before reacting to situations, good leaders reflect on:
- Why others feel the way that they feel
- Why others act the way that they act
- Why others say the things that they say
For instance: You might have reviewed another developer’s code and they are upset with your feedback. An emotional, unconsidered response on your part could negatively affect the relationship.
You might think, “But I left those comments because I wanted to help them!”
Despite this thought’s presence, a good leader will take a moment to understand their colleague’s viewpoint and appreciate that criticism is sometimes difficult to take in. With this more empathetic response in mind, you might calmly explain the purpose of requested changes and perhaps even offer to pair program.
2) Leaders Build Personal Relationships
Informal and personal discussions build trust.
Group “team-building” has its place. Good leaders don’t just spend time in group situations but seek to spend quality one-on-one time with their team members. Personal time with individuals affords you a certain opportunity to connect with someone on a more meaningful and personal level, which builds trust between you (Read Never Eat Alone for relationship-building tips).
Pair programming is another great opportunity to build this one-on-one trust. Offer to sit with other team members and help them through their work. Share your knowledge with them. Be patient and understanding.
Coding can be a fairly solitary game. Try to get opportunities to spend a little time with your teammates away from the keyboard. Walk with them to lunch or spark conversations about their weekend before they get their headphones on and dive into their code. These little investments in relationships will pay off in the long run.
3) Leaders Don't Judge
Leaders want calculated risk-takers to work for them—they want those around them to push themselves.
In order to be supportive, leaders don't judge or mock decisions of those around them; doing so erodes their power and influence.
What happens when your teammate accidentally pushes some code where they shouldn't? Do you condemn them? Make a fool of them in public? Or do you help them clean it up in private and maybe even admit how many times you too have made the same mistake?
A little humility goes a long way.
4) Leaders Give Feedback
Leaders put others first.
Leaders provide feedback to their colleagues in a constructive manner to support their growth.They have the best interests of their team at heart.
There are opportunities everywhere as a developer to give feedback: the hardest part is having the courage to say how you feel in a constructive way.
When a team member runs a meeting, a stand-up, a retro, et cetera, take the opportunity to provide insight on what you thought was good and what could be improved.
Remember that intent is at the heart of good feedback—you want the other teammate or developer to know you're providing feedback because you want to help them.
5) Leaders Praise Liberally and Publicly
Leaders are more powerful when they're positive. If you're a person with vibrant energy, you will be missed when you're gone. When you see someone do something remarkable, make a point of highlighting it—and do so publicly.
Praise achieves maximum impact in group situations. Good, public praise builds the confidence of those you are praising and allows others the opportunity to imitate the action in order to achieve the same praise.
Good opportunities for praise include sprint planning sessions, stand-up meetings, and retros.
That's it—some of the more subtle aspects of becoming a leader.
Remember: If you want to become a leader within your team, it doesn’t require grandiose speeches or riding into the office on a horse.
You can invest in yourself as a leader by building these small behavioural habits every day, by spending time consciously self-reflecting, and by reminding yourself of the behaviours you want to exhibit and how you wish to be perceived by your team.
Soon, possibly before you even realise, you’ll be exhibiting these subtle habits and will find others flocking to you for advice, support, and opportunities. In no time at all, you could find your career taking a big step up.