I am currently seeking a career outside of academia (STEM) and every "entry-level" career in my field seems to demand familiarity with dozens of technologies.

For example, here is a data science job from a big tech company:

  • Familiarity with at least 1-2 popular AI/ML frameworks and tools - TensorFlow, PyTorch, MXNet, scikit-learn, OpenCV, ARCore, and ARKit.
  • Expertise in estimation, experimental design, hypothesis, and A/B testing.
  • Experience partnering with engineering teams to build and test production systems.
  • Familiarity with AWS services such as EC2, DynamoDB, RDS, AWS Lambda, and Amazon SageMaker.

As someone who did an applied math degree geared towards the theory of optimization and learning, I am very familiar with how AI/ML works, but I am not too familiar with all these softwares. Furthermore, I don't know anyone who is currently doing similar research who plays with these Amazon cloud service regularly. It just seems there is no need to publish a paper using any of these tools.

It almost seem that you need an entirely separate graduate degree to fully meet these criteria.

By the way, almost all the jobs in the field are like this and this example is actually pretty mild and again not even for a senior role.

Can someone like me survive in industry?

  • 1
    Comments are not for extended discussion; this conversation has been moved to chat.
    – Bryan Krause
    Commented Nov 10, 2021 at 17:39

12 Answers 12


Yes, you can survive there

By way of personnal background (so you know that I have some knowledge of this stuff), my career is as a statistician in academia and consulting, with the latter being in the tech field where similar requirements are often set out for positions. Much of my academic work has been theory, but I've also been able to work effectively in the tech field and so I've learned a bit about it.

So, the first thing I've learned is this: These big lists of skills giving huge numbers of specific platforms are really just a "wish list". Most organisations in the tech field cobble together the required skills by having teams of people who each specialise in different programs and platforms. You'll occasionally run across people who have knowledge of most platforms on these wish-lists, but it is rare. More common is to find people who have high-level specialty knowledge in one or two programs/platforms and who are able to learn the others on the job or collaborate with experts in those other platforms. Moreover, expertise partnering with teams in the tech industry is something that you usually only get once you are already working in that industry, so new starters would not be expected to have this.

If you want to make yourself attractive for entry-level positions in the tech field, I recommend you pick one or two key programs/platforms and make yourself an expert in those things. Learning a core language like SQL, Python, R, C++, or SAS (depending on where you want to go) will give you a foundation for programming work in the tech industry. You can learn particular areas such as AI/ML if you like, but it is nice to get a broad and deep knowledge of at least one program/platform. There are many online education providers that will teach you these programs much more quickly than getting a graduate degree (e.g., DataCamp, Udemy, CodeAcademy, Coursea, LinkedIn, etc.).

Once you have one program/platform you are really good at, you can gradually add other things to your repertoire until you have a more rounded tech resume. This takes years to develop and it usually comes from being involved in projects where you have to learn and apply new tools. (Indeed, you will find that even after you've learned them, you tend to forget programming platforms that you don't use on projects.)

  • 7
    I think this answers actually sets the bar too high. Being very proficient in a programming language is definitely helpful but OP already has a STEM PhD. That on it's own with say a month of self study is enough to get a good starting job in data science. Being familiar with machine learning at an academic level is extra and puts OP already ahead of a lot of the competion.
    – quarague
    Commented Nov 8, 2021 at 17:51
  • 18
    @quarague As someone with a STEM PhD (and programming experience, and some self-study/independent projects) who has tried unsuccessfully to get a data science job, it feels like you are really overestimating how easy it is to get such a job. But perhaps I am just unlucky.
    – d_b
    Commented Nov 8, 2021 at 19:11
  • 4
    @quarague: It depends on the job. If you are applying for (say) a software engineering position, when I interview you, I am going to expect you to write code, and I am going to expect that code to (mostly) actually work. If you have a PhD in computer science or something, well, that's nice, but (perhaps surprisingly) it doesn't tell me whether you can code or will be able to learn to code in a reasonable amount of time. But I don't have experience with data science jobs, so maybe the standards in that field are different.
    – Kevin
    Commented Nov 8, 2021 at 19:30
  • 9
    @d_b My comment was based on myself doing exactly that, pure math PhD with zero real world application, practically no programming experience plus one month of self study of SQL and R did get me several interviews and a job as a data scientist that I'm quite happy with.
    – quarague
    Commented Nov 8, 2021 at 20:18
  • 2
    @qurague: I think you're right about lower-level positions. I suppose I had in mind the kind of positions where you can come in at a mid to high-level. Also, does OP have a PhD? I only saw him specify that he has an applied math degree (which I took to be undergraduate).
    – Ben
    Commented Nov 8, 2021 at 22:06

