
Ask HN: Programming jobs for the mathematically inclined. - livemyownlife
I just finished an undergraduate degree in mathematics. I can program well and have work experience in web development (...ugh) and scientific/numerical computing. I'm looking for some direction:<p>* What sort of jobs allow me to combine math and programming? Where are they located? (I'm in the US)<p>* Should I pursue a graduate degree before I try to enter industry? If so, is it okay to continue in pure mathematics, or should I move toward applied mathematics, statistics, or computer science instead?
======
codeonfire
If you want to do any sort of scientific programming you will need to obtain a
PhD and then land a job at a research lab, university, or boutique software
company. These jobs are all over but you will probably have to fight hard to
get one and then fight even harder to keep it and get your project funded.
Even scientists in top national laboratories probably constantly worry about
funding.

An alternate route is to start a company around a new software product. If you
manage to find a scientific programming job at an existing company and that
job is not protected from the non-technical business in some way, your project
will be in constant jeopardy.

As for field, you will have to determine what type of work you want to do. I
would suggest reading some academic papers on the type of work you would like
to do and then look at the path that the authors followed. You can also
contact the authors and express an interest. They will probably point you
towards an exploitative grad student job making 15-20k / year, but you will
probably get to do some sort of scientific programming.

~~~
achompas
This is the best description I've read here so far. Scientific programming is
ultimately a "niche" task, and there's a limited number of areas where this
work happens (startup hubs, sure, but otherwise its research institutions,
financial companies, or bust).

The best analogy I can think of is a tenure-track professorship. As a
scientific programmer you are a complimentary good to advanced research;
please remember that advanced research only happens in a few places across the
world.

------
skadamat
Don't get a grad degree just yet. Try a Data Engineering job (or also a
software engineering job at a data-centric startup). You'd use a lot of
algorithms, machine learning, and math to do all kinds of fun stuff with data.
The new position is called 'Data Scientist' these days - I would use LinkedIn
/ Indeed.com to look for jobs with the title 'Data Scientist'

Here are some off the top of my head that are looking for mathy programmers:

Startups: Infochimps Lookout Mobile Factual Zillabyte Chart.io KhanAcademy

Corps: LinkedIn Google etc, you should be able to at least land interviews at
the big tech corps, but I"ll guarantee you'll have a lot more fun at startups

I think you should get some industry experience before going off into a pure
math PhD / grad degree. You could also consider doing a Master's in Statistics
or Economics, both are which are super appealing these days - not sure how
much you like applied math over pure math though!

~~~
achompas
I agreed with this post up to the point where you recommend a Masters in
either statistics or economics. As a former econ student/researcher, I can say
that you _should not get a MS in economics or statistics if you want to do
scientific computing!_

1\. Both are too domain-specific, and they usually lack the technical (coding)
rigor you want if you're dropping lots of $$ on a grad degree. There are
exceptions -- the statsmodels.py team, for example, includes an econ guy from
American University -- but they're exceptions, not rules.

2\. At best, either degree will get you experience in MATLAB/SAS/Stata, which
are used for data analysis. This is not scientific computing, where you'll
have to convert slow models to C/C++/Java etc.

Instead, if you're set on coding I would suggest a Masters in applied math or
a Masters in CS with a focus on topics related to stats/ML and large-scale
analysis (Bayesian inference and graphical models, sure, but don't ignore
classes in numerical methods or distributed computing).

------
mchannon
There are all sorts of overlaps with math and programming that take place in
industry but usually they involve other disciplines as well (physics, chemical
engineering, biology, materials science, electrical engineering, the list goes
on).

The old adage about advanced degrees earning more money still carries some
truth; I'd imagine this is especially true for a B.S. Math. Unless you want to
be a math professor, I'd consider a lateral to another field as you go for a
M.S. or Ph.D., even if it requires a couple of extra years to get the
formative coursework in.

I think all of us can appreciate that any useful software product will benefit
not only from good programming skills but difficult math problems that crop up
unexpectedly.

Path A: Graduate school, troll job sites for a steady 9-5 someplace far away
from where you are now.

Path B: Troll job sites for a steady 9-5 someplace far away from where you are
now.

Path C: Leverage your ability to live like a student and start your own math-
intensive software startup.

There is no right answer.

------
impendia
Check out the Research Triangle Institute, in Durham, NC:

<http://www.rti.org/>

