Engineering and technology are at the epicenter of disruption in every industry you can imagine. Engineering divisions could easily be termed as the protagonist leading the role of digital disruption today. And do you believe it’s easy managing a team of these disruptors? Especially with the incessant changes going around, we often tend to question our ability to lead the teams.
In this first blog post, I wanted to share with you a summarized version of the biggest questions around engineering and its leadership and how to deal with it, which we have gathered after interacting with 100+ engineering managers from startups to enterprises.
Whether you are a junior developer or someone who has just moved into a leadership role or a veteran engineering leader, this post will help you understand and navigate through these changing times.
What has changed, and how should you embrace it?
Ironically, engineering or software to be specific has enabled analytics and visibility in a wide range of fields, take for example
- You want to track anything within how your product is doing and how a new feature is getting adopted by your customers — Amplitude and Mixpanel have come up with some groundbreaking yet simple metrics.
- Start and track how a marketing campaign is performing for your organization? Hubspot and Mailchimp give you the insights you need to define the success or failure of a campaign.
- Need to figure out what does your monthly revenue look like, and what your churn is on a subscription business and a lot of slice and dice on your financials? RevenueStory by Chargebee is really simple and easy to use yet an extremely powerful tool.
And so many more, but have we reached that level of maturity in tracking and visibility on how engineering teams and projects are performing? And in case you are wondering, yes, engineering accounts for a substantial cost in so many organizations.
Without visibility on what their teams and projects are doing, engineering leaders are driving a race car blindfolded.
Maintaining a healthy engineering culture is gaining places in terms of priority with engineering leaders, and it becomes even more important when you want to attract and retain the best talent with your team, given the worldwide shortage of developers.
It’s almost impossible to not mention remote work when discussing what has changed. We all expected remote work to pick up in the next few years but no one expected it at the pace that the pandemic has triggered.
By 2025, an estimated 70% of the workforce will be working remotely at least five days a month.Forbes
And while there a good number of pros to it, it brings a new set of concerns around alignment, teamwork, and visibility in teams’ work. The last thing any leader wants is to blame remote work for slipping on delivery by a few weeks.
Do you often wonder what should I change to improve?
Every leader is looking for different ways they can improve their team’s performance and productivity. But how does one decide what changes should be done? And will they work?
In all our discussions, one thing we have understood is, there is no one-fits-all solution possible here. It very much depends on the dynamics of the team and the engineering culture and processes followed within the organization.
Now while I know this doesn’t sound very encouraging and could deter you from tracking anything at all, tracking something over time and iterating this over a period of months and years is a time taking but extremely effective way. Even small measurable progress can go a long way in improving the team’s morale and eventually making the team more effective.
Having a way to detect bottlenecks in the engineering process and figuring out ways to improve them is the best way to adopt incremental change, and engineering managers often complained they are the last to know about these bottlenecks. Have automated ways that proactively help you identify these. Another way to figure out bottlenecks is to have regular and uncomfortable conversations with your team, which keeps you as close to ground reality as possible.
The million dollar question — Is developer productivity measurable?
There is a reason why a dev team’s progress is not measured by just numbers! A developer is a human and evaluating any human performance with any tool or a number is an impossible task. A personal touch along with various developer metrics might be a better way to track developer productivity.
Creating a transparent tracking environment — by being open about the various metrics that are being tracked will create a better work environment. And at the same time, developers should not be stacked against each other, comparing with her/his own past performance to find an upward or downward trajectory is the way to go about it.
Should numbers drive performance rating? Never, I repeat never. All numbers and insights should be used to foster the growth of developers rather than being used as an absolute number to be compared across others. And insights and metrics on developer’s performance could be great conversation starters in your 1–1’s.
I am a new engineering leader, how do I make myself more effective?
Every team has its own set of priorities and dynamics. Understanding what your team needs and what works best for your team is a challenging task. Some prioritize fast delivery of new features, whereas some prefer stability over speed which is justified based on the nature of the product and the features they are delivering.
Build measure learn loop is the best way to lead engineering teams.
A good mechanism to identify what works best for your teams is by experimentation and find the sweet spot for your team, extra importance on experimentation, if you are not bold and settle with what is working for you right now, you may never know what could have been done better.
Another great suggestion, which has even personally helped me is being a part of communities of engineering leaders and managers, where people actively discuss real-world problems and how to deal with them. This post has a list of a few communities which could be useful.
How does my team compare to other teams?
The best way to track a team’s progress is to compare it with its own performance in the past. By creating mechanisms to actively track your progress, engineering leaders can find the right action items to take their teams on an improvement trajectory.
A perfect engineering team does not exist, period! Neither at that tech giant nor at the next hottest startup.
Tracking performance on smaller units like, how your team performs in a sprint, or what could have been better for a particular epic will go a long way in the slow and challenging process of improved performance.
One thing I strongly believe in is ‘You can’t improve what you don’t measure‘. In case you are looking to identify bottlenecks within your teams and track metrics that matter, you should have a look at AnalyticsVerse and how it can be your best assistant in leading engineering teams.