
Ask HN: What other career choices can one do with CS degree? - scalatohaskell
I am really distasted with programming, after multitde of jobs, and multitude of contracts, I am hating my life. My work especially. I&#x27;ve programmed a lot since young age (12-13?), and I love functional programming. Sadly, there I&#x27;m not good enough to take some proper Haskell positions (since they are usually taken by great CS PhDs etc.), and thus I&#x27;m often stuck with OOP messes. Where I&#x27;m usually &quot;superstar&quot; (sorry for shitty expression) in team. And that&#x27;s very tiring...<p>I&#x27;d love to have something of my own, but I can&#x27;t find motivation to do it when I know the probability of it succeeding. I consulted some friends with their startups, and know enormous amount of effort they put it, and I haven&#x27;t seen single one do well.<p>I had done quite some opensource work, which was pretty fulfilling (mostly contributing to established projects), but it sadly doesn&#x27;t pay bills.<p>I was thinking of swapping careers. I have CS degree (that means decent math, ability to think etc...). What other careers are there, where I could utilize some of that knowledge, and not feel so burned out?<p>btw I have around 7years of professional programming experience...<p>btw2: I lift regularly weights, I am healthy, so work isn&#x27;t all life. I also tried meditation for over a month, while it wasn&#x27;t bad, it didn&#x27;t help me &quot;cure&quot; my frustration.
======
ThrustVectoring
As an employee-level programmer, you're generally not going to find meaningful
work. You're going to get handed messes, and in exchange for a paycheck you
hand back slightly less chaotic messes that do some more stuff.

Switching jobs probably isn't going to fill the frustration you feel. The vast
majority of jobs aren't meaningful. The ones that are don't pay particularly
well or have other quality of life issues - school teachers aren't well paid,
healthcare providers require vast amounts of training and work insane hours,
and the overwhelming majority of artists don't make it.

The solution is to have work be the thing you do for forty hours a week that
pays for the meaningful things you do in your life. _Go home after eight
hours_. If you have a partner and kids, spend time with them. If you don't,
consider getting them. Make some art in your spare time, or build side
projects that have meaning for you. Go dancing. Make music. Write a blog.
Write angry rants about how your work is meaningless. It really doesn't matter
much.

There's no shame in quietly building a happy little life for yourself. You
just don't hear about it too often because those folks are out being quietly
happy.

~~~
scalatohaskell
This is what I came to realize as well, and it's what frustrates me. I have
one of simplest job in the world (I see other people in other fields working
so hard, for much less money), and I can't manage it because I'm so bored and
frustrated). And that feeds back to even more frustration and unhappyness. I'd
hope that I can find some meaningful job. At least something that makes sense
a bit.

There's a lot of truth in what you write. Thanks. Problem is, I am extremely
goal oriented person. I need a carrot in front of me to chase - that's what
drives me and what makes me get up at bed. I used to do sports professional
when I was younger, and I was always obsessive about wining, up to putting
tremendous hours into it. My self-analysis, maybe completely wrong, is that I
carried it into my adult life, but can't find nothing meaningful to compete in
now.

~~~
taway_1212
Maybe try climbing the career (mgmt) ladder?

~~~
scalatohaskell
perhaps. I'm contracting now though, so it's impossible. I thought that maybe
if I get in -> fix/build stuff -> get out, it will be exciting enough.

------
mabbo
There's so much! I'm actually just now transitioning from a developer role to
a non-developer role.

For me, I'm moving to a role doing on-site installations of software that I
used to be a developer for. Travel all over, decent pay, get to go on-site (at
Amazon warehouses), and it requires technical skill without being a real
coding job. This is perfect for me.

The key is two things: first, stop looking down at non-dev jobs. They aren't
less, they aren't unworthy. Lots of devs I've met have a strange tendency to
think that way.

Second, figure out what motivates you. Think about what parts of your job
you've loved, and what made them so great. I doubt it was the part where you
wrote some lines of code. Think more higher level- what specifically about
that thing you were doing was it that made you want to get to work early and
stay late to finish it? The customers? The team? The business goals?

Once you know that, go looking for a job that has those things instead.

