Ask HN: Time for a Career Change?

52 points by throwaway234691 ↗ HN
I worked for Google for a few years and hated every day of it: lots of proto shuffling and bureaucracy and very few interesting problems to work on. I'm now at a different company, but I'm honestly feeling very burned out here too. I have a lot of meetings due to being in a fairly senior IC role, but I'm an introvert and feel very ineffective.

I've also become painfully aware over the years how many aspects of development are tedious and uninteresting. Things like wrangling dev environments, writing tests, debugging issues in prod, hunting through docs, and chasing down teams to figure out how a large system fits together (especially if the system is boring). A lot of engineering work is plumbing together different systems, and having more experience doesn't make this work any easier or faster.

I used to really enjoy programming, but that's because I would choose to work on solving problems I found interesting. I've always appreciated elegant systems (ideas like lambda calculus, Unix's files, programs, and pipes, LISP, Haskell, etc.), but most of the systems I work on are the exact opposite: large and boring. I also really dislike corporate culture: trying to maneuver politically, show off in meetings, etc. I'm starting to wonder if being a software engineer is really the right choice for me. Any thoughts?

39 comments

[ 3.2 ms ] story [ 85.1 ms ] thread
Sorry to hear about it...just as an idea since you mentioned that you're an introvert, I'd look at heavily weighting aspects of introversion:

1. Tight boundaries around relational and physical circumstances taking up your time and space: Environments without so many meetings, but probably also low-dopamine work environments in general, i.e. build your ideal space starting from the typical closet-with-locking-door configuration

2. "My ideas, my goals, my ways of doing things." Environments where you are the sole keeper of the job's tech domain knowledge. Total permission to go not-invented-here. For example, say there's an IT team but you are the only software engineer and there's a solid boundary there.

3. Time not of the essence: Introversion is at its best when time is not an overriding concern. It could still be a very important job, but the work product value is measured in qualitative improvements that create and maintain a sustainable business environment over time, for example.

I've seen these conditions matched in a lot of different domains, but tech within tech is a difficult match. The most common one that comes to mind would be academia, for example there was a popular bay area performing arts department within an academic institution, which had a very complex and rare web application stack and a tech person looking to retire.

Good luck, I hope this can be somewhat helpful.

Thanks, these are very good suggestions. Thinking back, I was much happier early in my career when I did internships and contract projects where I was the only engineer and controlled the project completely.
Lots of consulting work out there, but you do have communicate quite a bit in those roles unless you're also working with a PM
Introversion works well under pressure. The one difference is introversion doesn't want to have endless meetings talking about how to solve these issues.. they are doers.
I would say I'm somewhat extroverted, I hate corporate meetings, and I'd much prefer doing something.

Extroversion doesn't mean being immune to people speaking about boring stuff all day. I love talking with people, but it has to first and foremost be fun. Meetings are the antithesis of fun. Especially listening to engineers bickering about some mundane issues, or managers talking about a pointless reorganization that will synergize the agile flow.

I think you just need to be ruthless about what you work on. Probably 90% of jobs inside a big tech company are boring. Outside big tech it’s even worse. Refuse to work on old systems, any technical debt, on teams with bad developers, on any complicated proprietary infrastructure, avoid customer facing systems, critical services, etc. find out where the product is actively evolving, where you are building the first pieces.
> Refuse to work on old systems, any technical debt, on teams with bad developers, on any complicated proprietary infrastructure, avoid customer facing systems, critical services, etc.

I'm afraid that when you discard the above, there's hardly anything left. You need to be very high status to work exclusively on such projects.

You def sound burned out. I would recommend taking an extended amount of time off (3 weeks at least) and do NOTHING work related. Let yourself naturally come back to the things that really interest you most and figure out how to build your career around that. It may not be easy in the short term (money, etc) but the long term pay off will be worth it.
You're definitely right -- it has been years since I've had a real 2+ week vacation.
Mine starts Friday the 13th, will let you know how it goes!
Weeks? Take a few months and travel if you can! You can backpack for several months for the same price as a week in an all-inclusive resort.

Head to South America or SE Asia - stay in hostels, travel on local buses, swim in waterfalls, hike some trails.

As someone preparing to do exactly this, any places in South America you can recommend?
Visit the floating islands in Guyana if possible. Trip of a lifetime. If you want something less adventurous Peru/Chile are great
You could join a startup that is working on a problem that's interesting to you. Since everybody is looking for developers right now, you really can choose what you want to work on.
Unfortunately, most people aren't interested in much beyond cosuming content. In the dev world, it mostly translates to working on video games, which is notorious for not being the smart choice.
I highly doubt that this is accurate. I'd say that most devs make relatively boring business software - making some process more efficient, moving data from A to B.

I've met a few hundred devs irl and only a handful of them are game devs.

If I ask google "How many software engineers are game developers", I get a 2% estimate from someone on Quora.

What I meant was - if devs try to follow their interests then, given their typical interests, many of them will end up in gamedev, which is not a happy place. Of course, most devs just follow money and ignore their interests, so they end up in boring business software you mentioned.
Try a smaller company.
My current company is much smaller than Google, but we have big company problems without big company dev tooling.
I agree that it's boring. I feel similarly. What else is there to do?
I’m feeling this too. I’ve worked for years as a senior engineer, but now I’m choking in interviews that are simple in hind sight.

I have an ok job at a smaller company with less politics but I simultaneously feel that I need further career progression at a large company, but also I am getting anxious with interviews, my career, money (not that I’m struggling, I have overall done better than most of my peers).

I still love programming but I wish I could build something for myself and monetise it. I’d be happy at a smaller company where I can see my work directly benefit people. But I don’t know what that looks like long term.

I'm not older yet, but I feel this coming. Good income, but still, always worried about getting left behind in the tech field.
> I've always appreciated elegant systems (ideas like lambda calculus, Unix's files, programs, and pipes, LISP, Haskell, etc.)

