All that said, I still do enjoy programming and work on a number of cool projects for myself. I've started to wonder if I should do something else for a living and relegate programming a hobby I can still enjoy on the side.
There are plenty of stories of people going from programmer to some business position, whether that be management, sales, BA, etc., but I'm not really interested in any of that stuff. In fact, I think I would hate that more than programming. I've been interested in other fields since a kid, programming just won because of accessibility reasons. I've always enjoyed natural sciences (through school, I struggled in math, hated language arts classes, but always excelled in science). I also contemplated a couple going into a other engineering fields as a teen that I've retained an interest in. There are also some IT domains that look interesting (honestly I'd probably be a better network engineer that software engineer), but I don't think I could stomach starting at the bottom of that field. I expect a pay cut if I switch fields, but entry-level IT pays pennies.
I dont think I've ever heard of anyone doing anything like this. Googling only shows people doing the opposite going from X to software development. Everyone wants to be a programmer these days. Maybe it's the money and prestige.
Has anyone made a transition from software to some other technical field?
One is a project manager for a small construction firm. Last time we had lunch together he told me the industry is ripe for some good software, but the owners don’t want to buy it. He started working on a free and open source tool.
The other ran so far away from software none of us are sure where he went. He’s vanished off of all social media and only occasionally answers texts.
During Corona self isolation, I started creating and selling filament:
I documented the journey here: https://medium.com/endless-filament/make-your-filament-at-ho...
The price of filament is still going up.
Since selling filament I am working partime, mostly doing maintenance (updates/patches) existing application.
a) You are still coding somewhat, but just prototypes. It is fun to use the APIs your company builds and help customers with it b) You learn a ton about business. I would call this position more professional consultant, since in the right company, you learn about deals, how much a company pays for what and what value they get out of you
You finally work with people and not nerds who never grow up. You can touch code, but also learn soft skills and make connections. Personally, the money was equal if not better. You finally work on the profit center of a company and not the cost center. After I switched to Solutions Architect, I come here every now and then and be so happy not to do this fulltime anymore. I don't care what you build at the weekend anymore.
I am also more free after work. There is no special new tool I need to learn after the job to get a job in 3 years from now. The people skills I build with my wife, kid and friends are so much more valuable now. So socializing replaced hacking on a new project. Which also did good for my mental health.
I've begun the transition from sysadmin into nursing to hopefully a NP certification. Maybe I can blend my background of cloud security and Kubernetes with medicine somehow. Or not.
I love doing manual labor for the physical challenge. In many such jobs the apps are crawling into the work flow. I'm sure they exist but what I've seen is lots of management and programming effort not producing the smoothness possible. I'm entirely convinced now that one cant get the design anywhere near perfection without experience doing the work. (where ofc substantial experience is better than some)
A manager together with an intelligent person with substantial development skills can design an UI where things that happen more frequently are easier to do. Then in the real world low frequency tasks may require 8 other people to wait 30 seconds while you tap buttons. It is not a big loss but it feels wrong. With some tasks it would be more convenient if you could operate the phone with one hand.
In my current job it may seem like time for a task is limited so we do a half-arse job. If it later turns out we do have time we want to get back to it but we cant. Checking a box means the job is done (we drink coffee in stead) no one would dare explain to the managers how the real world works. To them a job that takes 100-306 min always takes 203 min. Explaining a hundred tiny annoyances is waaaaaay to much work. Imagine a conversation about sessions that expire after 30 min while 5% of the tasks take slightly longer.
Also common is a complete lack of context with the current task. If the app knows I'm hammering floor boards with nail type 42 it can anticipate a need to order more nails. This feels empowering while navigating to the nail section of the supplies section then scrolling over a list feels as if it interrupted your actual work.
You can only do perfection if the entire feedback/testing loop takes place in the head of a single person. If one has a lot of experience one can sometimes encode the tricks of the trade.
Pre-Covid there were a lot of other consulting roles available, but they seem to have dried up.
I'd probably never stop coding though. It would just be a matter of switching from pro to hobby, and vice-versa.
I would suggest firmware or some other job where software is part of the product not the product.
Do you have any examples of prestige?
I wish I had either one. I have never recieved any prestige in my career. The money is ok, but there are trades that pay more than what I make, especially if you factor in cost of living.