Be the first to know
Sign up for a weekly dose of tech hiring news and updates.
Developing from a rank-and-file programmer into an engineering management role comes with great perks. Still, a promotion to engineering leadership is accompanied by a shift in identity and responsibilities – leaving engineering managers not only to learn how to be leaders but good leaders.
This post outlines five things engineering management can do to cultivate happy and motivated employees, keep track of productivity, and pave the way for sophisticated engineering teams in the long term.
Cultivate Whole-Team Professional Development
Software engineering leaders spend less time writing code and more time on project and personnel management. Remaining deep in the weeds of code is one of an engineering managers’ biggest mistakes.
You likely entered an engineering management role because you displayed technical leadership skills within your team. Make sure to build on this with ongoing professional development to prepare you for your developing career.
If your company doesn’t offer management skills training, use online learning platforms like Coursera, which provides a range of software project management classes.
Our 2019 international survey confirmed that developers are continuous learners, and providing opportunities to develop career skills is a significant part of positive workplace culture. Further, according to analyst firm Gartner, promoting versatile critical skill development within your team will eliminate delays and promote better outcomes, making your team up to 18% more effective.
At Codility, we provide hands-on coding lessons where developers can show off their new knowledge and learn from our community of more than 470,000 developers.
Extra reading: Three Traits of an Exceptional Engineering Leader
Hold Weekly 1:1s
One-on-one meetings are something that can fall to the wayside when things get busy (or, conversely, when everything seems to be going smoothly) – but they are a hallmark of a good engineering leader.
1:1s with engineering management are standard within the world’s best technology companies, including Google and Spotify. This is because they are an effective way to discuss how developers feel about their workload, any hurdles they might be experiencing, and other essential items that you generally would not discuss in a casual all-team setting. 1:1s shouldn’t be about project logistics like code review; they should encompass the employee’s entire workplace experience.
For example, perhaps a team member felt an assignment was too vague or needed more support. Maybe someone from a collaborating department is non-responsive, and your developer needs intervention. Since individual productivity can be hard to quantify in software development, these meetings will also make it easier to gauge how each team member contributes (and where their strengths lie).
Not sure how to go about one-on-ones? In his Medium post, Software Engineering Manager Nicholas Fane suggests creating a framework for each meeting beforehand to stay on track, make sure you cover all needed topics and recap the previous 1:1.
For advice on working through awkward conversations and other helpful tips for engineering management, check out this 1:1 resource on GitHub.
Set Your Team Up For Success
The best engineering management pairs oversight with advocacy, which can mean stepping forward as your team’s cheerleader – as well as stepping back and not micromanaging.
It isn’t easy to showcase to executives the great things your team is doing if you’re holding the controls at all times. Instead of solving all the technical problems that arise, give your team room to solve them and demonstrate their abilities.
Over 60% of developers say they don’t know how to get promoted, so structure and communicate a path for upward mobility. Present engineering leadership opportunities for new projects to let team members demonstrate their readiness for the next level. For example, automated data integration provider FiveTran created a two-track method for promotion within their developer and IT teams.
Once they accomplish something noteworthy (like refining a feature, fixing a complex bug, or launching a product), make sure company leadership is aware. Brian Ngo, an engineering manager at Slack, suggests company and division-wide meetings as a great place to do this.
Mitigate Unconscious Bias
Software engineering has a diversity problem. From an engineering management perspective, that can lead to issues like discrimination and a lack of innovative, creative problem-solving reflected in products and services.
Becoming a better engineering leader should include embedding avenues for mitigating “unconscious bias” – inherent biases that everyone has that can affect the hiring and management processes. Engineering leadership can do this starting from the beginning of the recruitment cycle.
Diversity and inclusion in tech have always been important to us. That’s why we have partnered with our customers to develop a screening process that incorporates an anti-bias workflow to remove Personally Identifiable Information (PII) from the applicant pool – making it easier to select candidates based purely on their qualifications.
After hiring, it’s up to engineering management to ensure their team culture is inclusive. Understand what diversity encompasses, push for inclusivity training, and champion Employee Resource Groups (ERGs).
You might also like: An Ultimate Guide to Leading Distributed Engineering Teams
Sharpen Virtual Hiring & Engineering Management Skills
Even before COVID, software development was a pioneer in remote work. In a recent survey from Rookout, respondents cited “teamwork and collaboration in a distributed environment” as one of the biggest challenges in engineering management.
With more companies offering remote positions, it’s increasingly important for software engineering leadership to understand how to virtualize the management process, from conducting effective coding interviews to keeping remote teams on track.
Get familiar with interview coding software, which will not only test programming skills but also does many of the things you’d do in-person, like verifying a candidate’s identity and controlling the testing environment. You’ll also want to make sure that the candidate has a good experience, which should include being cognizant of where each candidate is in the hiring process, soliciting their feedback, and removing any bottlenecks in the hiring pipeline.
Vet your team members’ suitability for remote work – have they worked remotely before, or is this their first time? Is their time zone compatible? Answering those types of questions will help you understand the unique support needs of each team member.
Post-hire, you’ll want to use these answers to provide a comprehensive onboarding process, so be sure to map out a strategy that addresses logistics, “facetime,” and a team collaboration plan.
Are you inspired to be a better engineering leader? Visit our Knowledge Hub for the latest research, professional development resources, and software engineer hiring advice.