5 Tips to Help Advance Your Software Engineering Career

Date

September 21, 2022

Author

180 Engineering

There’s never been a better time to think about advancing your career as a software engineer. Tech talent has always been in high demand but in today’s volatile job market it’s easier than ever to find your plum role.

One of the best things about the tech industry is that there is a perfect job for everyone. There are a lot of different career paths and a lot of flexibility. As long as you’re doing work that interests and challenges you, there’s no wrong career path. You can move sideways into a similar position at a different company that offers a better work/life balance or you can become an independent contractor, which would allow you to set your own hours and work on those projects that you are most passionate about. You can also become a startup engineer, building your own business, if entrepreneurship floats your boat. Or, you can become an engineering manager, which often has a lot of perks, including higher pay and benefits that you wouldn’t get as an independent contractor or by launching a startup.

Management, of course, means having (or developing) a skill set that will help you succeed in the role. Beyond technical skills, a good manager should be adept at:

  • Communication;
  • Leadership and team building;
  • Decision making and delegation;
  • Problem solving; and
  • Project management.

If you think that you have (or are willing to learn) what it takes to be a software engineering manager, we have some tips on how to advance your career.

Responsibilities of Managers and Senior Managers

Advancing from a programmer role to a management role requires a shift in duties and responsibilities. While you may still have some programming projects to work on and contribute to, you’ll need to take on responsibility for people management and leadership. This includes:

  • Determining the need to hire, train, and develop talent;
  • Building teams and providing them with leadership and direction;
  • Confirming the technical accuracy of your team’s work;
  • Coordinating work with other managers and staff;
  • Working with upper management to ensure their support of projects and products; and
  • Leading research and development projects.

Although first-level and senior engineering managers have some similar duties, senior managers typically carry more responsibility. As an example, a senior manager often oversees multiple teams and the managers of those teams while a first-level manager only oversees their own immediate team.

There are always exceptions of course, but first-level management is often required in order to advance to a more senior management role. And as you advance along the management track, you’ll likely program less and focus increasingly on people management and leadership.

Habits and Skills of Effective Engineering Managers

Leadership comes more naturally to some people than to others, but regardless of your current leadership skills, there are several things that you can do to improve your proficiency as a leader and to position your team for success.

Pursue Professional Development Opportunities

Once you accept a management role, it’s important to embrace your new role and put your management skills into practice. While you might have some time to work on programming tasks, it’s important to shift your focus to managing your team. As pointed out in a piece by Vienna Urias, “Remaining deep in the weeds of code is one of an engineering managers’ biggest mistakes.”

Whether your management skills are adequate or exceptional, it’s a good idea to pursue professional development opportunities specifically for managers. Learning new management skills should come easily to you, since studies show that developers are continuous learners. If your company doesn’t offer in-house training or provide funding for external workshops or conferences, access whatever training you can find, such as via MOOCs or learning platforms like Coursera.

In your new management role, mentoring and supporting your team is critical. Seeking out professional development opportunities for the employees that you supervise can have a positive impact by boosting morale, decreasing delays, and promoting better outcomes.

Your new knowledge and skills, as well as your support of your team, will not only make you a more effective manager but will position you for further career advancement.

Empower and Support Others

Sometimes the best way to empower and support your team is to be their cheerleader; but at other times, the best thing that you can do is step back and allow them to tap into their own skills and abilities. When you delegate tasks to others, you give them a chance to grow and prove themselves. It’s your job as a manager to know when to be a cheerleader and when to delegate.

In addition to supporting your own team, it’s important to support other managers by collaborating with them and getting to know their teams. This is especially crucial for those in senior management positions, since first-level managers will need to rely on your expertise and mentorship. But even first-level managers have much to gain and equally much to offer through collaboration with their peers. And, if you are keen to rise within the management structure, supporting other managers shows that you are capable of a more senior management role and the responsibilities that come with that position.

Make Weekly 1:1s a Priority

One-on-one meetings are standard at many of the most successful tech companies, including Google and Spotify, because of their incredible value. Vienna Urias explains that 1:1s:

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.… 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).

1:1s with your team require soft skills that some new managers may need to improve on, including empathy, transparency, and conversation skills. As pointed out in a piece by Jiri Necas, managers “have to be able to give and receive feedback in a clear and empathetic way. That doesn’t mean avoiding tough conversations.”

If your workload is heavy, if you have a pressing deadline, or if you’re not entirely comfortable leading 1:1s, you may be tempted to let these meetings slide. But 1:1s are key to your team’s success – and to your own success as well. They are crucial to managing effectively and, for that reason, will impact your career progression.

Mitigate Unconscious Bias

It’s no secret that diversity, equity, and inclusion are long-standing issues in the tech sector. As we explained in a previous blog post, women are underrepresented in tech while BIPOC groups compose only a tiny fraction of tech professionals. But, a diversity of voices is needed in order to make tech accessible to all and to stem bias by rapidly-advancing technologies, particularly AI.

Being aware of, and mitigating, your own unconscious biases (inherent, subconscious attitudes about the world and people around you) can help set your team up to win. This is an important step towards creating an inclusive workplace culture, where all employees are valued, have opportunities to contribute, and generally thrive. And naturally, a successful team speaks volumes about your effectiveness as a manager, and can help your career progression.

Enhance Your Virtual Management Skills

The IT sector was always at the forefront of implementing remote work environments and, of course, the pandemic accelerated the movement towards fully remote and hybrid work arrangements. But remote work has been a challenge to managers everywhere because it requires a different management approach than onsite work.

As a manager in the tech field, it’s more important than ever to gain the skills that are needed to effectively oversee remote employees. This may require taking advantage of professional development opportunities or being mentored by another manager who is adeptly supervising their remote/hybrid team. It may also require becoming more familiar with platforms that support remote hiring, onboarding, collaboration, and engagement. Keeping abreast of all management trends  –  whether they apply to onsite or remote employees – will naturally help you achieve your own career goals.