Ask HN: I’m not cut out to be a programmer. What are my alternatives?

68 points by throwaway_acct ↗ HN
I’m not a programmer. As in, I’m pretty certain this is the wrong career for me.

I’m in my early twenties. I'm a coder at a great software company. The company is successful, growing, and treats its staff well. They pay well. I have stock options. No pointy-haired bosses. Thing is, I don’t like it. I’m bored.

At school I was always good at math and science. And I loved computers; I loved building them from components, customising Linuxs, but never really programmed in my spare time. I got into a good school for college, found the programming course options pretty easy, and majored in Computer Science. So the default choice was a programmer, right? Well, one year out of College, I’ve realised; it's not what I want to do.

"If today was the last day of your life, would you want to do what you're about to do today?" -- Steve Jobs

I can’t help but think - is this it? I get up, and go to the same old desk, and write some stupid code. Whatever.

I love technology. But coding just doesn’t exite me. I could never get worked up about the subtle nuances of programming languages. I’m definitely not the sort to learn Haskell or Erlang in my spare time. Hell, or even code at all in my spare time. I just enjoy playing with the latest Apple product, watching TV, and reading Hacker News. What kind of life is that?

Should I quit? I make way more money than any of my non-coder friends, and that would be really hard to give up. I know there must be something more fulfilling out there. I have other, less geeky, hobbies and interests outside of tech, that I’ve let fall by the wayside. Perhaps I could combine the two into some sort of startup? I've also better social skills than the average coder (not bragging, just true, many coders can be quite socially inept), and I wouldn’t want this talent go to waste . Starting a company seems like the obvious answer, except, I’m scared, and I don’t have any good ideas.

So, HN, any suggestions?

70 comments

[ 3.7 ms ] story [ 112 ms ] thread
Sounds like you should just start with some consulting with someone with some bizdev/marketing chops and work with some cool companies. From there you can always stumble onto a good idea.
When I was about your age I went through a similar conundrum. I quit coding, and started to learn graphic design to become somewhat successful at this new endeavor. Would I do it again if I had the chance? Hell no! Sure I love to have had a visual education, but that wasn't enough to keep me from getting bored. What did I do? I've started to code again. But this time, instead of doing boring business coding as I did before, I went to do graphics programming. Now I have much more fun. What should you do? In my experience don't be blind and quit coding to do something else. I guess my advice is this: don't take myopic decisions; instead, take what you know, and mix it with what you like to reinvent yourself. Just learn a new craft and try to merge that to programming.
Stick with coding. Reasons being:

- Most jobs are boring, especially after the first couple of years.

- Don't underestimate the importance of good pay.

- It doesn't sound like you have anything better in mind to do instead.

Stick with it. After your first year, if you're any good (and you should be if University level stuff was easy and you did well) some interesting work should start to come your way.

I'd go with some consulting. I personally found that working with developers all day doesn't do it for me (I did it for 3 1/2 years).

Of the people that I really enjoyed working with the most, a common theme emerged. They all had a background in customer facing consulting type roles. So I gave it a try... real customers with real problems that my programming/software design/architecture skills can solve, that's working for me right now. Sure, I still work with developers daily, and at some points in the project, I work as a developer. Mostly though I all sorts!

If you pick up other specialties, enjoy hardware and enjoy the larger view, go for systems engineering.
You aren't bored from coding. You're bored from what you are (or aren't) making with code. You're not seeing accomplishments from the time you're investing, so your brain is moving on. I'm the same way.

You need to find a project that lights your fire. Code is just a tool, and it alone will not keep you going. I don't know anyone who likes to code for the sake of writing code. Find something that you can use your tools on that are exciting to you. Find purpose.

Well said, I feel completely the same way. At the start, I just wanted to build things. Then I wanted to be good at coding for the sake of being good... and I got bored fast. Now I just want to build things again :) this took the best part of four years to figure out, though.
This is true. Coding isn't necessarily the fun part (though you certainly should not dislike it) - it's what you create with your code that I find to be motivating. Hopefully solving some relatively complex problems along the way. And then seeing people use the final product? Now that is a pretty cool feeling.
"I don't know anyone who likes to code for the sake of writing code."

