When You Suddenly Hate Programming

What's the right choice to make?

 

Adapted and expanded from my response on Quora.

 

From the outside, development work is an appealing opportunity. It’s in high demand, it pays well, and it lets you use your brain. Fun, right? Well, for many, yes! It can be a rewarding career path. But like any profession, development has its downsides, and they can be somewhat unexpected, like constantly having to keep up with emerging updates and tools, or spending the majority of your time digging through codebases to understand what somebody else wrote.

 

Therefore it’s not uncommon for relatively new developers to discover that they’d rather be doing something else. Even if they love programming, the job of programming might not be for them.

 

So what then? If you’re among this number, you’ve spent time, effort, and probably a fair amount of money entering this career. You don’t want to abandon ship too hastily, but with every day a struggle to feel fulfilled, something’s got to give.

 

Fortunately, there are options. The world that your skill in programming opens up to you goes far beyond simply being a developer, and making that transition isn’t too difficult most of the time. Alternative paths include similar jobs that might not have the same downsides as traditional development (which we’ll get into a bit later on), transitioning into a management roll, or abandoning this area completely.

 

There are many options within those overarching categories, and the decision is not a simple one to make. In the end, however, finding the solution that works for you will effectively come down to making a relatively straightforward choice. Do you…

 

A. Stick with it, and make every day into a small step towards a related position in your company, such as project management.

B. Quit, and find a new role.

 

Option one will be rough, no doubt about it. You’ll have to spend every day doing things you may not enjoy much at all. However, you’ll be paid well, and you’ll have the time to pick a suitable transition strategy at your leisure, as opposed to being unemployed and under stress to settle for a job just to make ends meet. And there are other advantages besides: for instance if you transition into management, you’ll be the kind of manager who understands the technology thoroughly, who has been through that process — and that is a very valuable manager.If you choose this path, make sure to learn the best way to eventually transition / get promoted to a new position in your company, and work towards that a little bit every day, even if its just reading articles on your new potential job functions, or talking to some people who are in that field over coffee.

 

Option two is much more appealing. You get to get out fast and start fresh. It’s stressful, too, so you need focus on the important question in this scenario: how far afield do you want to go?

 

Do you hate development work altogether? Then maybe it’s time for a true career change.

 

On the other hand, maybe you just don’t like the environment that tends to pop up in many development jobs.

 

Fortunately, there are a lot of non-standard ways to put your programming and analysis skills to use. You could go into data science, or systems analysis, or database design. You might need to learn some new skills at first, but these will be far less volatile than in other arenas of development.

 

No matter your choice, take your time and do research before coming to a decision. There are many small niches where programmers are desperately needed; finding the one that’s right for you might be the key to your happiness.

 

Good luck!