You absolutely can do it.

This answer will focus on data science, since that matches the job description you posted. I know people with similar profiles who have made the transition. It will take some work to fill in some gaps in your experience, and to think about how to make your experience relatable to an employer. Even if you don't use the tools they are looking for, perhaps you can show you've used similar tools. And over time, you can learn the tools you need.

One thing to keep in mind is that many, probably most, people who do these jobs don't have PhDs. So it is not true that you need a graduate level education in the topics you listed [1]. What you do need is a working knowledge of common tools. It's useful to take one or two online courses that include actual coding examples so you can practice getting practical experience.

You should also be aware that (a) the "requirements" companies post are not strict requirements -- the ideal candidate will have all those things, but no candidate is an ideal candidate, so people are hired who meet a fraction of the criteria all the time and (b) people pad their resumes. You have to decide for yourself what you are comfortable with how you describe your skills on your resume. You shouldn't lie; you should be ready to explain and demonstrate any skill you put on your resume, and you should be prepared to have to use that skill on the job if you're hired. But, you also shouldn't sell yourself short -- you can pick up the basics of a lot of these packages before or while you are applying to jobs.

There is a major skill you have because of your PhD -- your ability to learn new things independently and use them to tackle unsolved problems. This is harder to quantify and put in a list, but it is very valuable to be able to do that in the business world.

One way to demonstrate your problem solving skills, and to learn the tools you need in the field, is to do some kind of personal project that you can do to show off your data science skills. A common first project is to compete in a Kaggle competition, or do a previous competition, and be ready to talk about the decisions you made analyzing the data. However, if you can find something that stretches you beyond this, that is even better -- Kaggle lets you demonstrate you can fit a model to data, but it doesn't include many steps that are part of the bread and butter of a data science job, such as gathering and cleaning data, and deploying a model so it can be used for something.

Finally, there are data science bootcamps that exist to help people in academia transition to data science. Your mileage may vary on these... On the one hand, they claim to be able to place people into very good jobs. On the other hand, they are expensive and you will have to go for several months without a salary. But, they are an option to consider as well if you are having difficulty landing a job.

None of this is to say that you won't have to work hard. You may need to spend a significant amount of time on your resume, practicing for interviews, and sending out lots of resumes (it's a numbers game -- most places won't respond to a resume they receive without a referral, but some will if you have a good resume). You may not succeed at first. But it is possible with dedication.

There are a lot of resources online for people looking to make this exact transition. It is possible to get too far into the weeds with them, but do take a look at stories of people who went into industry and practical tips for getting into the field you are interested in. I also urge you to draw on your in-person network as much as possible, both for advice (if you know people, or know people who know people, in the industry you want to work in) and for emotional support. Looking for a job, and changing fields, is tough, and you won't get a lot of direct support within academia.

