Transitional Occupations (or: How to Leave Software)

A discussion thread for ways to transition out of occupations. This is not a judgement on the occupations - and it must be noted early on that occupations which are worth transitioning out of are not equally distributed geographically. So for one person it may be of interest to transition out of an occupation that for another person it may well be of interest to transition into, but due to regional economics, personal interest, or any litany of other causes, moving where the occupation is still in demand may not be a relevant solution.

Goals:

  1. To provide a place on this forum to give and receive advice on occupational transitions, including the meta-issues of dealing with personal values and identity in the process and reorganizing your life around new ways of self-expression and income production.
  2. To serve as a reference for which regions seem, to the users of this forum, to have certain needs which suit certain former so as to provide a small sample frame of reference for local skills and their relative demands.
  3. To build up a collection of ideas around which occupations seem to be good transitions (either as final destinations, or as intermediate steps towards specific others).

Ground rules:

  1. This is not a place to debate why a person, here or hypothetical, wants to transition or whether transitioning now or later is appropriate, unless it’s specifically brought up as a question by someone seeking advice on timing. Let’s keep this focused on how to transition and what are good options.
  2. Keep in the spirit of an open conversation intended to enable and create options, not a conversation intended to persuade.

That said, I’m going to kick it off with a few ruminations and questions on the topic of transitioning away from software development as a career. I think that’s relevant enough or close enough to home for many people here to serve as a good reference point, and as we go along, hopefully we’ll branch out.

My starting assumptions are that I believe software development as a viable career choice, on a global level, will remain possible for the duration of our lifetimes, but I do not believe it will remain possible for as many people as are currently making a fruitful living off of it, let alone the order of magnitude larger people who are working in software sweatshops barely getting by building garbage they hate for people they loathe. If you doubt the existence or the magnitude of this phenomenon, let’s discuss that elsewhere. I also have seen strong evidence that Europe in particular, and certain places in the US, are becoming strongly ageist about programmers, making it more difficult to hire senior-level programmers and engineers, especially if they’re over 50. If we all live long enough, this crunch of > 50 and far fewer jobs is likely to happen at some point in our lifetimes.

I see transitioning gracefully out of software development as a career to be something to keep a sharp eye on, as a great many of today’s programmers, even at a senior level, are not going to land the sort of job that pays for a home and family in just a few year’s work, making it safe for them to gamble on low-income semi-retirement. Many people are going to need to make a living as they do now, but software may not be as good of an option anymore.

So let’s assume that the world suddenly had no use for 50% of its current crop of programmers, across the board from no-formal-education-but-talented youngsters all the way up to multiple degree theoreticians, at their current respective distributions. What are good alternative career choices if startups cease being funded - say, a 90% reduction in startup funding happens for some reason, and simultaneously, large layoffs at all the big consulting firms happen? What happens if the value of small businesses having and hosting websites just goes away as shrinking budgets yank the last bit of profitability from freelancer’s clients and those contracts disappear?

There’s always the “well do whatever you’ve got skills for” answer, but I’d like to go a step deeper. Most programmers today support either a transactional product (e.g. online banking/paypal/ebay/amazon type services) or advertising in some way (including the freelancers who do single-page sites for small businesses, etc). A much smaller fraction labour on specific applications such as games, “productivity” and cloud software, and the bevy of consumer-product software like your rosetta stones and whatnot. An even smaller fraction work on the underlying technologies that make this possible, like operating systems, protocols and encryption, networking firmware, etc. And an even smaller fraction work in the theoretical realm of algorithm development, university experiments, and language development. We can probably safely ignore this latter realm in this discussion. People firmly in the realm just above it are likely safe for quite some time and may not find relevance in this unless they want to transition out for personal reasons. But people who are not firmly established by career, visibility, and portfolio in the deep tech realm, or are a member of any higher realm, are likely to experience high instability in the job market over the next decade or two, is my personal guess.

The joke about many bike mechanics being former software guys is funny because in a lot of cases it’s true. Same thing with microbrewers and other micro-alcohol businesses. A lot of new boutique farming is being taken on by the same crowd, from my small sampling of that market as well. There’s definitely a fetish to going all the way towards what would have been high-tech in the 1800’s, and for good reason - these are transferable skills. What I don’t see a lot of out here are software developers becoming master machinists, technical welders, carpenters, masons, or the legion of other skilled physical trades which, arguably, are more similar in their roles to society than what was, at the time, largely the domain of those who had means enough to tinker in their spare time.

The point is this: software in the main, as we use it today, is filling the role of a skilled trade, not a profession. While in our society this might be considered slightly demeaning to say, in the not-so-distant past a journeyman electrician or mason or welder would have earned enough to support a modest family in relative comfort, and would have had the respect of (mostly his, in those eras) peers. They were expected to show up on time, deliver a satisfactory result either alone or under the direction of a more senior tradesman, make suitably accurate bids and quotes, and train junior members up to their level. This is more than is asked and given to the average software “engineer” these days, in fact, and journeyman was by no means the highest grade in the guild or union.

So, with that in mind, I propose that the following present interesting and potentially overlooked occupations that might be suitable for a software programmer to consider transitioning into, and encourage discussion about these, additions to the list, and ideas for how to become maximally profitable and secure in a new trade. The ideas are in no specific order:

  1. Welding and other mechanical metalwork such as gear manufacturing and precision milling.
  2. Masonry - in the highly skilled structural sort of way - as in, how to correctly quarry rock or build an actual stone building, not a concrete block garage or a tombstone.
  3. Carpentry - either in the skilled structural sense of cathedral and castle building, or in the precise sense of furniture and interior fitment. Not talking about the cheap git’er dun method of housebuilding today, although that will certainly teach a LOT and might serve as an excellent transitional occupation in areas that still have a demand for housing (not to mention learning constructive demolition - how to take apart a building for maximal re-use of components).
  4. Printing - hand letterpress is already on the rise, but presses and type are hard to come by. Perhaps typemaking, in the physical sense, is a good addition?
  5. Specialized trades with lower demand but highly specific requirements: clay tilemaking and low-tech glaze development, glassworking/blowing, sign painting / handlettering.

