By Luis Serrano
If you want to work in artificial intelligence, machine learning, or data science, I have great news: New jobs are opening in these areas at a great rate, and there’s no reason why you can’t get one of them.
The first question in many people’s minds is, “I’m not an expert in programming and mathematics. Do I have a chance?” The answer is, definitely! The most important skills are common sense, an intuition for data, and a passion to learn and apply what you learn to real-life projects. Here’s how to land a job in five steps: pick targets, make initial contact, prepare for interviews, apply, and follow up.
Pick targets. What kind of job are you looking for? The answer depends partly on how much you enjoy the following skills: coding, data analysis using math and statistics, machine learning, and working with people. All AI jobs require these four skills to some degree, but your area(s) of strength should influence which roles you’re after. Job titles differ from company to company, but typical roles include:
- Data analyst. This role requires little coding but it does require a good knowledge of statistics. It also requires a good understanding of the product you’re working on, which means you’ll interact with teammates.
- Data scientist. This requires more coding (but normally not at the production level) and a strong knowledge of machine learning algorithms.
- Machine learning engineer or data engineer. These roles require lots of coding, ability to deploy models in production, and an understanding of model architectures.
- Product manager. This requires leadership skills, an understanding of data, a strong understanding of the product, and interaction with clients and adjacent teams.
Make initial contact. The best way to make contact with potential employers is through a referral by a former manager, former colleague, or friend within a target company. Their stamp of approval attests to your technical skill as well as your reliability and amiable personality.
You may have more acquaintances on the inside than you think. Search LinkedIn for people in your own network. Search also for colleagues of people in your network, and ask your connections to introduce you. Don’t be shy! Meet new people by attending meetups and conferences. Introduce yourself and ask them to tell you about their work. They’re likely to enjoy helping someone they know, and they may get a bonus for it. And don’t forget to reach out to recruiters. You’ll be making their job easier, as they’re looking for people like you.
Whether or not you can find someone on the inside to refer you, apply for every position that appeals to you. The worst that can happen is that they don’t call back.
Prepare for interviews. It pays to start preparing even before a hiring manager responds to your application. Specifically, make sure you have a solid foundation in:
- Programming. Python is ideal. SQL is recommended and R is helpful. Production languages such as C++ and Java may be valuable in some positions.
- Computer science. Brush up on the basics, specifically algorithms and data structures.
- Mathematics. Focus on statistics, probability, linear algebra, and calculus.
- Machine learning. Strengthen your grip on the basics here.
My favorite way to learn these topics is online. Platforms such as Coursera offer great courses, and in some cases you don’t even need to pay for access to course materials. YouTube is another great source of online instruction. If you prefer an in-person experience, check out boot camps offered by schools such as FourthBrain (a company backed by AI Fund, where Andrew Ng is managing general partner).
Practice is crucial. To practice programming and computer science, try LeetCode or HackerRank. To practice machine learning, enter a contest on Kaggle.
Apply. Now that you’re ready for interviews, apply for any positions you’re qualified for, whether or not you think you would enjoy the job. That’s because doing interviews is the best way to get better at doing interviews.
Be aware that each interview will be different from all the others. Some will go well, some less well. Ask the recruiter ahead of time which topics you’ll be asked to address. You may still encounter a question you aren’t prepared to answer. In that case, take the surprise as a prompt for further preparation.
In any case, here’s the best interview advice I know of: Have fun. While you’re interviewing, the interviewers are picturing themselves working with you. If you enjoy yourself, they will, too. And if they enjoy themselves, they’re more likely to want to hire you. Furthermore, they want to see what you would contribute as a member of their team, so approach each interview as a team exercise rather than a solo flight. Clarify the questions to make sure you’re not solving the wrong problem. State your ideas clearly. Ask for advice along the way.
Follow up. Once an interview is over, send a message to the recruiter and, if possible, the interviewers. Thank them for their time and anything you learned during the interview. If this particular job is at the top of your list, let them know. If you’ve already made that clear, say it again.
If you get the job, congratulations! If you don’t, it may not be over yet. Tell the recruiter and anyone you met during the interview that you’re still interested. If you made a good impression, they may keep you in mind when other positions open up. I’ve been rejected only to get an offer a few months later. So stay in touch with everyone. Your effort may pay off down the line.
I wish you lots of success in your job search, and I’m excited for what you can add to this wonderful field!
Luis Serrano is Quantum AI Research Scientist at Zapata Computing. He is the author of Grokking Machine Learning and maintains the educational YouTube channel Serrano.Academy.