[1] Something one of my friends pointed out to me is that in academia, you spend all your time around PhDs, but most people outside of academia do not, and find a PhD to be impressive! Now you don't want to take this too far and rest on your laurels, especially since just the fact of having a PhD by itself will not convince anyone to hire you, but do keep in mind you have some real strengths that may not be obvious to you because of the environment you find yourself in. You are going to need to recognize these strengths and convey them convincingly to potential employers.

  • 1
    "the "requirements" companies post are not strict requirements" Unless they're using an automatic system to throw people's resumes in the rubbish because they don't have specific keywords in them, because that's cheaper than having a human actually look at the resume and make a decision about whether or not to throw it in the rubbish.
    – nick012000
    Commented Nov 8, 2021 at 15:08
  • 2
    @nick012000 Well, this is where "padding your resume" and "describing your experience in a relatable way", and "it's a numbers game", come in. Your resume needs to get you in the door past HR talking to the actual people you will work with. At that point, you can explain your expertise, and you can definitely be hired even if you're not an expert on every one of the 20 technologies listed in the ad. The point is, don't rule yourself out based on the job description, if you think you can do the job.
    – Andrew
    Commented Nov 8, 2021 at 15:51
  • 2
    To add onto @nick012000, there's a saying in the tech industry: "If you meet all the requirements for a job, you're overqualified." Yea you should learn programming concepts and different languages to an extent, but year-based experience requirements are almost always non-realistic.
    – spicy.dll
    Commented Nov 10, 2021 at 20:02

I've lived this myself.

I got a Ph.D in Electrical Engineering, and mostly did linear algebra (math) and software simulations with Monte Carlo statistics.

I can't fix your toaster, do wiring, etc.

So for me, I did audio firmware which sort of double-counts as EE and software engineering, for about 5 years.

I eventually wound up becoming a software engineer, and there was a 'happy ending.'

It would depend on your own skills, of course. Someone who has a lot of technical ability might still do a theoretical Ph.D.

But in general, this is a known problem, and can cause difficulties in the industrial world.


I am very familiar with how AI/ML works, but I am not too familiar with all these softwares... It just seems there is no need to publish a paper using any of these tools.
It almost seem that you need an entirely separate graduate degree to fully meet these criteria.

You don't need a degree to meet these criteria, you just need to learn on the job for a couple years. The job postings are hoping you'll do that on-the-job training on someone else's dime and can hit the ground running, but that rarely happens in the real world. Everyone's first day, from the most senior to a fresh graduate, is spent figuring out how things actually get done at the new shop; HR doesn't seem to understand this.

I'm a computer engineer by education, and a controls engineer by trade. I'd never used a Rockwell PLC in school, but I had a thorough understanding of boolean algebra, and ladder logic just isn't that complicated. When I first started, I didn't know how to calibrate a load cell, but I could have built one from first principles, and that was enormously helpful when diagnosing measurement artifacts. Academics typically try to understand the how and why, while industry is more likely to value pragmatism - just make it work and don't ask questions. This will make you less effective on easy assignments, but work in your favor when the team runs into a difficult problem. You just need to find a team that will help show you how to get started - ("Here's your AWS credentials, here's how you log into your EC2 instance, here's how you install TensorFlow, and here's how you make a neural network to classify shapes as triangles or squares"). Realistically, that's just about every team, you're probably not ready to start as a freelancer yet but any engineers will be happy to help you get past that tedious part of the learning curve.

You'll just have to find somewhere that will let you start working without checking those particular boxes. At big companies, you may have to bluster past some of the HR drones ("Of course I meet the AI/ML requirements, I implemented [subsets of tools like] those from scratch in my CS435 coursework") to talk to someone who can actually determine whether or not you meet the requirements. Also, I expect that some of those job postings probably require 5 years' experience in technologies which are 3 years old - and yet the positions will be filled.

  • 8
    +1 -- "some of those job postings probably require 5 years' experience in technologies which are 3 years old". Too real.
    – Andrew
    Commented Nov 8, 2021 at 21:54
  • 2
    Even if you have extensive experience in a technology, that doesn't necessarily mean that you're going to be able to drop into an existing project using that technology. Someone with years of experience in C++ GUI applications with can end up totally lost if his previous environment used Qt and CMake on Unix and his new one is GTK and Visual Studio on Windows. Every project will have its own implicit knowledge base that you can learn only from the project itself. The best way to make this learning faster is to have good general knowledge, as with the Rockwell PLC example in this answer.
    – cjs
    Commented Nov 9, 2021 at 7:58
  • 3
    @Andrew I kid you not I auctually saw an add for a intermediate Blazor developer just today. Microsoft committed to long term support of the technology literally 3 months ago.
    – Neil Meyer
    Commented Nov 15, 2021 at 19:33