(And hey, that team I mention I'm joining might be hiring still if constant
travel and early mornings in the industrial end of town is up your alley :D )

~~~
scalatohaskell
Thanks, this lifted my spirits up a bit :)

------
sputknick
You sound like a great candidate for a Product Manager position. ITs about the
management of software systems, versus the code. You could be the person that
prevents those "OOP messes" from happening in the first place. I've been out
of college for 15 years, and I sometimes go years without writing code (I've
recently gotten back into it, not because I'm required to, but because I want
to). Its more about interfacing with executives, and users, and you have to
deal with budgets, and conflicting requirements, and limited resources, so
it's no walk in the park, but it is a different set of headaches from what you
are dealing with now. Even if it's only for a few months/years, I think you
are at the point in your career where it makes sense to diversify. When people
ask why you are looking for a different role, you don't have to be negative,
you can turn it into a positive: "I want to try something new, I want to get a
higher level view of how software is created".

------
joeclark77
How about picking a company that does something you'd love to be involved in
-- building rockets, brewing artisan beer, raising cattle on the western
prairie, etc. -- and go become their one-man IT department. I guarantee
there's a lot of great small companies out there that need help but can't find
it. The work may be a mix of the menial and the interesting, everything from
fixing printers to analyzing data in the ERP, but/and you get to be a part of
something that makes you want to get out of bed in the morning. Whatever that
may be.

~~~
scalatohaskell
That's actually great idea... How would I approach such companies, where do I
look for them? Any literature, book, courses on it? Thanks

~~~
toomuchtodo
Check out Relativity Space in LA. They're a an orbital vehicle startup, and
looking for a one man IT guy (DevOps/sysadmin/etc) with a manufacturing bent
(heavy emphasis on supporting a vehicle design team and lean manufacturing
using automated machining equipment).

~~~
scalatohaskell
Sounds great, but I'm in Europe :)

~~~
toomuchtodo
Darn! Was worth a shot.

~~~
eropple
Sounds kind of interesting, though. I might look them up--feel like making an
intro?

~~~
toomuchtodo
I've reached out to my contact there. If the position is still available I'll
setup an intro.

------
rb808
> thus I'm often stuck with OOP messes. Where I'm usually "superstar" (sorry
> for shitty expression) in team.

Maybe this is your problem. You should try not to be the team hero. Stick to
your little part of the app, do a good job and go home early. If the rest of
the team is screwing up - it isn't your job to fix.

~~~
scalatohaskell
problem is, it is (will be) my problem to fix. I don't want to be hero, but I
will get assigned to those places to fix it up. Because it worked before, and
managers were happy with my work before.

~~~
rb808
It sounds like you need to learn to say no- or at least negotiate what you
work on. If you hate it so much tell your boss - they'd prefer you happy and
working on something else rather than quitting.

~~~
scalatohaskell
that's actually good idea. I never considered negotiating this part. I thought
if they pay me...

I've been called "programmer-whore" by friends (in joking manner :) ). Because
I go in and fullfil wildest manager's dreams for money. Huh. Some truth to it
I guess.

I hope that expression is not too vurglar to use here... sorry I'm not native
English speaker.

~~~
rb808
Yeah it took me a long while to learn this.

If you're doing the work and not complaining managers will think you're happy.
If you're working overtime to get this done they'll think you're very happy.
If you aren't enjoying it you need to tell them. They aren't mind readers.