All of these trades have low demand these days due to our current construction methods and reliance on highly automated, mass produced components, but COVID has shown the fragility of those supply chains and the lack of manufacturing knowledge and capacity in many parts of the developed world. So they are ripe for clever, skilled minds to acquire the physical skills and step into anticipated voids.

Then there are some trades that may or may not be in demand for quite some time, but may suddenly become crucial, too:

  1. Chemistry and pharmaceuticals. Pharmacists are still called “chemists” in the UK, and for good reason: most medicine until the mid-late 1900’s was compounded on the spot and the base agents and intermediate steps were often also manufactured by the chemist from more raw materials. These technologies served communities quite well and may in fact become relevant again in parts of the US as supply chains and the mail system undergo further shocks. Another good avenue for highly analytical minds.
  2. Patternmaking and die construction - the modern form of this might use CNC and 3-D printing, but the fundamentals remain the same and attention to older methods will likely pay off.
  3. Machining. Precision machining of custom parts is a closely related skill to pattern and die making, but whereas the latter focuses on the intermediary concerns of machine and tool interface and final work product, the machinist focuses on accurate reproduction of a finished work and is often in many ways intimately involved in the design of the component, the choice of materials, and the strategy of execution - serving in a role somewhat blending engineering and skilled workmanship. Today’s machinists rarely get to do more interesting things than custom plumbing fittings and brackets (to overgeneralize a bit), but in bygone eras when nearly everything was custom made, the machinist’s role in society was much broader and more fascinating, and again as supply chain issues reduce the value of globalized production, the need for skilled machinists may be on the rise again.

So, these look promising, and no doubt there are others. Keeping an eye on the fact that profitability usually lies towards the higher margin ends of these trades, and the fact that in many cases starting a successful company in these fields relies upon having first “served in the trenches” so to speak, what say ye of these fits for formerly software-oriented minds, and what other avenues are likely to be good fits? Has anybody worked in these trades (at any level) before, and can offer advice on someone wanting to have a good go at it? Understandably there may be negative experiences - perhaps this is better framed as what to avoid, since all of these trades can offer positive, meaningful employment as well as the usual slick of bad bosses and poorly run operations in ill chosen regions.

I’ve been semi-joking for years that if you do a survey of Gentleman Goat Farmers in 20 years, you’ll find most of the infosec industry having burned out and gone to something that doesn’t involve thinking about computers.

Being in the firmware weeds, and likely able to continue in that niche for the remainder of my career, I’m interested in the conversation, but am unlikely to make any major career shifts personally.

However, if my kids don’t show any interest in going down the deep technical paths I work in, that’s perfectly fine with me. I absolutely agree that the market for coders won’t be what it once was.

On a general level? I’d say if you find yourself leaving an industry, either accept you’re going to be starting over with appropriate payscales and retooling for doing so, or you find an allied industry where your current skillsets at least somewhat match.

Starting over is self explanatory and I think the list you have is a good start, but it’s also very individually oriented as to what a ‘backup career’ is.

I think the appropriate first step, though, is to inventory the skills of a particular coder, or a generic one.

Understanding of flow and structures is common in engineering, so maybe a software person can transition to other processes with similar methodology and input/output mechanisms.

Whole tiers of software itself can be summed up and encapsulated into other control systems. Think allied stuff like computer assisted manufacturing, etc. More senior folks also have skills which are transferable, like project management. There’s also the innovation and entrepreneurial routes.

Two things on this:

  1. I’m not talking about “backup careers”. I’m talking about economic transition to skills that are likely to become more stable, not less. This is not “deskilling”, this is “collapse early and avoid the rush”.
  2. These aren’t necessarily careers I’m personally interested in (I have my own, private list of those). So when you say “individually oriented” I’m not sure what you mean by that.

Agreed.

So, project management and the bureaucracies in place that enable such a thing to be a career, I don’t expect to be growing either. In fact I expect a fair chunk of those roles, largely, to be on the chopping blocks before most of the programmers, as programmers themselves are asked to take on the roles in replacement for their outgoing PMs. One of the reasons I’ve specifically chosen skills, versus administrative roles, is that I personally don’t view administrative roles to be particularly important in economies in decline. Sure, there need to be some (and the ones that remain are the ones that are truly important) but the sheer amount of administration that is present in the average company these days is astronomically more than is necessary for that company to be successful at it’s core competencies.

This is true, and again, it’s why my first list is mostly skills oriented. All of those will require mentorship, a starting-from-zero as you say, but the beauty of that is that a lot of those can be learned while a software job is held down as well - some of those are even started as nothing more than a serious hobby or passion project, so a lot of the early pain is subsumed by the joy of the project itself, and much of the steeper portions of the learning curve can be buffered by the day job. That’s really the point, I think!

I’m pleased to find myself in an emerging industry where machine thinking is useful, but I get to do hands-on work. I work on electric buses. If you come from software, any employer in an even slightly adjacent industry is probably going to be confused and hesitant if you insist on not using what they see as your strengths. However, the kinds of minds that can make sense of software can probably make good sense of meatspace things that run on software. I’m sure there are other growth industries with similar properties, electric vehicles is just one.

Hey, welcome! Glad to see you here!

How much of what you deal with is technical troubleshooting of systems, vs just broken parts (“The whippleflanger failed at the flanger to whipple interface, replace unit”)?