DEV Community

Rabea Abdelwahab
Rabea Abdelwahab

Posted on • Originally published at Medium

Learnings in Engineering Leadership - From Battles Won and Others Lost.

My background is mainly in startups, as an individual contributor, or a lead for a small team, I always enjoyed working with a group and I decided to move to more corporate environment, to start building that company’s engineering team and rebuilding one of their core systems.

A best case scenario for a team, is having leadership and management work together to accomplish great positive change that is measurable.

This is not one of these best case scenarios, this is my personal experience being put into a position where I needed to be both and what I found beneficial for my team.

Instill confidence in your team with your decisions and transparent communication

As a leader, you will be taking many decisions for your team, other decisions could be falling into your lap. Decisions you can control and the thought process behind them should be easily explainable to your team members, the decisions that fall from others, the “why” and how it was taken, should be a story you are able to tell if needed, if you can’t, your answer should be “I don’t know yet, but I will get us the answer”.

Even as a leader, there will be decisions that you can’t control, and even if its a battle fought and lost, your team just wants to know that you stood up for them.

Work comes in waves, an opportunity for making mistakes

While strategically, any business is trying to hit their goals continuously, having different teams in a company, means there will be calmer times than others, these little gaps are an amazing opportunity. As a tech leader, these times are the best to sharpen the tools for the next wave, whether its tackling technical debt, or preparing for a new project, or documenting an existing feature. Always have a set of technical goals to achieve in the calm times, to make the team’s life better.

Your team will also have their ideas on what to improve, this is a great time to let them run with theirs and learn from mistakes they make, they will get better technically, or improve in scoping work, or passing knowledge to others.

Specialization is OK, and most of the time its great!

You are leading a set of personalities with different interests, as much as Nirvana for any business would be that everyone is equal in every skill and interest, that is not the case. You have the potential leaders, the unit testing gate keepers, the DevOps fans, and tooling explorers, etc. Make the best out of these qualities, those team members are willing to own and run with an initiative because they are passionate about it, don’t stop a streak of productivity in the sake of making every team member know everything. You would ask, what about if I lose someone that is specialized in a certain area? I am with training people and help achieve sustainable skills in teams, is it the highest priority? I would argue that it’s not.

Make the best out of each member’s qualities, they are willing to own and run with an initiative because they are passionate about it

How to be a step ahead of the business

While transparent communication should be the de facto in any hierarchy, unfortunately, it is not the case every time, your business owners could decide that the change can be communicated in a shorter timeframe, not giving much buffer time. The way to go around this is to give the business the confidence to throw raw ideas of where they want the direction to go, making you part of the brainstorming process, because once an idea becomes a decision, you lose some valuable time to prepare for it, this is to assure that you are a step ahead, not to steer your ship depending on it, but to have a plan in your head if needed.

Moreover, communicating to your team a future direction changing scenarios, mentally, the team is also aware of the possibility of a change, you will build a team of agile forward thinkers.

Yes, there is strategic planning, and goals that are visible that we need achieve, but there is also projects and initiatives that come in between, and those are the direction changing decisions I am mentioning here.

When an idea becomes a decision, you lose some valuable time to prepare the team for it.

Engineers need to be good at communication, don’t accept less

When hiring or coaching team members, good communication should be the number one skill to make your engineers master, lone-wolves can’t be an option, and lack of communication between team members and the business will cause a lot of conflict.

The effect of a team that lacks communication skills is more layers of management to translate to the business, and project managers and facilitators to connect between team members, its a recipe for failure.

Good communication should be the number one skill to make your engineers master

All the above, if I were to summarize it; if you happen to be a leader and a manager, which is not uncommon, your mission is to learn from your environment quickly, and value time (your time and your team’s ) so you will be the effective leader they need. Make your mistakes visible to your team, and believe that there is no written in stone guidelines to leadership, no one way of becoming a good one, it’s about trial and error and improving continuously.

Top comments (0)