The term ‘Engineering manager’ sounds quite appealing to all. And it definitely is! They are leading everything and the decisions are upon them.
But, as much fulfilling and lucrative as it seems, there is another side too. The challenges that engineering managers face in day-to-day tasks. They have their own set of difficulties and tough moments.
The tasks of engineering managers are not defined clearly. Although, they have three common grounds that they need to take care of. It includes:
- Team management
A technical aspect includes managing SDLC, knowing software updates, pairing teams with projects, and so on. Team management comprises leading strategic meetings, and ensuring team happiness and satisfaction. Hiring new developers, and meeting job candidates come under the administration aspect.
It’s important for engineering managers to recognize the challenges faced by them. This can let them know about it before it becomes a bigger issue. Here in this article, we will be exposing a few challenges faced by them and how can they be overcome.
Characteristics of a good engineering manager
Apart from the above roles, below are some important characteristics that drive the success of the engineering manager role:
- An effective engineering manager has a strong technical background. This doesn’t mean they should know everything regarding technical problems. Rather, they should have enough knowledge to guide and mentor their team effectively.
- They should know conflict resolution. Conflicts are inevitable in any team. Hence, a good engineering manager must facilitate healthy communication and solutions that can benefit the whole team.
- They should foster diversity and inclusion in their workplace. This allows their team to feel safe and respected and share their ideas without being hesitant.
- They should know how to have difficult conversations with their team. In other words, a good engineering manager must be able to address challenging topics, offer constructive criticism, and handle conflicts with empathy.
- They should ensure work-life balance for their team. It includes taking care of the team’s physical and mental well-being and creating flexible work arrangements.
- A software engineering manager should be good at leading cross-functional teams. So that there is an effective alignment and communication among different departments and teams.
- They should have good project management skills. So that they can create realistic project plans that can be executed efficiently.
- Engineering managers must promote career development among their team members that aligns with their aspirations and organizational goals. They should also include training and development for the developers who need improvement and support.
- Lastly, they should know how to do performance reviews in the right way. It includes identifying every team member’s strengths and areas of improvement.
Challenges faced by engineering managers
Balancing technical and managerial responsibilities:
The common challenge among engineering managers is juggling between technical and managerial responsibilities. They are expected to lead their team well and also contribute to technical projects. Hence, it becomes demanding since they are expected to find the right balance and excel in both these aspects.
A few of the practical approaches to overcome this obstacle include:
Seek mentorship and coaching programs:
Engineering managers can attend relevant training programs and seek mentors to enhance their organizational skills and technical knowledge.
Prioritize and time management:
Create a well-structured schedule and allocate time to both aspects based on urgency and importance.
Leverage agile practices:
Use agile methodologies for better and more flexible planning. It will help in breaking large important tasks into small, manageable chunks. Also, use agile metrics which can act as performance metrics. so, to measure the team culture and performance.
Regular assessment of work distribution:
Lastly, have regular check-ins and assessments of the work. It helps in taking note of workload distribution and effectiveness in both these domains. As per the same, adjust the approach accordingly.
Weak SDLC and visibility challenge:
Weak SDLC is known to be the silent velocity killer. Especially in today’s times, when it is driven by the continuous improvement culture and ongoing iterations.
The major challenge faced by engineering managers is they are unable to figure out the ‘What’ and ‘Why’. Hence, they need to keep it in check and test it at its earliest.
But, this is not easy as it seems. The biggest barrier to high SDLC blockers is due to limited visibility. It results in unsustainable prioritization, ambiguous SDLC processes, and broken development workflows.
Visibility is necessary as it correlates with agility and helps them perform efficiently. It assures engineering managers get a clear picture of each phase of SDLC. And when it is taken into consideration for a longer period, it helps in prioritizing goals and data-driven decisions. Engineering managers need to have full-fledged visibility of the issue. So, that they can allocate responsibilities wisely.
Pro-tip: Get complete visibility on your SDLC & cycle time breakdown & identify blockers with Typo.
Burnout has become a common workplace phenomenon among developers. Due to longer hours at work, they are indulging in presenteeism. It not only reduces productivity but delays the outcome as well.
The visibility, as mentioned above, is needed here too. To help in figuring out the reason and knowing what to do afterward. But, visibility is already a top-most challenge. The burnout aspect comes a little late to the engineering managers.
A few of the burnout causes include:
- Overwhelming ADHOC requests
- Shipping codes,
- Incident alerts
- Debugging beyond working hours
It is also been seen that the developers don’t have clarity about their roles. It increases their working hours and tasks get postponed.
They must ensure that developers get the requested time off and a healthy work schedule. They should also understand that goals should be realistic with a proper action plan. But, this can only be possible after the visibility challenge is sorted. It will help in resolving the issue quickly before it becomes a bigger problem.
Poor communication skills
The most overlooked challenge that engineering managers face is communication. It usually happens that there are alignment issues and context switching between the developers’ teams. And without proper communication, there will be a lack of clarity about the same.
Engineering managers also get confused to have over or too little communication. While over-communication can be a sign of micromanaging. Less communication leads to a lack of clear understanding of the work.
Engineering managers need to find a balance between taking status updates and resolving development barriers. Even having excellent technical abilities, poor communication can be the biggest hurdle.
They can set up a meeting including relevant information, agenda, and expected output. Use automated stand-up tools for knowing daily tasks, progress, and blockers.
Measuring team success
Engineering managers have the wrong approach to measuring success in terms of throughput. Rather they should focus on the volume of software being pushed to production.
They usually use agile methodologies without empowering the developers. When deadlines aren’t met, engineering managers only focus on specific pain points. They avoid looking at the issues that can be the cause of long-term issues.
But it is halted as not all developers have completed their targets. Codes were required to be released but now, it’s delayed due to some developers.
But, when looking only at the output, it may seem like everything was delayed. Instead, this was not the case!
Engineering managers must measure success on the basis of three things. It includes:
Such metrics track the performance of engineering systems/processes. In these metrics, the following should be measured:
- Merge request rate
- Cycle time
- Commit to deploy
Under these metrics, different sprint stages are measured. It comprises of:
- Sprint burndown
- Team velocity
- Epic burndown
- Lead time
These metrics are often overlooked. They help in tracking the engagement and satisfaction of your employees.
- Code quality confidence
- Individual and team morale metrics
Managing multigenerational teams:
In today’s times, there are different generations of groups that are working together. It is a positive sign but has its own sets of difficulties too. These four generations are Boomers, Gen X, Millennials, and Gen Z. They have their own working styles, career ambitions, and motivators.
‘One size fits all’ that engineering managers usually go for isn’t the right approach in these cases.
No matter how small this challenge sounds, it can have a negative impact on the outcome.
Engineering managers can break down the team into smaller groups with a focused plan. These groups can be divided on common grounds. It includes the working style, experience, strengths, and so on. There can also be tools and resources that you can distribute accordingly. Such as a few traditional logging and APM tools that can be used best by the old generations. While new ones can find them difficult to use.
Also, the common ground for discussing with all of them can include:
- Team mission
- Coding guidelines
- Definition of ready and done
- Testing strategies
- Bugs severity levels
Hiring the right developers:
One of the major challenges engineering managers face is hiring the right people for their team. hiring is a lengthy process. It consumes a lot of time and energy away from other managerial responsibilities. Apart from this, they hire the best talent but this isn’t the correct way. An effective engineering manager should hire the right talent for their organization. Apart from this, By this, we mean:
Assess your hiring needs:
Identify your hiring needs so that you get your requirements right. This helps in creating job descriptions accurately reflecting the right skills, qualifications, and expertise. Further, it helps in setting realistic expectations for the developers.
Conduct technical interviews and assess soft skills:
Design technical interviews that can help in assessing candidates’ problem-solving skills, coding abilities, and technical expertise. Also, ensure that you take note of their soft skills as well. It includes their decision-making process, communication skills, time management, and so on.
Evaluate their growth potential:
The right candidates are those who are willing to learn and grow. Try considering those who demonstrate their willingness to adapt to new environments and ensure continuous improvement. You can conduct training and development sessions for them to align with the organization’s goals.
In a nutshell
The challenges mentioned above may seem tough to crack. But, with the proper visibility and the right tools, these can be overcome quickly.
Using an engineering management platform like Typo can help in gaining insights across tech processes. These remove the blockers, align engineering with business objectives, and drive continuous improvement.