I have a different perspective to offer. I found that for a fair few years in my teens, I loved writing code for the sake of writing code. Any project would do, and it didn't even matter if I finished it, I just loved writing the code.

I don't think the fact that I failed to finish most projects impeded my learning much. I learnt an unbelievable amount, and didn't even realise it because I was having so much fun.

"I just enjoy playing with the latest Apple product, watching TV, and reading Hacker News. What kind of life is that?"

What about becoming a tech journalist/blogger/analyst?

Before giving you specific advice, there are a few general principles:

1. Happiness at work frequently has more to do with your circumstances at work than with what you do at work. The three major factors are Freedom, Mastery, and Purpose.

2. Unhappiness at work can usually be traced to missing one or more of those factors. You want to identify which ones you're missing, and come up with a plan to gain them without sacrificing the others. One major mistake people make is to make a career change that, e.g., gives them more Freedom but takes away the learning opportunities needed for Mastery.

3. Generally speaking, Freedom and Mastery are functions of how long you've been at a job. You get better at your work and gain more autonomy the longer you stay in a specific field. Purpose is usually a function of company culture. So if you feel like your company is doing great things and you're learning fast but the job is too restrictive, the best option is usually to stick it out and "pay your dues" until you have more autonomy. If you feel like you have plenty of autonomy and are good at what you do but your company is evil, then it's time to join something else.

So of those three factors, what does your current job give you, and what does it fail to provide?

For more on this topic, see self-determination theory: http://en.wikipedia.org/wiki/Self-determination_theory

I found the Flow book a much better "happiness model" than what you describe. It is less strict and concise, but gives the reader a lot of room for his own thoughts. Such simplifications make thing worse, (n-rules guides toward improvement,etc.) he really should discover his own way.
Flow is great, but it's a very different concept from happiness at work. Flow refers to one specific mental state, and different people want different amounts of flow in their lives. But it's completely possible to be passionate about what you do and love your life without ever experiencing flow.

I agree that oversimplifying can make things worse. There are really dangerous simplifications out there, such as "just follow your passion!" or "do what you love and the money will follow." But Self-Determination Theory[1] is a well-developed field backed by research and experimentation-not something pulled out of thin air like most happiness advice.

[1]: http://en.wikipedia.org/wiki/Self-determination_theory

I don't think Satvik realizes that he's actually talking about self-determination theory.

http://en.wikipedia.org/wiki/Self-determination_theory

Autonomy, Competence, Relatedness.

You're right, I was talking about Self Determination Theory. I just wanted to spend my post directly addressing the OP's concerns as much as possible, rather than write several extra paragraphs explaining the theory. "Freedom, Mastery, and Purpose" are also common terms used to explain SDT outside the Psychology community, even though they're not exactly the same as Autonomy, Competence, and Relatedness.
> Happiness at work frequently has more to do with your circumstances at work than with what you do at work.

It's not just work, but the rest of your life. This is something glossed over by a lot of people, particularly in the HN demographic. But I'd look at engagement with family, non-technical hobbies and interests, health and fitness, relationships, community, travel and vacation, and the like.

Work does matter, but it's only a part of the puzzle. The advantage of additional anchors outside the office is that these are often areas in which you have more control. You can be self-directed and cannot be fired in your hobbies, interests, and health (though relationships can and do end unpleasantly at times).

My suggestion is to provide more bases for your self-worth and engagement.

Aren't you guys kind of ignoring his question? He didn't say that he's unhappy with his life and wants to quit his job, he said he doesn't want to be a programmer anymore and needs help figuring out what to do next. People spend a majority of their waking life at work, they should be doing something they enjoy.

I went through something similar a few years ago. I didn't get a computer science degree but fell into programming on my own because I picked it up easily, but I didn't want to spend the rest of my life being a programmer and I saw that I didn't identify with other programmers that loved their jobs. I've always done some design with programming, worked around a lot of designers, and eventually switched to becoming an interaction designer (which allows me to be analytical with my work but spend a limited amount of time in code).

If there's a way for you to try something else at your current job, don't be afraid to talk to your boss and your peers about it. I thought I would get a lot of flack for not wanting to do the job I was hired for, but everyone in my company was extremely supportive. If you're a good employee, you can be as good doing something else and people want to be supportive of that (and keep you, no matter what you do).

Your background in coding and understanding of technology is a boon to you in many different areas of the technology field.

You say you enjoy 'playing with the latest Apple product, watching TV and reading HackerNews'. Unfortunately, I don't think you're going to find a job where those are the qualifications. However, dig deeper and you might find something.

Unfortunately, you haven't really told us enough to help you find where you fit, but look at the different jobs within your company, and maybe ask if you can shadow a few people for a day or so. Spend some time in Marketing, Finance, etc. etc. The non-programming roles that require an understanding or programming are often in Product/Project Management.

When I was 20, I was fortunate enough to work for a large company and they would ask me to join different teams about twice a year. So within a few years I had experience in Retail (in-store, warehousing and purchasing), finance, customer service, sales, marketing, PR, event management, product development (non-tech), and finally IT.

I don't think enough people spend time learning about the other careers within the company they work for, and miss out on finding something more suitable for them.

+1 to Pete's answer.

Since you are technical & have social skills, you might want to focus on trying out "hybrid" roles (e.g. growth hacker).

> Spend some time in Marketing, Finance, etc. etc. The non-programming roles that require an understanding or programming are often in Product/Project Management.

If you want to stay in a technology related field, just not programming, I think this is the right thing to do. Talk to your boss and explain your stance. As a company, they are probably more willing to keep employees because you already understand the products, processes, and the people you work with, and you would offer a good point of view in a new department.

Some options could be developing or giving training, high level support, sys admin, db admin, product management, project management, marketing, sales, etc.

If you don't want to stay with the same company, it might be difficult to convince another company of a career change without experience in it.

The first couple years are either boring or terrifying for many people once they hit professional programming. Give it a few more and concentrate on saving money.
If money wasn't a consideration, what would you spend your life doing?
This question assumes that people have some sort of innate passion or obscure talent that they wish to pursue, which is not always the case. For instance, I have no objectives in life other than to maximize income and leisure, and to pursue ends that necessitate said money. If I did not need money, I would sit home all day drinking coffee and reading voraciously. I think many other people have similar desires. Not everyone is happy pursuing some arcane dream for little-to-no money.
I'd suggest you consider product management. At the right company, product management is a good overlap in the venn diagram of "thinking up cool stuff", "tradeoffs & problem solving" -- ideally with exactly the kind of technical insight it sounds like you have -- and "making shit happen".

Given your lack of inspiration, I'd strongly suggest not starting a company just yet. Wait until it's a calling.

If you pick a company who makes products that interest you, that seems like a win. Ideally one where you can get some mentorship in product management as well.

About a decade ago, I had a QA job that I hated and that made me hate my life. Like you, I also didn't have any good ideas about what I could do instead. In fact, I felt kind of trapped, because I wasn't sure I was capable of doing anything else. It was a black-box QA job, and I'm not the sort of person who writes code in my free time, so the skills I'd acquired in college atrophied and I didn't feel like I had anything to offer employers anymore. I was depressed and scared about my future.

Around that time, my manager's manager bought a copy of a book called _Now, Discover Your Strengths_ for everyone on his team. That book changed my life forever. The current edition is called "StrengthsFinder 2.0": http://www.strengthsfinder.com/home.aspx

What taking the StrengthsFinder inventory did for me:

- It helped me understand my personal talents better than I had ever understood them before, and it encouraged me to develop them into strengths. Prior to reading the book, I had focused on being "well-rounded". This was very eye-opening for me and it completely changed my attitude about my career.

- It encouraged me to find ways to play to my strengths in the job I hated, with the goal of finding a way to enjoy it more.

- When that didn't pan out, it gave me the courage to start looking for roles that might suit me better.

To make a long story short, since then I obtained a graduate degree that would help me develop the talents the StrengthsFinder identified, and I've had two quite different roles that both played very well to my strengths, to the point where I would call them dream jobs. It's difficult to describe just how much happier I am now than I was ten years ago.

In short, if you are looking for ideas, consider the StrengthsFinder. It seriously pulled me out of a rut, and I've seen it do the same for others as well.

As for the question about whether you should quit... consider sticking with it until you figure out what else you want to do. I didn't stay in the QA job I hated, but I did stick with QA while I was working on my Masters because it paid the bills.

+1 on Strength's Finder. It is an amazing concept for finding out the words to describe what you already know: those things you love doing where you start something, then look up an 6 hours have passed by. My company has everyone do it and even sponsors a couples course to bring in the significant other of employees to take it. Does wonders for marriages too. good luck!
+1 to your +1. Strengths Finder was eye-opening for me. It clearly identified some areas to explore that well suit my intellectual curiosity, in a way I haven't thought of before. Mind you, I haven't done anything with this knowledge, but at least I know what I'm not doing now!
+1^3. I worked for Gallup for several years. There were regular discussions about your strengths and how you could be approaching tasks/coworkers using your strengths and theirs. These conversations were insightful and spot on, made working there a pleasure.
You might want to try support at your company for a period of time. It sounds like your company may be agreeable to it, and it's easier than you might think.

After communicating with users for a length of time, you might find that you're passionate about it. You may also respark your love of building things, now that you've interacted with users. You could also find that you hate support and user interaction -- figuring out what you _don't like_ is just as important.

Try product management. If you can understand both people AND tech aspects of making software products, you'll be golden there.
+1 on this one. The best product managers I've ever met were former engineers who were good developers, but wanted something broader. That background (and a true love of technology) will make you a stellar product manager. But, be sure you really love the technology industry and are ready to give up day-to-day coding.

Product management, when done right, complements development and is a great career path for well-rounded individuals.

-1 On becoming a PM. There's thousands of people who faked their way into developer jobs. Then they saw it's a lot easier to not have to deliver anything and decided they were going to be people persons.

Not being a developer is prime evidence that a person is NOT a good developer. Everybody who tries to make this play claims they're a good developer that moved on but kept their skills. 90% of the time they didn't have the skill to begin with. There are people in PM roles claiming to be developers that, at least on paper, wrote code for literally six months.

That's true; there are lots of different paths people can take into PM, and you'll find all types.

Like engineers, there is such a thing as a 10x product manager. I hope everyone at some point gets to work with an outstanding product manager.

Maybe the original poster will make an outstanding product manager. It's certainly worth exploring.

How would anyone be a 10x PM? Do they 'leader' real hard or go to 10x the number of meetings? I was just reading something about what makes a good PM, and one of the items was similar to 'shows leadership in funding projects.' Virtually every measure of a PM is just business doublespeak about leadership or something that the PM does not actually do like 'shows technical leadership in shipping software.'
Have you thought about moving to the sales side of the business? I would suggest pursuing a sales engineering position. You get the best of both world- technology and meeting new prospects/customers.
I've had that thought about going to the same old desk writing stupid code... typically just making rich companies richer and not making the world a better place in any way. Totally unfulfilling. BUT.... there's a difference between not liking that and not liking coding.

If you were to work on a coding project that was filled with interesting problems, and fulfilled some core value of yours (maybe making the world better in a way you care about) would you still say you don't care about coding? If so, then yeah, look for something else... If not, then the answer is simple. Find a new job that's inline with your needs or start your own company.

In high school, I did all kinds of fun projects for the heck of it.

Today, what I do is basically just for me because I'm in prison.

To understand me, imagine you die and go to heaven. You have a computer, but only you can use the programs you write. You have all the time in the world. You could do great things. You don't have to bother with documentation or compatibility. That's kinda sad. You write documentation just for pretend, like you had users. Once in a while, you get a half hearted urge to write something. Mostly it's heart breaking depressing -- you've made a party and invited guests but nobody shows up, so you invite homeless people.

God rewards based on work, even unproductive work. It is not crazy to work just for God to pay you, though reason says nothing happens. Some shit is nasty hard labor. AC97 might qualify. I have the earlier generation (PC Speaker)and the next generation (HD Audio) but not the AC97 generation. My HD Audio works more or less on my machine but not in VMWare. I made a wirewrap D-2-A/A-2-D ISA card on the side when in school, so I got the thrill of speakers, microphones and digital noise. It has zero fascination, for me now. I've done filtering, FFTs, DSP to my hearts content.

