Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Did anyone leave Software Engineering as your profession? If yes, why?
41 points by notadoctor_ssh 12 days ago | hide | past | web | favorite | 37 comments
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.

I'm currently on my first break after 6 years with no job lined up and I'm not sure I want to go back to software.

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.

Wow, I feel exactly the same. Except that I have been a software engineer for 20 years. I lasted so long changing jobs every 4-5 years. Usually, every time I started feeling exhausted at a job, I started looking and changing before it was too late.

In my current job, we have a globally distributed application that can handle 1000 times more load than expected. We have a sufficiently complex CI / CD process that took almost as long to develop as the application. We have a developer whose job is to fill out TPS reports. The application could have been much simpler, but we had to use certain technologies. Then we have so many ceremonies around it, such as daily surveys, meaningless waterfall style planning and then the use of tools for agile practices for waterfall style releases. It takes at least one hour to create tickets for the approval of the commercial process before each production boost. All the time, they told us that we needed CI / CD so that we can release code more frequently and easily.

Now in my forties, I have a hard time changing and I have probably stayed too long in my current job. It's not that I'm not receiving offers, but I feel that all jobs are the same, at least, for web developers. Basically, create things that help with sales and marketing, either directly or indirectly.

Sometimes I think that my feelings are what some people call midlife crisis and that I should do something typical of people in their 40s, like buying a sports car.

Not sure what the answer is. I felt that I should also share my frustration.

Those last few paragraphs really resonated with me in a funny way. I find lately that the more bored and unfulfilled I become with my job, the harder I start staring at pictures of that new Corvette...

I'm the same way. The software development I do as a job stopped being a way to make cool things and has turned into a bunch of CRUD chores. Nowadays I vent my creative urges in various ways, one of which is writing software, but there's a clear motivating purpose or a hard problem that needs solving towards a specific goal.

Are you me?! I have almost the exact same story and feel the same way. One thing that particularly annoys me is how interviews at a lot of places have devolved into 4 interviews and around the 3rd you talk to some smug engineer that expects you to have memorized pedantic things about programming languages. I’ve worked in senior level positions for years doing very high quality work but I still google a lot of stuff and it just makes no sense to me why they do this instead of evaluating applied knowledge. Most recently this happened AFTER I had already passed a HackerRank test. And the worst part is then companies might ghost you if you’re not selected as a candidate.

I never really understood how insane it can get until my current job. We literally have a system diagram with like 30-40 different components (proxies, lambdas, pretty much all aws services), for a system that would work just as well with 3 (front/back/database).

At this point it’s become a kind of joke for me because anything else would be too depressing.

Search for baklava code. Or architecture astronauts.

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.

It's called over engineering or premature optimalisation.

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 good to see so many of us are in this boat and people notice it. Every company I've been in is always over engineering and overly complicating simple things. I think the solution is switch fields into something you like and move into a smaller start-up where people are more realistic and can't afford stupid over engineering.

Pretty much same, though I've been in analytics and PM at a few "unicorns" over the last 6 years.

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.

It’s true that we’re just rewriting crap, but then most jobs are basically pointless. I see it as an opportunity to not take all this so seriously. Just shovel the shit and get paid. Could be a lot worse.

At the same time, the “change the world” rhetoric is even harder to swallow when you look at things this way.

I took a break for a couple years at one point, also about 4-5 years after I started. I went and threw boxes around warehouses for UPS, then I did a year of law school, then I realized that software wasn't so bad, so I came back to it.

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 want to do something like this. Take a hiatus but work a minimum wage job so that I appreciate what I have.

No need for extreme measures. Why not do some gardening in the weekend? Some manual labour?

This isn't for everyone, but after working as a software dev for 3 years I went to law school. Because I had a technical background, I was immediately pegged to be a patent attorney. I know, most software developers hate patents, but most of the work is not as evil as it seems in the press.

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.

