6 ways engineering leaders are leading successful software development teams

Branimir Hrzenjak
11 minutes
Reading time

The best engineering leaders are those who know they’re there to lead but also coach their team.

They lead by example and show that they care about their team members by walking the walk and offering them a helping hand whenever they need guidance.

Even today, many leaders think that being a leader is about being authoritative and holding power over others. 

But if you truly want to stand out when it comes to leading software development teams, you need to set them up for success by putting their interests above yours.

This article includes six things effective software development leaders do that help ensure the best possible results from their team. Let’s see what they are!

1. They set clear expectations

Engineering leaders who set clear expectations can do a lot to help their teams be successful.

First, they ensure that everyone is on the same page about what they’re working on, where they’re headed, and their part in the big picture.

They’re simultaneously setting goals and expectations with individuals so they can do their best work.

For example, a software engineer Seremba John Paul shared his experience of how he led a team to finish a specific feature while working at Andela, a global talent marketplace.

One of the first things he did was to set expectations on two different levels: product level and team level.

Source: Medium

One of the product expectations he established was that each sprint should have at least four stories and no more than eight stories. 

He also, as shown below, expected team members to write detailed tests for each feature and think about the big picture while developing a product.

Source: Medium

When it came to his team’s expectations, he wanted his team to be consistent when it comes to naming branches, ask questions to be sure they understand the task at hand and seek help when they hit roadblocks. 

Bug and crash reporting tool for your mobile app.

By being specific and clear upfront on two distinctive levels, everyone on his team was able to work together in a cohesive manner and produce great work consistently.

Furthermore, many leaders practice having an open-door policy to be crystal clear about expectations.

This is also what Wendi Weiner, a Founder of The Writing Guru, suggests.

Source: Shake 

It’s no surprise that experts like Wendy recommend this strategy since it helps to take any guesswork out of what is expected of the employees.

With an open-door policy, they can simply go through their leader’s door whenever they have a question or need clarification regarding their role.

Keep in mind that only 53% of the employees know clearly what their role entails and that employees who know explicitly what is expected of them report feeling more productive and effective, not to mention that they have a higher retention rate.

Therefore, it’s worth the effort for the team leaders to ensure that all developers clearly understand their roles and expectations at work.

2. They give constructive feedback

It’s important that engineering leaders set clear expectations from the start, but it’s equally essential that they offer constructive feedback to team members.

When they fail to do that, they’re not only missing an opportunity to correct a problem but also making it harder for the developers to succeed.

Even some of the most talented developers may feel discouraged if leaders don’t take time out of their day to tell them what they like about their work and what areas they can improve on.

In fact, according to Officevibe’s Pulse Survey, employees want managers who give them feedback—and they want it often.

Source: Shake 

Or how Lilac Mohr, a Software Engineering Leader at Pluralsight, states, “an engineering culture devoid of continuous feedback is a recipe for disaster.”

She thinks that the problem is that while it may seem like a good idea to only give feedback on a yearly basis, it can actually do more harm than good.

Source: Shake 

There are often disconnects in understanding, she continues, as employees tend to perceive their performance differently than their leaders do. 

If this isn’t addressed regularly, there can be a lot of surprises (and attrition) when the annual review rolls around.

Instead of having team members enroll in once-a-year feedback sessions, she suggests that team leads should be giving feedback on a regular (ideally weekly) basis during one-on-ones and team meetings.

For example, Seremba John Paul and his team members practiced weekly feedback sessions, where he commented on segments in which they were performing well, areas where they weren’t at the peak of their performance, and strategies for improvement.

Source: Medium

By doing that, he created an open environment in which his team felt comfortable talking about what was working and what wasn’t—and, more importantly, how to improve their skills to help the projects move forward.

Plus, the more frequently team leaders provide constructive feedback, the more likely it is to sink in and eventually turn into positive change among team members.

3. They own the failures but not wins

A good team leader in software development is like a captain of a ship.

When the ship is sailing smoothly, the praise goes to the sailors. In times of trouble, the captain is the last to leave the ship.

Or how John Epler, Creative Director at Dragon Age, states that success belongs to the team members in any team effort, but failures are the leader’s responsibility.

Source: Twitter 

In other words, acknowledging everyone’s contributions to a project, rather than taking all the credit, is a mark of leadership that helps build and maintain trust in the team.

Leaders should also take the blame if the project turns out to be less successful than expected—even when it was not entirely their fault—because they’re responsible for the team and its performance.

That way, they demonstrate that they’re accountable and trustworthy and also send a clear message to the developers that it’s all right to fail because they’ll be supported.

That’s exactly what Vijay Magdum, a Product Owner at Accenture UK, thinks when he states that this kind of leadership allows developers to keep learning from their mistakes and continue on the road to many more successes.

Source: Shake 

The best leaders create a culture where people feel safe to express their opinions, share their ideas, and try new things even when it means making mistakes and facing setbacks.

In this kind of environment, it’s not difficult for anyone to go that extra mile because they know that their commitment will be appreciated. 

On the other hand, they are not afraid to innovate because they know that they will not be punished if things go wrong.

4. They know their team’s capabilities

If engineering leaders want to lead software development teams successfully, they need to know their team’s strengths and weaknesses, as well as their maturity level.

This means knowing what their teams can do and how good they are at doing it.

For example, David Shrimpton, a Senior EPM at Apple, points out that different teams have different maturity levels.

As shown below, he distinguishes four stages: I’m Alright Jack, Negotiation and Moderation, Better off together, and We win as a team.

Source: Medium 

The first stage is I’m Alright Jack, which is where the team is not focused on working in coordination with others. At this stage, the team tends to be quite siloed in their thinking.

The second stage that Shrimpton describes is Negotiation and Moderation. This is where teams begin to recognize that they need to work together more effectively.

This phase gives way to the third stage, called Better off together. In this phase, teams are collaboratively working towards a common goal.

Finally, the last stage is We win as a team, where teamwork becomes so second nature that it’s natural for them to work together in this way.

Successful engineering leaders know at which stage their teams are and help them move towards the final stage, where they work towards the company’s overall success.

However, successful engineering leaders should also observe individual strengths and weaknesses.

That’s exactly what Lilac Mohr does with her team because she doesn’t want the special achievements or possible setbacks of her team members to go under her radar.

Source: InfoQ

As you can see in Lilac’s example, by knowing what’s going on with each person on their team, engineering leaders can help them overcome the obstacles and succeed in their role.

Consequently, with the information about their strengths and weaknesses, they can place the developers in the right role where they will be most successful and valuable to the company.

5. They are available to help

Great engineering teams run like well-oiled machines, and they do so because they have leadership that is willing to answer questions, provide guidance and help find solutions.

And one of the ways engineering leaders can do that is by encouraging open and honest communication.

Or how Daniel Chang, a Senior Software Engineer at Coinbase, states:

“Software Engineers should feel super comfortable talking through ideas with [engineering leaders] and possibly asking for help.”

Great engineering leaders are also there for them to offer guidance and mentoring.

For example, Dalia Simons, a Server Architect at Wix, suggests that a leadership position is all about mentoring.

Source: Free Code Camp

In her words, it’s about being available and helping engineering improve code, design, and communication.

And if that means engaging in water cooler conversations, then so be it. 

At least that’s what Jeff Norris, a Senior Engineering Manager at Etsy, recommends.

He thinks that leaders should connect with team members not only on working but also on a personal level because that way, they’re more likely to open up to the leaders, ask for their help or tell them when something is wrong.

Source: Shake 

And asking about how their kids are doing or what is their favorite restaurant is a great way to start on the right foot and proactively build rapport and a good relationship with their team members. 

In conclusion, if team leaders want to create an environment where their teams can be at their best, they need to be willing to help them through any issues they may face along the way.

That’s why it’s so important for them to be invested in ensuring their team members know they’re always available if they need help.

6. They create new leaders

Great engineering leaders are not only guiding and teaching but also making sure to cultivate the future leaders within their team.

They give their engineers opportunities to lead projects, support them as they take on more responsibility, and provide ongoing feedback so that they can recognize areas for improvement and grow into their roles.

For example, Jessica McKellar, Founder and CTO at Pilot and former Director of Engineering at Dropbox, shared a story from her vast leadership experience about how she enabled promotion for one of her engineers.

She would usually have excellent one-on-one meetings with him.

He would not only discuss Dropbox’s approach to engineering but also make suggestions on how to improve its tools. She stated:

“You could tell he was thinking like a manager already. It was just a matter of providing a stage for him to transition into that role.”

From the story she shared, it’s clear that the best leaders see leadership potential in their team members and allow them to shine.

Or how João Melo, a Head of Product Delivery at PhoenixDX, interestingly points out that the job of leaders is not to hold their team back but to push them forward to the next level. 

Source: Shake 

The best engineering leaders set up those around them for success. 

They push their engineers to continually challenge themselves and improve their skills because it’s important to the company’s growth and product. 

Leaders who are only concerned with their own development or are afraid of the competition will stall the progress of a company. 

Taking time and energy to nurture leadership skills in their team should be considered an investment in building a strong foundation for future projects.


As you can see, successful engineering leaders are setting some new standards when it comes to how they interact and lead within their teams. 

Rather than simply stand at the head of the table, giving orders to those below them, they feel a sense of accountability for the work of those around them. 

They redefine what effective leadership means for their team members, even though sometimes that means stepping back and letting them take the wheel. 

In this article, we defined six ways engineering leaders lead effective teams. 

Hopefully, they’ll inspire you to consider some new approaches to your practice as an engineering leader!

About Shake

Shake is a bug and crash reporting tool for mobile apps. It was founded in 2019 with the mission to help app developers spend less time on debugging and manual overhead — and growing daily since thanks to a small and dedicated team of geeks based in the EU.

Meet your favorite bug and crash reporting tool.

Add to app in minutes

Doesn’t affect app speed

GDPR & CCPA compliant