------
morgante
You might want to consider shooting for financial independence (see
[https://www.reddit.com/r/financialindependence/](https://www.reddit.com/r/financialindependence/)).

It might be a few years of grinding it out as a developer, but if you focus on
it then it could come pretty quickly.

Having a large cushion of savings makes it _much_ easier to find fulfilling
work. You can experiment with a startup if you want (and not worry so much
about it failing). You can try a lower-pay but high-impact career. You can
travel.

I'm nowhere near FI myself, but even the savings I do have made me feel much
more free.

Otherwise, look into adjacent careers. Product management, sales engineering,
and engineering management are all potential tracks to try.

~~~
scalatohaskell
Thanks. I'm actually buying a flat now, where all my savings go into. I plan
to rent it up if I dont end up living there (moving for job etc.), since flat
prices are going up and up drastically.

------
romanovcode
Technical product owner is the only one I can think of.

You could also be technical lead/CTO, however since you are big fan of
functional programming you will more likely push your preferences onto other
workers and they will hate you.

~~~
scalatohaskell
I've been told multiple times that people see me as a CTO later. Thing is, I'm
still pretty young, and I call it usually bullshit. I'm nowhere near CTO.
Maybe in 15 years.

I like to help, explain, prototype. Help understand frameworks etc.

~~~
romanovcode
Imposter syndrome. If you are skilled enough it doesn't matter much how young
you are.

~~~
eropple
To a degree, it does. I'm 29, and a big part of why I'm contracting/consulting
right now is because my resume is a decent bit more advanced than my hairline
is receded. There's some "look the part" involved.

~~~
UK-AL
In the startups arena in my area, i'm surprised when I see a CTO or CEO over
35 tbh.

Average seems 27/28

------
thehardsphere
You keep saying in comments all over the place that you think you're not smart
enough to pursue some of the other alternatives people are suggesting.

I think you need to get over that feeling somehow. You're obviously too smart
to do the work you're doing, because you're unhappy with it and it sounds like
you're not being challenged enough. Other people around you also say things
indicating that you are smart. Yet you seem to doubt your own smartness.
What's going on there?

~~~
scalatohaskell
You're onto something, perhaps there is little imposter syndrome, but I think
that suggestions such as CTO are little bit off :)

------
jeddawson
Just do something you love! It really doesn't matter what degree you have or
what your skill set is at the start. Passion to accomplish something or
contextual enjoyment will carry you through the low points. I have multiple
acquaintances that range for very to barely successful that have trusted their
gut and listened to their passion. They're all happy.

I should note that I'm not talking about founding something based on your
passion. One of my friends works at a bike shop and absolutely loves it. He's
had to adjust his living situation and lifestyle to match his income, but the
result is a happier human.

This certainly doesn't help you figure out a specific career, but my point is
that the possibilities are endless just trust your gut feelings!

~~~
scalatohaskell
Thank you. Now I have to figure out what it is :)

I always say that if I wasn't so good with computers I'd be a surgeon, haha.
That was my #nr2 plan, if I fail in CS.

------
runT1ME
So, there are Scala teams doing functional programming. Have you worked for
them and ended up not happy? It seems that it would be much easier to get good
enough to join the team you want and appreciates you than to switch careers.
Are you in the US?

~~~
scalatohaskell
There is functional programming and "functional programming". Nowadays people
would label anything as functional programming. I worked for many Scala teams,
and everything is super functional, but truth is the opposite. Most of people
don't know how for {} works in Scala or what functor is. Which is fine, no
hard feelings, I didn't know about it either couple years back. But at least
don't trademark your company as 100% functional codebase :/

I'm not in US, but Europe. Akka everywhere. If I have to debug one more akka
spaghetti system I might as well switch to Node.js.

edit: I know/follow you and your work. Kudos for everything and doing
functional Scala :)

edit2: I don't mean to insult Akka, it's great tool. It's just easy to misuse
(like anything), and people misuse it a lot. At least from my experience.

~~~
brianwawok
Having been on all sides of the fence..

It's not the language. Or the purity. No amount of changing the language you
code in will increase your happiness, past a month or two.

You either find fulfillment as a code monkey, or you don't. I don't find it
fulfilling, but I find starting a startup to be so. You have to pick for
yourself what makes you happy.

Brian

~~~
scalatohaskell
I'm not saying it's language, but I can tell you that I enjoy working on X
more than on Y.

I think code monkey is a bit pejorative, especially when programmers are
critical to many businesses :)

------
haskellandchill
We have very similar backgrounds and situations. I have a few slogans I
follow:

Pain is a tower, climb it. Wanting things is easy. Understanding is a luxury.

I expect to suffer but you may find a path without the darkness :)

------
hkmurakami
There are a small number of pure open source corporate positions out there
(RedHat, formerly at ATT Labs, etc.) that you might shoot for.