How about making contribution to OSS?

> but most of the systems I work on are the exact opposite: large and boring.

This is most software development. Most of it is boring and kind of tedious and the same old stuff we’ve always done. The new stuff you’ve never done is interesting. You figure out, and now it’s something you know. Then it becomes uninteresting.

> I'm starting to wonder if being a software engineer is really the right choice for me.

I’d be willing to guess if you moved on to something else you’d feel the same kinds of things. The issues you’ve mentioned are a reality of modern businesses. Your may have to see what options are available from your employer in terms of expanding your role or exploring concepts that will help you find more fulfillment. As a for-instance, my job allows me to spend 10% of time doing a sort-of choose-your—own adventure learning development. I’m currently working in computer vision even though my other work is web-apps

(comment deleted)
I know it sounds cliche, but maybe you should look at the bigger picture from time to time:

"A man came across three stonecutters and asked them what they were doing. The first replied, “I am making a living.” The second kept on hammering while he said, “I am doing the best job of stonecutting in the entire county.” The third looked up with a visionary gleam in his eye and said, “I am building a cathedral.”" https://www.harvardmagazine.com/breaking-news/three-stonecut...

Of course, IT applications in larger corporations tend to be boring and uninspiring by themselves, but they are there for a reason and they probably make someone's life easier and help other people to their job. For example, I am working on an IT system that connects individual dealerships to the corporate IT databases. My company uses this system to sell its products and communicate with its customers, so this system is really helping people.

Maybe try to look beyond the daily and mundane tasks of your job and see the purpose of your role.

Two thoughts:

1) Your work is always helping _someone_. Find out who and connect with them.

2) The cathedral anecdote sounds pithy, until you hear “sorry, no raise for you. But do you really need it? After all - you’re building a cathedral!”

> 2) The cathedral anecdote sounds pithy, until you hear “sorry, no raise for you. But do you really need it? After all - you’re building a cathedral!”

Well then find something you're really passionate about but convey the impression to your boss that you're mainly doing it for the money;)

> I'm starting to wonder if being a software engineer is really the right choice for me. Any thoughts?

It may the right choice in the sense that alternatives are even worse.

Souns like you want your days to be filled with relatively free exploration of things that interest you at a given time. Sorry, but you need to be a genius in a given field to even have a shot at getting such position. [1] For the rest of us, the two realistic ways of achieving this is to either grind in high-paying job and retire early or compromise on standard of living (essentially become a ramen-eating hippy, so that you hardly need paid work) and then fill your days with whatever is interesting to you. Both of these tracks have huge holes and I suspect people choosing them may end up as depressed as regular "lifers" at big companies.