Programming was a second career I picked up out of necessity --it had previously been a hobby. My degree was in the humanities (philosophy). In about 10 years I've advanced steadily from an entry level position to being near the top of the career ladder at my company. My story is not unusual. Just recently I had a conversation with a colleague who was a bus driver two months ago before taking a crash course.

Although companies often list long alphabet soups on their listings, the fact is that the job market is white-hot right now, and there are far more job openings than qualified people to fill them. Take the time to get the base level skills, and someone will take a chance on you, no matter how little experience you have.

The other factor to remember is that technology advances relentlessly, so even people who are well-qualified today still need to constantly acquire new skills. That means you're not really so far behind anyone else. If you are a good and disciplined self-learner, there is no reason you cannot thrive in tech.

  • 2
    "the job market is white-hot right now and there are far more job openings than qualified people to fill them" Where do you live? The opposite is true down here in Australia. There's way more unemployed people than job openings.
    – nick012000
    Commented Nov 9, 2021 at 4:57
  • 1
    @nick012000: OP is from the Netherlands, I am too. White-hot is probably an understatement, unemployment is at record lows industry-wide. I'm working for 2 AI companies, and both are actively hiring. I think that the AI field is even more short on employees. Ironically that is part of the problem for starters; a new inexperienced employee will require significant coaching.
    – MSalters
    Commented Nov 9, 2021 at 13:53
  • 1
    I'm in America. But more and more companies are hiring remote, so geographic location is becoming less important. Commented Nov 9, 2021 at 14:14

Job posting are often written by clueless HR personnel often times with the best of intentions don't know what any of the terms mean. You don't have to be the best candidate they would want, you just need to be the best candidate out of the pool of replies.

Most job postings would say something to the effect that the employer reserves the right not to make an appointment but often times this is just posturing. In South Africa it is common for tech jobs to remain vacant for months on end. A lot of tech companies growth is largely dependant on how many reasonably qualified people they can get to do the work.

Also I do think it worth noting that because the tech scene is so generally lucrative you get a lot of businesses who are willing to take a chance on employees just because the upside is so big.

What I would say is that coming from the academy is you have to realise is that you are not selling programs or software. Nobody cares about the intellectual enterprise of programming in the business world. You only have value for a business in how you effect there bottom line.

If you can prove to a business owner that he can make 50K in profits by either reducing expenditure or increasing income by buying your 20K piece of software then you are going to make loads. This may be a simplistic example but you have to always know that in this programming world you must solve some sort of problem or fulfill some sort of physical or emotional need of a business or an individual.

Your programs are only valued in the problems they solve. This is how this world operates. It is not about the advancement of human knowledge. It is about the advancement of your bottom-line. Too many times I see these so called venture-capitalist sell some sort of tech idea with not even a hint of how they think it is going to operate in the real world and I cannot help but think to myself are they trying to sell me shares in a company or are they trying to recruit me to some sort of new age cult that they are trying to found.

Just have what problem you are trying to solve be in the forefront of everything you do.


I had to do a double-take when you said AI/ML to even say I recognized one of the acronyms and tech buzz terms. First job in tech was 22 years ago at age 35ish with a high school diploma.

Everyone I've worked needs a quick-study, problem solver. If you have social skills, even better.

I've been blessed with many opportunities, and many I wasn't qualified when I walked in the door. But I got that way as quickly as possible. Consistently churn out work, own your mistakes, and try to get along with folks. Don't set your sights on the moon for your first position. Mine was making some html conform to a different template. Made a deadline and worked ~3 years at that one "6-week project".

I also worked 4.5 years at a university. It's where I learned that PHDs don't know everything (childhood misconception). Some of the academics were nice, humble, regular guys/gals and some could be challenging. I think most were petrified they couldn't make it in a real job. At least not with the awe-struck looks they were used to experiencing from kids. It was nonsense, they could have done it.

Yeah, I think you'll do fine. Tech is big, broad and getting bigger by the second. Get on in here! :D


I do entry level recruitment for the technical division of a large company and the features that we look for in a successful candidate are:

  1. A numerate degree in a scientific or engineering discipline.
  2. An obvious interest in the technical field for which we are recruiting.
  3. Good problem-solving skills.
  4. The basics of at least one programming language.
  5. Not being insufferably annoying.

