Category: Teams

Your Job as an Engineering Manager

What is your job as a technical software team manager? How can a top performing individual contributor transition into technical leadership? Many more in-depth articles and books have been written, so in this article I’ll briefly cover what I think makes a successful Technical Engineering Manager.

Your Job 

What is your obligation to the team? Read that last sentence carefully “YOUR obligation to THE team.” A lot of new managers like to tout “my team” which is a backwards way of thinking about it. The team doesn’t belong to YOU. In fact, YOU belong to the team.

If your attitude is top-down, tell them what to do style leadership please stop reading. This approach may work in some industries, but in software it’s a recipe for disaster. Likewise, if you have an adversarial relationship with management and simply want to protect your people from management, please keep scrolling. Gatekeeping information leads to mistrust and doubt and ultimately the end of your tenure.

Most folks who became technical team managers were great engineers. Inevitable that companies want to scale their best people by promoting them with the expectation that they level up other engineers through leadership and mentorship. I believe this is a misguided notion, but a topic for another article.

That said as a technically proficient engineer the three areas you need to focus and grow into as a manager are: 

  • Communication
    • What you are working on, why it’s important, and what has been accomplished 
  • Execution & Timing
    • Doing the most impactful work at the right time 
  • Assess and Build Skills
    • Assess and fully use the talents and skills (i.e., productivity) 

Above all the key to success is BALANCE


Communication 

Some people see the manager as a “shit shield”, protecting the team from shit inevitably rolling downhill from upper management. I think this is a very cynical way of approaching the situation.

Information needs to flow bi-directionally. You aren’t doing anyone on the team favors by withholding information. How you can supply value is by summarizing and interpreting the message from top-down. Why is relevant, what does it mean to me? There should be questions you are willing to answer for the team.

Likewise, your role as manager is to communicate upward and outward about the team. What are you working on, why is it important? Most importantly how is it impactful to the business and everyone else at the company? The team’s accomplishments should not sit in the dark, and you must be their greatest champion.

BALANCE - The flow of information up and down the org chart


Execution & Timing

Vast majority of businesses succeed based on their execution and timing. - David Heinemeier Hansson

To be successful in the long term your team needs to relentlessly focus on the tasks at hand. A long term view is OK at a high level, but cognitively it muddies the water. Execution supersedes planning.

Truth in business is that success builds upon itself. A win today enables you to achieve two wins tomorrow. You can never forget where you are going, but don’t get lost with the here and now by gazing off onto the horizon.

It’s also critically important the you make the right moves at the right time. Market opportunity for your company? Ensure that the team is ready to capitalize on the chance and execute to a high level. Don’t get caught flat footed or in the throes of analysis paralysis when the chance arises.

As engineering leadership, it is YOUR responsibility to balance the near term information needs with the long term strategy. Does the team have the information they need to execute on the near term goals? Are you compromising future quality or scalability by the decisions you are making today? Most importantly, what decisions can you safely defer to the future?

BALANCE - Near term needs with long term goals


Assess and Build Skills

There are many ways to think of team members: rock stars, sports players, musicians. Bottom line everyone on the team is an individual with different natural and learned skills. Each with their own personality, short term goals and long term aspirations. No one is a robot, and everyone has employment options beyond your company.

Always keep in mind that not everyone is suited for every job on the team. Apply specialists to areas where they excel and try to supply room to grow into areas of interest. Balance this with the needs of the team and goals of the company, not every personal goal will align perfectly.

That said everyone can improve, even you. Invest in the team by spending time with them and understanding not just what they are working on but how they can and want to grow. It may shock some, but not everyone dreams of becoming a manager. Many of your top performers want to hone and refine their software artisanship. Above all do NOT mistake wanting management as lack of ambition.

BALANCE - Individual needs with the needs of the team


Application to Business

With these three things in mind and the knowledge that one of your critical functions is to supply balance to the team, what are your next steps?

First, evaluate how you are communicating with both the team and with your leadership. Do you supply too much detail, too little, or just enough? Is the team clear on the priority and order of the work and why it matters? Likewise does the leadership team understand what the team is working on and how that work is progressing? If you find yourself pulled into a lot of status update syncs with management or technical team meetings, you are doing it wrong.

Second, are you shipping software, even internally? If the answer is NO the you have a priority and execution problem. Customers do NOT care about burndown charts and documentation, they want above all working and useful software. If quality is a problem your software is not working. If it doesn’t solve the customer’s problem, it is not useful. FIX THIS before you worry about any other process changes.

Last, does everyone on the team know their part? Do they regularly volunteer for tasks that suit their needs and do they work with colleagues to aid with work and teach skills? If the answer is NO then you should focus on building a player-coach mentality with yourself and your most senior team members. Everyone on the team should have a skill or knowledge that can be shared. If you or a team member are not sure, you should dedicate time to unlocking hidden skills.

Takeaway

As a top performer and now technical software team manager your goals should be about what YOU can do for THE team. Priority and execution are critical, but so it is balancing communication within and outside of the team. Above all you should balance the needs of the project at hand with the needs of the team and to level up and unlock new skills. Achieve these things and you not only become a highly effective technical manager, but also build a strong, resilient and happy team.