On the introvert thing - personality is malleable and plenty of stereotypical tech introvers (starting with Elon Musk) have grown into high managers position where they comfortably spend their days in meetings. It's just a skill like anything else, it just takes at least a couple of years to develop.

[1] One exception might be getting into PhD program in a field of your interest where you'll be paid pittance, but, if you're lucky, you might have a couple years of freedom to explore your interests.

>Both of these tracks have huge holes and I suspect people choosing them may end up as depressed as regular "lifers" at big companies.

Anecdotally i have enough money that i dont really _have_ to work. i "retired" and bought a farm. got a job learning to frame houses (to learn to build my own house), and a year later i own a business framing houses. I run the farm, and build houses, and do whatever i feel like doing. i cant imagine getting depressed. there are always new challenges, and things to learn. I was horribly depressed and unfulfilled in corporate america writing software.

now i do what i want, there isnt an HR department, and the business politics are fairly down to earth.

> I would choose to work on solving problems I found interesting

Maybe identify existing problems at work which impacts you.

Tried to do this myself but interest or suggestion soon becomes obligation and responsibility, I wised up to it. Good deed always go unpunished and so on...

Have you ever considered going as a solo consultant?

You can cherry pick projects that are interesting to you, and you can jump to another company every few months.

Just try to avoid long commitment projects.

For example: A few quick jobs I did in the past:

- Jump into a startup sourcecode and find out why the whole microservice ecosystem would fall like a house of cards after some time. Didn't have to fix it myself, just provide evidences.

- Create a brand new embedable front-end library for a marketing startup. The old one was a pile of crap.

- Setup a design system foundation for a big company.

- Integrate an existing chatbot on google home.

- Code review an entire project made by a solo dev.

- Improve performance of messy backend-frontend architecture.

> Have you ever considered going as a solo consultant?

Isn't consultancy an extremely saturated and competitive field? I've considered this to be a realistic option.

I am doing blockchain + frontend development right now and loving every minute of it. I am writing Rust smart contracts in Solana and been given leeway to use any React library I deem fit and to design the app as I wish. The money is also really good for a freelancer.
Consider the academic field?
You had the best and you still hated it. Maybe there is more to life than selling your time for a paycheck? How is your life outside of work? Do you have a partner, kids? Carpe diem.
Sorry you are feeling burnt out, been there, it sucks!

The way I've come to solve this for my self is separating programming into professional programming and hobby programing.

For professional programming, I do it to make a living, to earn a salary, and that is it, nothing more and nothing less. If I wasn't being paid for what I do at work I wouldn't do it. I aim to be a good team member, skillful, helpful, add value to the company, but that's all. I don't expect to find enjoyment in it. When the boring part of programming comes along, I'm not surprised, it's just work. There will be times in which I happen to enjoy what I'm working on and I also actively try to find ways to make my workplace a place that I'm happy, or at the very least not miserable, but doing boring things is just part of the deal. And looking around at other careers, is not a terrible deal ($$$).

But I also happen to program as a hobby, not for professional growth, or to hustle, no, I program because it is something I enjoy. When I'm programming as a hobby I'm very intentional to not mix work with my hobby, since the purpose of the hobby is to enjoy the hobby!! I will use 7 programming languages, start 12 projects and finish none, and you know what? I can! and I love it!

It comes down to the source of motivation. Notice how you can start a project and be super excited about it, but the moment you bring money into the mix, i.e. you wanna monetize the project or get a tons of stars on github, the initial energy seems to dissipate... that's because at the beginning of the project the motivation was internal, curiosity, discovery, the joy of learning, or whatever. But the moment that the motivation becomes external, say, money, open source fame, professional advancement, the internal motivations tends to disappear.

Anyways, I hope this makes sense and you can find some balance.

I fully endorse this approach and actually practice it myself, even I`m not a professional coder, just a newbbie who came back to it; you can apply this to any industry and or activity which is "vocational", from music to teaching to whatever you might feel a passion about it. To me is also a relief many times to be aware of "this pay the bills" this is what I love to do. Now I`m loving code again thats why popped here (Paul Graham and his essays to be blamed for :)). One flaw on this "tactic" for myself is that regardless of being an activity to pay the bills, I am naturally bounded to do quality job, and some times that is just not feasible. But this is another kind of personal weakness and does not undermine the tactic itself