At this level we are looking for raw talent, not an intimate knowledge of the AI library du jour. Although, if you said that you had done a course in (say) Tensorflow then it would certainly help your chances.

Frankly, the skills that you list would match one of our engineers with at least 5 years of experience and if a company is offering an entry-level role to someone with that amount of knowledge then they do not understand your value, or their business.

  • 2
    Point 5 being negotiable depending on brilliance. You can be a drag to be around but then you surely have to be great at your job.
    – Neil Meyer
    Commented Nov 10, 2021 at 18:24

My answer is slightly different: Yes you can do it, if you are willing to adapt.

No one expects a new hire to hit the ground running at full speed---for every job there's an expectation that it will take some time for you to learn the environment, the culture, and the requirements. The toolkit you develop in a PhD program may or may not align perfectly with a given job, but the ability to independently learn and expand your own skills will help you to get up to speed quickly, as the other answers have said.

However, I've had a lot of experience in hiring former academics, and the one big area that I've seen issues is in adapting to the culture change. I've met many, let's say, high-maintenance PhDs---those who expect to exclusively do the pure, challenging, technical work, and who scoff at the soft skills aspects of the job. Working collaboratively, against deadlines, tackling the problem in front of you instead of the one you wish was in front of you, contributing to meetings and strategy are all areas where I've seen PhDs struggle, not because they can't do the work but because they don't want to. I've met plenty of hiring managers who see a PhD as a red flag because they assume that the applicant will not be willing to adapt.

Often, using a cover letter to explain why you're interested in the position and showing that you understand and are eager to do the work will go a long way.

  • 1
    I agree, it is not what pet technology you think is rad. It is about what your employers needs you to use. I personally think Blazor and the .NET interpretation of Web Assembly is going to make Angular and co obsolete eventually. I would still not hesitate to learn any current SPA model if someone paid me a salary while I worked and learnt it.
    – Neil Meyer
    Commented Nov 10, 2021 at 18:18

Speaking from people I knew in college, many physics and math majors, including Masters and PhDs, had no trouble ending up at tech jobs such as programmer, data scientist, or in quantitative finance. Companies have different hiring strategies, but many interviewers look for general problem-solving ability and reasoning skills, and are willing to look past not knowing every programming library as long as the candidate has a baseline programming/command line knowledge and shows eagerness and ability to learn (For example, if you have a basic familiarity with linear algebra, something like numpy should be pretty easy to pickup).


I did a PhD in theoretical computer science and I'm currently a (senior) software engineer at Facebook.

This is counter-intuitive, but after a PhD, interviews at bigger companies are easier than those at smaller companies.

  • Smaller companies often look for specialists. You are expected to be an expert in the tech stack in the job descriptions. On the contrary, at big companies, e.g. FAANG, they often look for generalists that can do anything, so the interviews are heavy on algorithmic coding questions. They are not easy, but you know all 7 or 8 topics in advance: tree, graph, binary search, dynamic programming (very rare) etc.
  • At smaller companies, a PhD may be considered as disadvantages. On the contrary, big techs love PhDs. With 0 experience, Google will start PhD holders at L4 (median salary $270k per year in the SF Bay Area, see levels.fyi/), while new undergrad starts at L3 (median $192k per year). Interview for L4 at Google include 4 rounds of coding questions. Nothing else.
  • If your PhD is relevant to the work they are doing (ML is highly relevant everywhere), you will have easier (and maybe fewer rounds) coding interviews.
  • 1
    This post proves that I need to start applying to Google and move to SF.
    – Neil Meyer
    Commented Nov 10, 2021 at 18:58

Sure, if you are willing to learn those technologies, and not treat coworkers as servants that convert your PhD magic into code.

It is very rare that a PhD has enough skills/value to the company that he can continue doing the equivalent of research without doing "boring" stuff like coding/cloud stuff.

In other words if you can get PhD you easily have ability to learn the tech needed, but the issue here is if you are passionate about learning the various tech stacks as you were for the work related to your PhD.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .