Christopher McCandless of Into the Wild fame once said that “careers are an invention of the 20th century”, and indeed it’s sometimes difficult to imagine a working life that doesn’t tend towards a linear, upwards progression.
For example, people often assume that any talented developer will end up becoming a manager. But of course this isn’t always true, which leaves us with the question – what would the career of a developer look like, if s/he never goes into management?
Leaving aside total professional metamorphoses (along with extreme options like McCandless paddling his way into the frozen wilderness), let’s look at some of the paths available for developers who never want to play the boss.
Option #1 – The Specialist
The majority of developers out there work on fairly standard technologies and learn skills which are shared with many others in the industry. But tech is a broad field, and there are many jobs for which the specialist is much more useful than the generalist.
Specialist developers will be among the best in their field at a relatively narrow range of skills. They may work in film and master the animation effects specifically of fur for characters like those of Zootopia and Kung Fu Panda, or they may work on advanced scientific software and study how to process data on particle collisions, or they may use a more ordinary technology like, say, Kubernetes, but be so exceptionally good that they stand out from all competitors.
The rule of thumb with specialist developers is that they get paid very well, often more than the average manager in tech, but they also find it more difficult to find work. Many will carefully cultivate their professional network to find openings as soon as they come up, and often they may take peripheral jobs as consultants, verifying products rather than creating them.
Option #2 – The Super Developer
The expression ‘super developer’ is contentious, as it is sometimes used to refer to programmers so talented and intelligent that they border on the mythical. Still, there are developers who simply go on learning for the entirety of their careers yet never go into management nor specialise in niche fields. And the fact is that these people are simply really, really good.
You will most often find them employed as senior developers in highly challenging projects. Even without working in management, they will command a certain quiet respect in team meetings, because they’ll be the ones with an eagle-eye view of the project and a sharp understanding of its overall architecture. They will typically be the ones in the team that push the envelope and look for innovative solutions.
Precisely because these developers are so good, they will inevitably end up doing work that is a lot more various in nature than just coding by themselves. They will become problem solvers for the whole team, mentors for the newest members, perhaps brand ambassadors for their company. Outside of the office, you will frequently find them networking via blogs, podcasts, video channels, TED talks, and more.
Super developers, if we may call them that, could certainly make more money if they followed a more orthodox career path. But they are people who simply love what they do and don’t want to stop doing it. To which we say, good for them!
Option #3 – The Legacy Developer
The only essential difference between the ‘legacy developer’ and the ‘super developer’ we described above is that the former, at some point in their career, has stopped learning. Or at least, they substantially slowed down the pace at which they learn new things. In the fast-paced world of tech, this means that their skills have (or inevitably will) become obsolete.
Developers whose skills are gathering dust usually don’t have the best of times. They will be given the drudge work of tech, covering basic tasks or doing rote maintenance. In the best of cases, they will find a position maintaining a legacy system that is based on technologies which younger developers are no longer learning. These are well-paid and usually not very difficult jobs, but the legacy market is not exactly huge.
Often people become legacy developers of their own volition, choosing to lower their workload as they lay a gentle path towards retirement. They will find contracts on a more casual basis, or pursue personal projects that are dear to them even though they are less remunerative. Work in tech can get intense, and, understandably, not everyone wants to sustain those levels of intensity indefinitely.
Option #4 – The Career Switcher
Not everyone who works in the editorial industry has to be a writer, and likewise, not everyone who works in tech has to be a developer. In fact, there is an entire constellation of jobs that surrounds the coding industry. One example is provided of course by our very own school, which employs professionals providing all sorts of services to students who are learning to code (admissions, careers, community support). Not all of these professionals are developers themselves, but all are expected to have an understanding of coding and the tech industry.
On the subject of schooling, teaching how to code, either at bootcamps or at universities or freelance, is another possibility for developers looking for a rewarding but different career path. Then there are fields like recruiting, or tech marketing, or outsourcing agencies.
These positions usually don’t pay as much as a manager role at an average software company, so they are not among the most popular. However, if you have coding skills but for whatever personal reason don’t want to use them, then it’s worth bearing in mind that there are still career options available. Even without leaving tech entirely, and even without going for a completely different field, which of course you are also always free to do.