I did stepper motor controllers and robots to my hearts content.

I've had a lot of fun over the years.

(comment deleted)
Have you considered consulting? More high level, less in the weeds. Accenture, etc, look for people with technical backgrounds, you might look into it.
As someone who recently moved into consulting more seriously, I second this. I'm absolutely in love with consulting right now. It can be as challenging as you want it to be, and at the same time you get to live outside most of the rules and bureaucracy of the companies that you work for. As an example, I work for companies that don't allow employees to work remote, but I've never even been to the office. Also, when I worked for companies in the past on a full-time basis, it was very difficult to have any recourse when coworkers didn't meet our internal agreements. As a consultant there is usually a legally binding contract sitting in between me and the company I'm working for. This allows me to hold internal employees accountable for their deliverables just as much as I am accountable for mine.
Take some of your developer pay, pack y'er bags, and start looking for your place in society.

In my experience working 9 a 5 job makes you numb, in one way or the other. Comfort-zone's a bitch.

Start living frugal, read less HN (start writing), try making things with physical components, and work out. Endorphins do unexpected things to your mind.

If your not happy now, make small adjustments till you find yourself happy with the new situation. And then; disrupt.

There is no answer to happiness. Find the philosophy that works for you; live it.

(comment deleted)
If processes and organization is something you would consider interesting, try the management path. You can either stay more on the technical side (sw/solutions architect) or go towards business (concentrate on req. management/business problems).
"Life without enquiry is not worth living for a man", think that's Socrates.

Good luck, I remember doing a 3 months internship at Agilent Tech yeeaaaarrss ago where at the end I was like - "No way am i ever working in this Dilbert socially backwards environment" Not to say it was a bad place, just not for me.

Since then, I've had 6 or 7 real jobs, in 4 or 5 different industries, travelled round the world, asked loads of questions, tried loads of things and still not satisfied.

It's a tough one, everybody's different and very few people figure 'it' out, hence why you most advice is stupidly simple, short and unhelpful like 'be yourself', 'do what you love', etc... the list goes on.

'Wear sunscreen' https://www.youtube.com/watch?v=sTJ7AzBIJoI

there is a good line in there

"Don't feel guilty if you don't know what you want to do with your life. The most interesting people I know didn't know at 22 what they wanted to do with their lives, some of the most interesting 40 year olds I know still don't."

My 2 cents:

- try everything while still young and while your responsibilities are small, and monthly nut is small. It's much more difficult to have a mid life crisis when you need $4000 a month for mortgages, cars and kids.

- don't chase the $$$ - you'll never be as good as the guy who's doing it cause he loves it

- most people aren't satisfied with what they do, which is why books by Tim Ferris and Chris Guillebeau sell so well, they sell the 'dream'

- as far as happiness... others have already said this, purpose tends to help, as well as self expression, the ability to create something is pretty fulfilling too

- ignorance is bliss

when you said "enjoy playing with the latest Apple product, watching TV":

I'd suggest trying out UX Design / Front End Development

UX Design is becoming more and more important, and so is front end development as browsers are getting faster and faster.

Apple has amazing user design, maybe that's what you love about their products, how they feel.

- get good at javascript / html / css

- build a few things in backbone.js

- dig into user design

- redesign some current applications into what you'd like them to look and feel like

http://www.hongkiat.com/blog/concept-design-facelift-notable...

- build a UX / front end portfolio

- watch these talks

http://www.smashingmagazine.com/2012/12/22/talks-to-help-you...

http://uxdesign.smashingmagazine.com/

http://www.alistapart.com/

http://en.wikipedia.org/wiki/User_experience_design

GOOD LUCK :D

Starting -- actually, building and running -- a company isn't for everyone. It's hard; at times, soul-crushing, ego-killing, depressingly, hopelessly hard. Sometimes it's also wonderful and glorious and fantastic. But, starting and running a company is probably best left to those who are absolutely determined to do so, IMO.

Do you have any idea of what general fields you're interested in? There are still a ton of fields that can benefit from people with strong technical skills that can also get along with other people.