Finding a job in machine learning
Adivce on Fining an Academic Job
Academic Job listings
- Chronicle for Higher Education (Click on "Sci / Tech / Math", then click on "CS / Tech".)
- ACM (Click "View Jobs", then click "Job Type", then click "Academic -- College and University".)
- Computing Research Association
- Academic Jobs Online (Click on "...as job application", then "job list", then "Select a discipline", then "computer science")
- Inside Higher Ed
- EZ Faculty Search
- Academic Careers.com
- Sign up for the Google ML-news discussion group . Job openings in ML are periodically posted there.
- KD Nuggets has a page that lists job openings in data mining .
- Math Jobs
- Glass Door
Post-Doc and research scientist listings
- http://jobs.phds.org/computer-science-jobs and http://jobs.phds.org/data-mining-jobs and http://jobs.phds.org/machine-learning-jobs
- General Electric
- Amazon or Here
- NEC Labs
- RSA Laboratories (does fraud detection)
- Click here , then click on "Academic Members" for a list of universities that probably have a Ph.D. program in computer science.
- List of liberal arts colleges in the U.S.
- See salaries of public employees (including professors at U of U, USU, and SUU) in Utah (Be careful because these include other incentive not just salaries).
- Lots of stats about salaries, number of faculty openings, number of Ph.D. graduates, etc.
Some Starting Salaries
To help give you an idea of how much you can get paid based on your job. Remember that these are only salaries and do not include anything with retirement or startup packages. In most academic jobs it is expected that you supplement your income with grants. Of course, the cost of living and other perks need to be taken into account. For example, non-academics institutions will give year-end bonuses. The Bonuses are typically greater in industry than they are in research labs. Here are samples from offers for previous people in the lab whether they took them or were just offered with a PHD:
- $90,000/9 months University of Arkansas
- ~$85,000/year BYU-Idaho
- ~$80,000/9 months Montana State University
- $70,000/8 months Utah Valley University + 14% retirement package that vests immediately
- $75,000/year @ Qualtrics as a programmer (he probably could have gotten more had he bartered)
- $125,000/year @ Vivint as a data scientist
- ~$73K for 9 months at Western Washington. Probably the median for a Master's granting institution. Plus they have summer income if you choose to teach.
- ~116K/year @ Sandia National Labs
- 112,200/year @ MIT Lincoln Labs (Compared with Sandia it is a lower starting salary and a higher cost of living--but there are other perks, for example, being associated with MIT)
- 100,000-130,000/yr InsideSales.com as a research scientist.
- 85k/9 months Northern Illinois University
- 95k/9 months at Idaho State University (I think that they were offering a high salary due to the location and requiring re-creating the CS department)
For a bachelor's degree, here is what you could expect:
- 75,000 @ Xactware
For some internships, here is what you could expect:
- $18/hr @ Family Search (Masters)
- $5000/month @ Lawrence Livermore (Masters)
- $30/hr @ Ancestry.com (Masters)
- $30/hr @ Vivint (As a data scientist)
- $33/hr @ Sandia National Labs as a Master's student
Stuff I wish someone had told me sooner
- I divide ML jobs into the following categories. (I do not claim to have a correct understanding of these categories. This is just how I see it right now. Please correct me if I am wrong. This is a wiki.)
- Software Development Engineer (a.k.a. Code Monkey). You will solve the problems that are assigned to you by your manager. You will derive satisfaction from solving them in your own way, and in doing a good job. Because you have a Ph.D., you will make a 6-digit salary, and then some. You will never publish again, and you will never be able to switch to academics.
- Industrial Researcher. You will do research full-time and publish in top journals and conferences, but you will not have to teach. Your research must be on a topic guided by the interests of your company, but otherwise you are free to do research in your own way. These positions are very prestigious. You will need 12-20 pubs to get an interview. You will often be pressured to become a code monkey, and your pay will be significantly less than it would be if you would consent to become a development engineer.
- Government Researcher. You will start with "post-doc" status, but this really just means you are under a probationary period. Your compensation as a post-doc will be about the same as an assistant-professor at a Teaching and Research University. After a couple of years, if they like you, you will be hired as a researcher. This is rather-like tenure. You will be paid as much as an associate professor. Unfortunately, you can only publish in classified conferences and journals, so you are pretty-much locked into government research for life.
- Ivy league University. Be very careful with these. They often maintain their status by being cruel to junior faculty. That is, they dangle tenure in front of them to make them run faster, then pull it away claiming lack of funding. They pit junior faculty against each other in dog-fights for tenure, etc. If you get tenure at an ivy league, your will be very well compensated for life.
- Top research universities. These are often named "University of XXX" (but not all universities named that way are top research universities). You will probably need 10-15 pubs to get a job at one of these. The competition for these positions is very intense. Your research will be the primary focus of their job interview. You should hire a post-doc or two as soon as possible after you start to help you achieve your tenure requirements. Tenure requirements might include 7 top-tier pubs in six years. You will teach 2-3 courses (6-9 credit hours) per year as a junior faculty member, and spend the rest of your time writing grant proposals and guiding your post-docs who do your research. Your starting compensation package, including the part supplemented by your grants, will be competitive or better than what you would get as a code-monkey in industry.
- Research and Teaching University. These are often named "XXX State University". You will probably need 6-9 pubs to get a job at one of these. You will have to teach 4-5 courses (12-15 credit hours) per year as a junior faculty member. Research is significantly more difficult at these institutions because: 1- You have much less time due to your teaching, 2- It is harder to get a grant at the less-prestigious institution, 3- Post-docs don't want to work for you, and 4- Your graduate students are less ambitious. Tenure requirements might include 3 top-tier pubs in six years. Your compensation package will be significantly less than at a top research university, and definitely less than you could make in industry, but will still be pretty-good.
- Liberal-arts college. A liberal arts college is not a college that focuses on the liberal arts. Science, math, and technology are included under the umbrella of "liberal arts" in that expression because the expression dates back to before the distinction was made. These have no graduate program, and they are often small, but they otherwise act like a university. Some of the more prestigious ones expect you to do research with undergrads.
- Junior college / transfer college / 4-year college. These are teaching-only institutions. These will want to see your teaching reviews, and will want one of your letters of recommendation to address your teaching ability. You will teach full time (8 course per year) and do no research. You will pretty-much be paid in food-stamps for the work you do, but you will find satisfaction in knowing that you are shaping young minds by teaching.
- Post-Doc (a.k.a. visiting professor, a.k.a. adjunct faculty member). You will be paid about half-way between that of a grad student and that of an assistant professor. The goal of your post-doc should be to crank out publications, so be sure to take a position at a publication-factory, not working on a specific project. In particular, if you work for an assistant professor seeking tenure at a prestigious university, he will want you to publish in volume, which is what you want too. Most positions will last 1 year with possibility of extension, which means you aren't fired after the first year if you publish. It would be ideal if you can be placed over a team of graduate students. Don't accept a post-doc position that requires a lot of teaching (unless you really want to end up in a teaching-only position.) A post-doc is the path to landing a position at a top research university.
- The advice that follows assumes you want to work at a university that does research...
- The days when a student could graduate with a Ph.D. in CS and immediately start a position at a top research university are pretty-much over. These days, it takes more pubs than you will get by earning your Ph.D. Thus, if you want to work at a top research university, plan to do a post-doc or two.
- Begin applying at universities around Sep. 1. Some postings will appear in early Aug, but most of them will appear around late-September. (In my experience, east-coast openings mostly appear around mid-September, and west-coast openings appear around mid-October.) Some application deadlines will occur as early as Oct. 15, but most of them will be in late December or early January. Review of applications typically is done in the early spring. If you are among the top applications, they will fly you out (at their expense) in the spring to present your research in a forum-talk. Typically, the faculty members then vote about who to hire. Your position will begin around August. That's right, it takes a full year to get an appointment at a university or college!
- Generally, you should plan to apply to at least 30 schools. Even if your CV is brilliant, you will only have the opportunity to phone interview with a VERY small portion of them, and only a portion of your phone interviews will turn into fly-back interviews, and only a fraction of those will actually make you and offer. If you want to be able to choose from among more than one offer, then it is going to take a lot of applications. Also, you may learn a lot during your first couple of interview-presentations, and you may not want those to be the only interview-presentations.
- Many of the lesser universities that you consider to be sure shots will raise their noses at your application, and some big-time universities might treat you like a serious contender. I don't know why this is. I think more people feel qualified to apply at the lesser universities, so they have more competition. Also, there is a lot of hidden politics you will never know about. Sometimes, the posting is just a formality in the process of hiring someone who has already been chosen. Frankly, there is just a lot of randomness to the whole process, so you have to beat it with a lot of applications.
- Typically, universities will offer a 9-month salary. The idea is that you will use grants to supplement your salary for the remaining 3 months. (You actually specify your salary on grant applications, and if you get the grant, they pay your salary for those 3 months in addition to funding for your research.)
- Obviously you will not have a grant when you begin working at a research university, so it is common to give new professors a start-up package, which is like a free grant to help you get going.
- You can (and should) negotiate your salary as well as start-up package when you start at a research university.
- Both your teaching statement and research statement should be very well-written. A lot of judgement about you is made based on these documents.
- Make sure your research statement not only describes what you have interest in, but also motivates, gives the impression of significant potential impact, makes it clear that you have a solid research agenda, etc.
- Make sure your teaching statement addresses how helping students to absorb knowledge differs from merely expressing knowledge in lecture.
- Lesser universities will often make their offers first, and give short deadlines for your response. This is partially an attempt to get better talent to accept out of fear of receiving no better offers. Also, it naturally occurs because you are more likely to be the top-pick at a lesser university, whereas the better universities will need to wait until the initial offers they make expire before they will make an offer to you. Thus, you should be prepared to negotiate your response-time. A good tactic might be: "I have already accepted other interviews, and I could not in good conscience show up to them if I had already accepted an offer. Will you please allow me to respond in two months instead?" Of course, this puts them in a bit of a tight spot b/c they don't want to wait while the best talent is snapped up, especially if you are simply going to reject their offer.
- Top-tier publications speak a lot louder than lower-tier publications. You should probably have about a 50/50 ratio.
- A lot of universities use the H-index to evaluate your publications.
- To calculate your H-index, label your pub with the most citations as 1. Label your pub with the second-most citations as 2. Etc. The largest label with a corresponding number of citations that is greater than or equal to the label is your H-index. (You can game your H-index with efforts that increase citations on this particular publication. For example, Google Scholar counts self-citations, citations in tech reports, and citations in PDF documents that are merely posted on the web and are not even published.)
- Some schools will ask for your teacher evaluations as part of your application. That's right, you need to do some kissing-up to those grumpy undergrads who know nothing but think they know everything in the course you teach for your Ph.D., because they are given power to affect the jobs you can get! (Mostly, teaching-only positions want this, and only some of them. Research positions are usually only interested in your pubs.)
- Nearly every school will require 3 letters of recommendation. Some will require more. It is a good idea to submit more, even if they only require 3. Many schools specify that at least one of the letters of recommendation should address your teaching ability. Since none of your Ph.D. committee members will attend the class you teach, they probably will not say much about your teaching ability. Unless you can think of someone else, you are probably going to have to ask one of those undergrads you taught to write you a letter.
- Many schools require an unofficial transcript as part of your application. Just save the graduate portion of your ABC report to a PDF file, and this will do. Alternatively, you can save your grades report as a PDF, but this will show all of your undergraduate grades, so it comes across as messy. Also, your graduate grades probably look much better.
- It is perfectly acceptable to apply at places where no opening has been posted. Find out who is the department chair and send him a manilla envelope with all the usual documents. Often, they are still working on preparing their posting. Also, many universities struggle to find colloquium speakers. It doesn't hurt to send a letter saying: "I will be travelling through your city on the following dates. I would be happy to stop by and give a talk presenting my research." Of course, you'll have to pay for your own travel expenses if they accept your offer, but presentation opportunities are well-worth a little expense.
- When you interview, have a prepared list of questions. It is easier to compare your offers if you have answers to the same questions from them.
- Don't forget that you are interviewing them as much as they are interviewing you. Some good questions to ask include:
- What are your teaching requirements?
- What are your research expectations?
- What are your tenure requirements?
- What percentage of new faculty obtain tenure at your university?
- Do you have a formal junior-faculty mentoring program here?
- Where is your documentation for junior-faculty to follow?
- What are the primary difficulties that a junior faculty member is likely to face here?
- The tenure requirements between universities differ significantly. Be sure to nail it down at each university to which you apply, and consider it carefully.
- Many job postings will indicate a date on which the applications will be reviewed. It is not always safe to rely on these dates. I received a "position has been filled" notice 3 weeks before the closing date of one position.