------
probably_wrong
You could become one of those "great CS PhDs". Salaries in Academia are
usually lower, but the work can be more rewarding.

~~~
scalatohaskell
My brother is quant physics PhD. Whenever I measure myself up to him, I
realize it's good I didn't pursue academia because I'm not smart enough. It's
insane how smart other people are.

~~~
tcpekin
Also quantum physics is about as gnarly as it gets. And not many people enter
PhD's knowing all they need at the end. I'm doing a PhD at what I would
consider a great school (Berkeley), and the quality still varies! People are
smart yes, there is somewhat of a baseline to get in, but (most of) the
smartest ones at the end have gotten there mostly through working hard, asking
lots of questions, and being curious. I've seen this happen with my cohort
over the past four years. Very few people came in where I thought they were
geniuses, but they have all learned and grown so much in their specialty. Even
if you're not the smartest one, a PhD can give you 4-7 (low) paid years of
freedom to research whatever you're interested in (this depends on group),
which is intellectually awesome. It's a process. You can always leave with a
masters as well, but if you're interested in some sort of CS problem or
engineering or science in general where CS is used for analysis (all of them),
I'm sure there's a group that would be a great fit.

------
45h34jh53k4j
I realise that infosec is a component of CS, but it is different enough to
day-to-day programming that you might find it interesting. Have you considered
application security or related fields?

If you have years of development experience helping younger developers learn
how to write secure code is a worthwhile endeavour.

Frustrations, I dont think you can detach that from CS!

~~~
scalatohaskell
I have for little bit. But I don't think I'm smart enough for it. Is it big
enough? I also don't see much job opportunities. I'm worried I'd just jump
from something I like and enjoy (Functional programming) but can't find job
in, into something similliar, that I won't be able to pay bills with.

I only hear of these 20yrs olds catching awesome bugs, and thinking that it's
awesome for them, but it feels like I missed out on it a bit.

But it is good idea. To be honest I considered DBA... it seemed to be more
sensible lol... I actually enjoyed working with Posgres, tuning it etc...

~~~
086421357909764
It's beyond big enough and with the right talent the pay is going through the
roof. It's only going to grow. Take a stab at it, doesn't hurt exploring the
option.

~~~
scalatohaskell
I will definitely explore it. Thank you. That's a kickass suggestion.

------
spectrum1234
Consider other types of engineering. Given you have a CS degree maybe try to
slide into EE.

As someone coming from the business world and getting into tech I gotta say
its hard to take any non CS or engineering roles seriously. They just aren't
of the same calibre.

------
eru
Shoot me an email (address is in my profile), if you want help with getting a
Haskell or OCaml job. I've managed to do 3 out of 4 jobs so far in either
language. (And the odd one out was for Google.)

I don't have a degree even.

~~~
jkufg
Bigg job

~~~
eru
?

------
PaulFB
work on getting better at Haskell, and on making it more sucessful so there
are more jobs using Haskell. See Edward Kmett's talks on failing at
understanding Haskell 5 or 6 times (years). See Neil Mitchell's talk of drive-
bye contributing to Haskell.

------
SirLJ
Check quantitative stock market trading, it is great location independent life
style business and you don't have to spend one single cent on the market
before developing working trading system, so the barrier for entry is pretty
low...

~~~
scalatohaskell
I spoke to some people about it and they said that it's over. That trading is
no longer viable since it's saturated with bots. Can you point me to some
direction, please?

~~~
SirLJ
No sure what is over, I have a "bot" and I am finding it very successful,
would recommend getting some data and the following book and start building
with python

Mike Covel Trend Following, 5th Edition: How to Make a Fortune in Bull, Bear
and Black Swan Markets

------
lmuench
Have you tried Elixir?

~~~
scalatohaskell
Actually I have. Both Elixir and Erlang. I find it way harder to manage in
dynamic langs than in static ones. Up to point I'd always pick static instead
of dynamic.

If I see some OOP madness, in statically typed lang, I remember how bad it can
be in dynamic one.

Dont take it the wrong way. I know a lot of programmers, personally, which are
dynamic programming fans, are and kickass coders. But it doesn't work for me.

