Ask HN: Did anyone leave Software Engineering as your profession? If yes, why?
I am a Software engineer right now with over 4 years of experience. I have been having this feeling lately, that I feel the excitement I experience is not enough and I need more. So, I have been thinking about doing other things.
Has anyone else here felt the same? Or felt like being done with Software engineering? If so, I would like to know when did you figure this out and what are you doing right now, and how did you end up doing what you are doing?
Asking for Software Engineering in particular, because I have seen people from other professions find coding as a passion and wanted to know if there are people who went the other way.
37 comments
[ 7.6 ms ] story [ 81.3 ms ] threadTry to see if you can find a more interesting domain to apply your skills in. For me, moving to a senior role offered a more interesting scope and facing more design work and advising mixed with some coding, mentoring, etc.
If you’re tired of the field entirely, maybe there are non technical roles where you can apply a set of your skills in something like management.
Unfortunately I don't have any answers but as the other responses point out software is a gilded cage because it would be very hard to get anywhere near an equivalent salary doing anything else.
I had become increasingly disillusioned with software, mainly the maddening bureaucracy, problematic management and lack of teamwork over my previous two jobs. But I also had something of an existential crisis when I realised I think that so much of what we do is just rewriting or updating apps to use the new hot tech in order to have something to do. I feel like so much of what's exciting people at the moment are solutions in search of problems, if StackOverflow can run on a few servers to serve an incredibly high traffic site why do we need k8s and serverless and firebase and microservices and kafka and whatever else (granted I have no idea what most of these things are or do)? Why in the name of God do I need an entire build pipeline and SPA framework to deliver some static HTML to users? I feel like Rust is interesting and potentially worthwhile but I don't have much interest in the domain of problems Rust excels at. Granted all this is coloured by the burnout I'm recovering from.
I think I will probably end up going back to software, maybe as a contractor, but I'm tempted to try something new. My belief is that it would be easier to do something socially meaningful in another field but even in scientific research most work is pointless and the reward/funding system is entirely dysfunctional.
At this point it’s become a kind of joke for me because anything else would be too depressing.
It's insane how many companies scale for growth that they will never achieve. Even if they are successfull.
It's not that you can, that you should do it is my living mantra.
It's comes from leadership and trickles down to individual engineers. If your leader is deep into this mindset of completely over engineering things, you are screwed. I quit a job like this because the system was just too much. It was making me hate my profession and that's when I knew it was time to go.
You can get so far with a simple monolith, there is no need to suffer the whims of someone justifying their position.
I've had the luck to work on a 10 years old Django System. Everyone from the 6 people working on it said it was the purest sh.t they saw.
On the other hand, I need to learn new stuff. I tried Express or other JS fmw but these are not new things.
You can get pretty sh.tty unusable code with a monolith, while state-of-the-art is expected to be understood and seek by people that crave for more.
Tbh, I think it all depends on how well a team is prepared, and ofc it is more complex with the later tools, but they definitely avoid a lot of useless and shame code.
It is also very common that business hasn't validated their initial client base.
At the same time, the “change the world” rhetoric is even harder to swallow when you look at things this way.
For me the disillusion has more to do with feeling like working at a "unicorn" tech co is no different than any other corporate environment, where you have people who are optimizing for titles and influence doing anything to achieve those things, and feeling like playing those games is just not compatible with my personality.
The other part of it was the cognitive dissonance I got between hearing "this is changing the world" and thinking to myself "is this really that innovative and is this a net benefit to the world?"
I guess 6 years in tech is about the time when both you've saved enough and seen enough to decide you want to not do anything for a bit anymore...haha.
I have never felt that I had to stay stuck doing something that I no longer enjoyed. For me learning new material (and enterprise scale networks was a big challenge) and facing new challenges has always been more inspiring than merely picking up a fat wage. The biggest problem being that, for most people, their spending increases faster than their income. Exercising a small bit of restraint and having some savings opens up so many great opportunities and adventures.
I can understand the fear of starting from zero. But that doesn't need to be the case. What I have always done is to focus more on domain knowledge and then segueing from one area to a adjoining one. Technical knowledge, alone, quickly becomes outdated. But domain knowledge continues across multiple generations of technology.
There are often real disputes, between real companies, on patented ideas that are incredibly similar. Having a solid technical foundation is necessary to fully understand what's going on. As a patent litigator, you generally get to work on 2 or 3 cases at a time, often involving different technology, and you get to become the expert in them. I personally worked on Bluetooth, H.264, and crazy image processing algorithms, among many others. The downside of course, is that while you deal with tech and learn about it, you're now on the outside. You don't make anything, and the job is stressful, but for the right person, it can be a good fit.
Yup, for me, it was the right balance. If you want to start a company, learn engineering, then learn something else, then build something for that something else.
> Apparently, it is Django-based, though I'm curious about what are other components of your stack
I use Django, jquery, elasticsearch, and google app engine 4 years ago. For analytics, I have used so many platforms and have built a bunch of custom stuff. Sadly, no native mobile app, but the site is fully responsive.
I'm pretty skeptical of taking my past decisions and re-applying them today. Today, parts of it (especially jquery) seem outdated, I'd probably choose vue. Even Python, which is generally great, is causing pain today (moving 2.x to 3.x; performance for a number of corner cases). App Engine used to be an incredible platform, but google has stripped so many features from it that it's hard to describe it today as a real PaaS.
I was first inclined into software before deciding on civil in college after the dot com bubble burst.
I recommend all software inclined engineers do anything but software. Software Programming is a very powerful tool in most industries but is least required in the software industry.
So I recommend you pick up another skill. And start working on it from a software perspective.
Do you mind if I ask how he achieved that? Did he go back to college? I ask because I've been thinking about transitioning to mechanical engineering, but going back to college for 4 more years and racking up 10s of thousands of dollars in debt is off putting.
But I came back with different goals. I wasn't pushing myself to be the best engineer in the world... I just did the work. I wasn't trying to make software used around the world... I just took jobs and did my best.
And I found that with a more relaxed attitude, I was better. My work was better, my performance and satisfaction overall was vastly improved. And my career went to a better place. I still don't have the passion for it that some people do, and won't miss it when I retire. But I have solid skills, a solid work ethic, and a solid career.
I would hazard to guess that as much as you had many challenges, you always felt a sense of accomplishment when you completed a particularly difficult bit of tangible work.
p.s. I believe all software engineers should be factoring in a year out for every five years worked.
I'm a lot happier now that I can outsource some of that work to other people. Maybe in the future some of the boring 90% can be automated away, but the human factors remain.