How do you know if you would love a programming career?
Hi, I'm currently a student considering a major in computer science. I love programming and have done it since I was a child (literally child, started in 5th grade) but I recently applied and started working at a start-up company and have been hating it.
I can't tell if this is because I am in an odd job or that I am just not cut out for a career in programming. So I wanted to know what was it that propelled people into their jobs and how they knew that they loved it. #programming #computer-programmer
5 answers
Daniel’s Answer
I love programming
^ That right there.
Startup life is different from most of industry. Typically - longer work hours, less pay, potential for high payoff (but very unlikely), but then also often more freedom and influence compared to a larger company. You get to move faster.
It's entirely possible that there's other parts about your company you just don't like, vs the actual programming career part of it. If you actually do enjoy building software and getting things to work, even while on the job, then it may just be the company you don't like, not the whole industry. Hard to say without knowing specifically what you don't like about your current role.
Eric’s Answer
Hi! I know this is a while after you asked the question, but I had some things I wanted to add.
To start with, loving programming and having done it (and stuck with it, despite the frustrations!) since you were little says a lot and definitely suggests that you would love a programming career.
It isn't certain, of course. Some people talk about how you shouldn't make your hobby into a career, because then it will stop being fun. And, apparently, some people do succeed as programmers without loving programming. Honestly, though, while I encourage everyone, I can't understand those people. I program as a career because I love it, and that hasn't diminished it as a hobby at all for me.
One thing that does make it hard is, as Daniel says, it could just be the particular company. There are many different kinds of companies that use software, and their culture, standards, and approaches can have as much if not more effect on whether you like working for them as whether you like the programming itself.
Think about what it is in particular that you don't like.
If you don't like thinking about problems and how to express them to a computer, then you probably shouldn't go into a programming career.
If you don't like thinking about the particular problems you are working on, maybe you just don't like what the current company is doing. It can be valuable, at times, to use a company you don't particularly like as a stepping stone, but if you can avoid doing that, you'll likely be much happier, and more effective (and being more effective is good for your career in general). Relatedly, consider that there are software companies, and there are companies that use software. Perhaps you will find that you don't really care about making the Next Great Social Media App, but you do care about writing a web page for a charity about a cause you believe in. Finding places to do that can be a little bit trickier because they are less likely to have big recruiting machines for finding college students who are programmers like software companies, but the option definitely exists.
If you don't like approaches your company uses, be it language, structure or lack thereof, or more specific things, then if anything I would guess that means you're particularly well-suited to being in a programming career, and you already have some of the opinions our profession is known for.
There are surely other technical reasons you might not like your current company but like programming as a career in general. It can be very useful to ask people who work in software in other companies (even here, on CareerVillage!) whether particular things you dislike are common across the industry. For example, a friend of mine recently asked if I am frequently called outside of work hours to fix my coworker's mistakes. That has been happening to him, at his company, and he wanted to know if that was just normal and he should expect it as a software engineer. It is not at all normal for me, and so when I told him that, he strongly considered leaving the current company. But if he hadn't asked, he might have gone on thinking that was normal! This especially goes for working hours. I work about 40 hours a week, as in 8 hours a day, M-F, but I frequently take long lunch breaks and otherwise don't feel very pressured regarding time. I've heard of startups working 80-hour weeks or more, which definitely is not universal for software engineering.
Finally, and this is a sensitive issue but one that is important to bring up. Not all software companies are equally welcoming to all people. This is a big shame and something that hopefully the tech industry will be improving on, but while that is in process, it's important to take care of yourself. There are some organizations for people supporting and advising each other which can also be helpful. Two I have heard pointed out which may be relevant for you (but I cannot check out myself, of course) are http://systers.org/mailman/listinfo/systers and http://witchat.github.io/
I know this was long. I hope it helps! And I hope you stick with your love of programming, in whatever form that takes.
Brock’s Answer
Programming is a need in all sorts of industries. Try programming in another type of organization or industry; look for elements of those opportunities that will speak to the reasons you got into programming in the first place. Just because one place didn't work out doesn't mean another won't.
Nir’s Answer
Some corporate jobs as software engineers are very light. You work 9-5 and work as hard or not as hard as you want, completing a more defined set of tasks. As a result there is a lot less pressure and stress but you can still achieve great technical work.
It really depends on the person on which they want to work in but if a startup is not turning your gears, I highly recommend trying working for a large corporation. Salesforce for example, has excellent work culture than doesn't put enormous stress on their engineers while still having very fulfilling work and good pay. Might be worth looking into as an example.