It seems that you still have found some middle ground between software engineering and law by creating Docket Alarm. :-) Congratulations, it seems like a nice and useful platform. Apparently, it is Django-based, though I'm curious about what are other components of your stack (e.g., for mobile app and analytics).

> It seems that you still have found some middle ground between software engineering and law by creating Docket Alarm.

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've thought about it many times, but it's hard to walk away from the money. I'd have to start at zero in any other field, and to reach even half the salary in another standard professional career, I'd have to go to school for a few years. If I had any business ideas or an entrepreneurial spirit, I could try to set out on my own, but that's unlikely. In lieu of going insane from the tedium and politics of a software career (not that other careers are any better in this regard), I take a lot of time off; usually about a year every three years. I always go back to software, though, because it's easy. I'm tempted to do something completely different for a quarter of the salary, like become a dive instructor. Beats sitting behind a desk writing the same web app for the 50th time and dealing with sprint planning meetings.

I was burnt out as a programmer a long time ago. Using my IT knowledge I moved into the field of business analysis and then on to project management. After a while I got tired of the politics so I switched to working as a network / operations engineer. More recently I went back to university to do post-grad research in model based software engineering and now freelancing as a consultant / project manager.

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.

Not sure if everyone feels this way, but I kind of hate "software engineering". I feel like once the logic or core principle is figured out, the rest is just the chore of implementation. It's like the fun part is visualizing how everything should work in your head, then you have to do the boring part of typing it all out, debugging, dealing with stakeholders etc which forms 90% of "software engineering".

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.

Try being an analyst or architect. This way, the "boring" work gets done by coders, while you define the work, figure out big problems etc. It can be quite fun.

I moved to sales & investing after 10 years of coding. I still write code every day, but only for myself. For me, programming is beautiful if I am in control of the product getting built. It's a complete package and the creative aspects is what gives me the thrills. Being a code monkey does not.

How’d you do that move?

Jumped right in. Struggled a lot in the first six months. Then it got better.

My old VP Engr quit and opened a falafel shop. Still going strong after 20 years.

A friend I know went from software engineering to civil engineering for difficulties in finding work. But I find many more that do the opposite, go from civil to software.

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.

> A friend I know went from software engineering to civil engineering

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.

The first degree was from India. So he had little college debt. Second degree was from public university. With two years at county college. And he worked part time.

I’ve gotten bored multiple times and changed companies, organizations, teams, or worked more on my promotion to change the nature of my work.

Try 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.

I quit software for mainly two reasons: the constant squabbling about what framework of the day to use and the lack of training people have. I know it may sound petty, but when people doesn’t even know how to use the current framework, why on earth should the add more they don’t know anything about?

Did 10 years at 4-6 companies, from startups to big co. Felt like most coworkers were big pussies who couldn’t even change their own car oil. Their time is just so valuable. I was always handy, did all my own auto/home repairs, etc. so took the leap and started buying distressed properties as-is in “bad” neighborhoods. Learned a lot about evicting squatters, keeping homeless and druggies from trespassing and loitering, fixing roofs, replacing leaky cast iron plumbing, repairing refrigerators and stoves, fishing romex up 3 floors, renting to millennials, gentrifying a street, etc.

There probably are some bit wranglers would dread getting their hands dirty the way you did.

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.

Call me a pussy but your new job sounds a hell of a lot worse than most software Dev jobs to me. Each his own I suppose.

I think Op is some parody / troll account. It's too unhinged and it's trying too hard to offend. I don't see any other explanation.

Is using the word "pussies" trying hard to offend? It seems like a pretty legitimate post, I know many people that think like this guy, only most of them don't read hacker news..

Surprisingly common to feel like this. You've done 4 years. Hope you've been saving hard. You should be able to take a year out and rest up and see what takes your fancy - you might find after a good break your interest in software is rekindled.

p.s. I believe all software engineers should be factoring in a year out for every five years worked.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact