It probably doesn’t need saying, but I am passionate about Quality Engineering. However, I am far from the only person that will have wondered “Do I need to move on from Quality Engineering?”. There are times when considering our careers that we start to look at what lies ahead. These thoughts can often lead to thinking about what you need to change to reach your goals. For Quality Engineers, moving on to a role away from Quality Engineering is often what we think needs to come next.
In this post I am going to talk about career options open to someone in Quality Engineering. I will include some information on career paths in Quality Engineering and something for those who feels they are ready to take steps away from Quality.
Career Options for Quality Engineers
Someone working as a Quality Engineer develops a broad set of desirable skills. These skills are often suited to a broad range of career options. In this section I am going to dive into career paths both within and outside of Quality Engineering.
Career Paths in Quality Engineering
The obvious choice for a Quality Engineer looking for progression, is to progress within Quality Engineering.
The Y Shaped Career Path
Quality Engineering often offers a Y shaped career path. That being, we all start as individual contributors. Then as we progress we have the opportunity to choose between two routes. We can chose to progress down a people management route. Or to progress into more senior individual contributor roles. Don’t panic. This decision doesn’t commit you to a single route. It is not uncommon for People Managers to switch to the Individual Contributor path and vice versa.
Exactly what this looks like will vary from business to business. It is often influenced by the size of the organisation. For example:
Business A has 10 Software engineers and 2 Quality Engineers. Due to the size of the business there is only room for 1 Quality Manager. That manager is also expected to set all technical and strategic standards for Quality.
Business B has 200 Software Engineers and 40 Quality Engineers. At this size of organisation there are multiple Quality Managers. Often headed up by a Head of Quality Engineering. There are also some very senior Individual Contributors. These Individual Contributors also contribute to Quality Leadership throughout the organisation. They assist Quality Managers with setting of technical and strategic standards.
The People Management Route
The people management route won’t suit everybody. Looking after the needs of your team is a skill in its own right. It can also be a difficult skill to learn and one that doesn’t come naturally to a lot of people.
Engineering Management for the rest of us by Sarah Drasner is a must read for all current and aspiring Engineering Managers. It offers deeply valuable and practical insights into what it is like to be an Engineering Manager. It is also worth reading if you are, or hope to become, a very senior Individual Contributor. The more senior you become as an Individual Contributor the more leadership responsibilities you will take on. Even though you won’t be managing people. There are a lot of useful skills that cross over from people management into Leadership as an individual contributor.
For those who enjoy people management, it can be the most rewarding aspect of your career. For me, helping others to achieve their goals is the most rewarding thing in the world. The fact that I then achieve mine and the business goals through my team is just the icing on the cake.
Leadership as an Individual Contributor
As you progress on the Individual Contributor route you begin to be expected to have broader and more significant impacts. The pinnacle of this is often a “Principal” role.
I say “Principal” because job titles vary from one business to another. That means the expectations I outline here may not align with your organisations definition of Principal. So where I say Principal, just read it as “most senior of individual contributors in a large software organisation”.
As a Principal Engineer, you will remain an Individual Contributor. This means you still get to role your sleeves up and get your hands on the code. However, it also means a lot of technical and strategic leadership. Principal Engineers stay much closer to the technical landscape than a people manager. This makes their input into some strategic discussions, and certainly technical discussions, extremely valuable. They will often act as coaches and mentors for more junior engineers too. This role is ideal for someone who wants to have the sphere of influence associated with leadership, while remaining technically sharp and does not want to people manage.
Other Quality Engineering Specialisms
Within Quality Engineering there is the potential to specialise further. Particularly into areas like Performance Engineering and Data Quality.
Performance testing can be an often neglected area of Quality. It’s hard to do well, and often is bolted onto projects as an after thought, making it even harder. However, its fast becoming a highly desirable set of skills that many companies are finding they lack. Spending some time learning how to build good, meaningful, performance tests is definitely a skill worth developing.
Data Quality will become an ever more important role. As machine learning and AI become more mainstream, there will be an increasing need for Quality Engineers able to work in this space. It is a fast evolving area, with new tools able to process more data quicker than ever before. It is a great time to get into this area.
I am sure there are more too, these are just the ones that spring to mind.
Is it time to graduate from your current company?
So before you make a decision about whether you have reached your limits in Quality Engineering, consider whether its Quality Engineering or the business you are in that is the limiting factor. If you are truly passionate about Quality but frustrated by a lack of progression options, switching to one of the other career options likely won’t make you happy. Instead, dusting off the CV and looking for an organisation that can offer you that progression may be the step you need to take.
Career Paths Outside of Quality Engineering
Moving on from a role where your peers consider you the expert can be scary. It can also be hugely liberating! As a Quality Engineer you’ll have many desirable skills. These are skills that are beneficial to you in other roles within Software Development. Although many roles will rely on your coding abilities, not all of them do. Below I’ll discuss what kind of roles exist that may be possible for a Quality Engineer to move into.
Roles as an Individual Contributor
First up I’m going to discuss the roles that suit those looking to be an Individual Contributor. There are a wide range of options here. I have likely missed a few, so consider this a list to get you thinking, rather than definitive!
<edit> Want to add in a recommendation for Staff Engineer: Leadership beyond the management track by Will Larson. It was recommended by Ernie in the Indie Testing Community after reading this blog. I’ll be honest, I have at this stage only had a quick read of the content on the Staff Engineer website, but it is excellent and aligns well with what I am saying in this post. Definitely give it a go if the individual contributor route is your preference. </edit>
Platform Engineering
Are Quality and Platform Engineering really that similar? If you read my post on it then you’ll know how much crossover I think there is. But, is Platform Engineering a good career for move for Quality Engineers? That’s a big fat “it depends”.
For the Quality Engineer that enjoys platform level work or has a keen interest in building out test/deployment pipelines, it can be a fantastic route. For these people it can provide much of the same sense of satisfaction that Quality Engineering does. In my experience Platform Engineers often have greater influence over the types of work they and their team will tackle than Software Engineers. This is similar to the level of influence a Quality Engineer has on Quality team tasks.
Platform Engineering opens up a number of career options for a Quality Engineer. However, not all Quality Engineers enjoy platform level work, and for those people, there are opportunities to move into other Engineering roles that may suit them better.
Software Engineering
An obvious choice for any Quality Engineer with strong coding skills. If building out new software, tools, and experiences is what you enjoy, then Software Engineering may be the right next step for you. There are a couple of different specialisms within Software engineering that I’ll discuss below.
Before I do, I want to call out that Software Engineers tend to have less influence over the high-level decisions for the work they are doing. This is because stream-aligned teams primary responsibilities are more constrained requiring them to focus on a specific domain / area of the product that they own. These teams are also responsible for new feature development within their areas of ownership. Much of this work is driven by Product Management. This is something to keep in mind when considering a move from Quality Engineering where you may have had more freedom over the Quality team work you worked on.
Having said all that, there is still plenty of opportunity to get creative. If this is something that could be a concern for you though, be sure to chat to a few software engineers before jumping in.
Front End Specialism
Front End development is all about the client side experience. They build the touch points of the software, the user interface. Often they will work closely with designers to develop experiences that are pleasant and simple to use. Front End developers also have to consider things like accessibility to ensure the product is usable by all. More often now they also have to consider how the UI is rendered on devices with a vast array of screen resolutions, from the smallest of mobile phones to the highest resolution PCs.
Due to these types of broad consideration I often find that Front End Engineers are the most interested in test automation. Test automation offers a wide range of benefits, especially for things like accessibility and visual testing. So if you love building beautiful, functional user interfaces, then maybe Front End development is for you.
Back End Specialism
Where Front End development is about building the touch points of the software, Back End development is about building the things hidden under the hood. It is the software that handles the business logic of the software, stores and retrieves data and processes it as needed. They are also the people responsible for providing access to the data, often via APIs.
Back End development has different considerations to Front End development, although with crossover. Common considerations are security and performance. They have to ensure that large amounts of data can be handled quickly, efficiently and securely for high volumes of users. If you like diving into technical details, back end development could be for you.
Full Stack
There are many, subtly, different definitions of what a Full Stack developer is. The simplest of these is someone who is equally specialist in both Front End and Back End software development. This is sometimes taken further to include specialism in Databases, DevOps and Mobile App development.
Ultimately, just like the tech stack will vary from one company to another, so will their requirements of a “Full Stack” developer. So when considering roles that are Full Stack, be sure to consider what that tech stack is, and your level of confidence with each of the technologies. You likely don’t need to be an expert in all of them, but should at least be familiar with all of them and confident on some.
Product Management
Product management can be a fantastic option for the Quality Engineer who doesn’t want to remain hands on with code. You continue to deal with the quality of the product and user experience, but in a new way. You also get the opportunity for broader impact on the shape of the product moving forward and a closer working relationship with the customers.
Karin Shevrin wrote a great blog on Medium, 14 tips on transitioning to Product Management from QA Engineer position, that is a must read for anyone considering this move.
Other Niche Engineering Roles
There are of course, many other roles related to Software Development that may be of interest to someone looking to stick to the individual contributor path. Specialisms in Security, Data – including Machine Learning and Artificial intelligence, Database Analyst, etc.
If you have a particular area of interest but you are unclear how to move towards working in that area, speak to those who already do for support.
Roles in Leadership
Good leadership is a skill that will always be highly in demand. Its also a very transferable set of skills in between different specialisms, especially at more senior leadership levels. A transition from a Quality Engineering Manger to an Engineering Manager may not be as big a leap as you might expect.
As with all of these things, context is key. If you are moving from a Quality Engineering Manager to Engineering Manager in a team that has Senior Engineers or a Tech Lead, there is less reliance on you to be able to lead the technical side of the team. That is not to say you will have to be hands off, there is often opportunity for you to roll your sleeves up and continue your learning as an engineer, while still being credible as an Engineering Manager.
Credibility as an Engineering Manager is important. It’s ok to not be the most technical person in the team, in fact if you are, I think something else is going wrong! However you will want a broad (but not necessarily deep) knowledge on a range of technical topics. This combined with an aptitude for good strategy and process will allow your Software Engineers to be confident in you to lead and represent the team.
QA Leaders – Reached your limits?
“QA Leaders – Reached your limits?” is a series of webinars by QE Babble on LinkedIn. They have run a couple of these sessions so far and they have been a great watch. The sessions offer real insight from people who started working in Quality, felt they reached their limit, and have moved on to other things. They are a must watch for anyone feeling they are at a stage where they want to progress their career outside Quality Leadership.
Summary
And having said all of the above, I need to clarify my point of view. There is absolutely nothing wrong with staying in Quality. In fact, I am making a deliberate move from Engineering Leadership into a Quality Leadership role (More on that soon, I promise).
Quality is an area where there is always something more you can do. This means that there will always be opportunities to improve Quality practices and processes at every organisation, no matter how mature they already are. To do that we need Quality experts to lead the way and help teams achieve more. If this is where your passion lies, then stay with it. Just remember that in order to stay on top you need to always be learning.
Subscribe to The Quality Duck
Did you know you can now subscribe to The Quality Duck? Never miss a post but getting them delivered direct to your mailbox whenever I create a new post. Don’t worry, you won’t get flooded with emails, I post at most once a week.
September 1, 2023 at 2:46 am
Very insightful thanks for spending the time to put this together and including additonal resource material.
What I found most useful were the suggestions based on individual interest. Individual or people manager.
September 4, 2023 at 5:57 am
[[..Pingback..]]
This article was curated as a part of #101st Issue of Software Testing Notes Newsletter.
https://softwaretestingnotes.substack.com/p/issue-101-software-testing-notes
Web: https://softwaretestingnotes.com