Undergraduates: How to become a machine learning engineer without a Masters or PhD?
Want to become a machine learning engineer? Still an undergraduate? Read this to learn from my mistakes.
Still in school and want to be a machine learning engineer?
Lucky you - the machine learning field is still academically oriented. You're in a good place to learn a lot. I'll break down the preparation into academics and industry.
Not sure yet? Hear why I chose this route here.
Not a student? Learn how to transition to machine learning from software engineering here.
YOCO - You Only College Once. Taking classes, doing research, participating in extracurriculars are things that are best experienced while you’re in college. You can’t get involved in these things after you graduate while working as easily. Make the most of all of the above!
What classes should I take?
Machine learning requires a foundation in computers science, mathematics, and statistics. Start with the introductory courses. Most machine learning engineers have a Masters or PhD degree, so try to fit a few graduate level courses in your schedule. Machine learning is a multidisciplinary field. I recommend specializing in a subject you're passionate about. You can even use this to satisfy your non-major requirements. For example, sociology has a quantitative specialization named computational sociology. Biology, Neuroscience, Finance also have quantitative specializations.
What classes did you take?
See my transcript showing the actual classes I took below.
Yellow Rectangles - Computer science, Math, Statistics
Red Rectangles - Machine Learning specific classes
Note: I graduated in 2017 as an Information Science major with a concentration in Data Science. I was in the College of Arts and Sciences, so I took fewer engineering classes. There also weren’t as many machine learning classes to take as today!
What classes should I take as soon as possible?
Enroll in the classes about data structures, algorithms, and machine learning as soon as possible because they will help with interview prep and my research.
Are you wondering why I only took 2 classes my senior spring?
I finished my requirements early and was a part-time student my senior spring to save money. I spent my extra time doing research and writing my senior honors thesis.
Take advantage of the opportunity to do research while you're in college because it's not accessible after you graduate. It's never too early or too late to start in your academic journey.
How do I know what field to do research in?
You either do or you don’t. I didn’t, so I scraped all the professors emails from the departments I was interested in and cold emailed them all. Only a few responded, and even fewer said they had open positions, which narrowed down my options for me. Then, I chose one because I knew I had to try something to figure out if I liked it or not.
How do I get a research assistant position as an undergrad? [Question from Connie]
Cold email professors in the field you're interested in and ask for research positions.
Wait outside professors’ offices and ask them about their research and open positions in person. I used to do my homework while sitting outside their offices.
How do I know which professor to do research with?
When choosing a lab, meet with not only the professors, but also the graduate students and other undergraduate researchers. The professor is important because you may ask them for letters of recommendation one day. As an undergraduate, you’ll interact mostly with the graduate students because professors are busy. The graduate students I worked with became friends and mentors even after I graduated. The undergraduate researchers will be able to tell you whether it’s a good experience or not.
How do you choose a field to do research in?
You can always change your mind. First, I joined a computational economics lab over the summer as a freshman. It wasn’t for me. Neither were the first 6 majors I tried (chemistry, biology, math, economics, computer science, statistics). Then, I did research in a computational social science lab my junior year, which I loved. Research helped me decide to major in Information Science, which I finally affiliated with my junior year. In the end, I wrote my senior honors thesis about the political polarization on social media using natural language processing.
Why is research important?
The research experience will teach you how to answer open questions and read papers, which will be applicable in a machine learning role too. You can do it during the school year and/or over the summer.
What should my goal from research be?
Try to have an output that you can show off to future employers. This can be code you contributed to Github, a blog post, a thesis, or a published research paper.
Attend academic conferences. It’s easier to get in as a student than after you graduate. There’s free food and interesting people!
If a club or project team related to machine learning exists, join it. If not, start one. I was a member of the Cornell Data Science project team. After graduating, I founded the US Chapter of WomenInAI, and I wish I’d started something similar in college. This will give you the opportunity to meet others with your passion. It’s not only more fun to learn together, but it’ll be a useful network in the future.
How do you choose between the different fields in graduate school (Ex. informatics & business analytics, applied analytics, data science)? [Question from Sowmya]
It’s hard to decide when there are so many options! The programs affiliated with an engineering school will prepare you better for an engineering job, like machine learning engineer. The interdisciplinary or math/statistics programs in the Arts departments will better prepare for a data scientist job than a machine learning engineer job. The programs affiliated with the business school will prepare you for business analyst, data analyst, or consulting jobs. Make a list of what’s most important to you too. Is it research, internships, teachers, your peers, or location? Rank schools in each of these categories to narrow our list down.
Should I do a bootcamp or apply for graduate school?
See question under ‘Industry’.
Apply for an internship at a tech company. I admit getting one is easier said than done.
How do I get an internship?
Cast a wide net with companies and roles. Your career is a marathon, not a sprint. I interned as a data scientist and quantitative analyst, and then worked as a software engineer before becoming a machine learning engineer. These roles are similar and can lead you to a machine learning engineer role too. The more times you apply and interview, the more likely you’ll get an internship. Apply anywhere and everywhere. Every rejection is a step closer to an acceptance one day.
How do I stand out in a sea of resumes?
Get a good GPA. Have an ATS compliant resume. Create a personal website. Push your passion projects to Github with Readmes. Have a fully filled out LinkedIn. Add hackathons and conferences you participated in. Get a referral. Cold email anyone and everyone.
I already did everything you mentioned. What else can I do?
Keep doing what you’re doing. Reread “How do I get an internship?”.
If you start preparing for an interview after you get it, then you’re late to the party. Start preparing for interviews before you start applying.
Unfortunately, what you learn in school won’t be enough for you to pass machine learning engineer interviews. Here are a few resources that I personally used:
How do I know what to study for an interview?
Reply to the email about the interview from the recruiter with questions to narrow down what topics to study. Here’s a template I used IRL:
Thank you for the opportunity to interview. I have a few questions so I can prepare accordingly:
- Who is my interviewer? (Look them up and see what their title and specialization is.)
- Is it behavioral or technical?
- Can you please let me know what topics the interview will be about?
- Will it concentrate on software engineering or machine learning skills?
- Will it be a hands on coding question or oral question?
Ask questions to be prepared. It shows the recruiter you care about putting your best foot forward. Feel free to add and remove questions to the email template.
How can I prepare for software engineering questions?
How can I prepare for machine learning questions?
How can I prepare for behavioral interviews?
Are machine learning engineer interviews different from software engineer interviews? [Question from Connie]
Most of the time, yes! Different companies weight their interviews between machine learning and software engineer roles differently. Reread “How do I know what to study for an interview?”.
Software engineering interviewers primarily ask data structures and algorithms questions. Machine learning interviews consider statistics and machine learning questions fair game on top of data structures and algorithms questions
If you’ve graduated and you’re still stuck, then consider a bootcamp before applying to graduate school, which is more expensive. I did the Insight Data Science Artificial Intelligence Fellowship after graduating and working in finance as a software engineer for a year. After the bootcamp, I got a job as Deep Learning Engineer at Node.io, an AutoML platform company that was acquired by SugarCRM. Now, I’m a machine learning engineer at Stripe!
Should I do a bootcamp or apply for graduate school?
They are both similar. I chose a boot camp because the time and financial commitment was lesser. Graduate school offers more prestige, so if you have the time and money - do it.
What value does a bootcamp add to your resume? [Question from Sowmya]
Honestly, bootcamps don’t add to your resume like graduate schools do. However, they add to your technical skills, your network, and your interview prep, like graduate schools.
How do you know if a bootcamp is credible? [Question from Sowmya]
Check if the bootcamp has a guarantee. For example, Insight Data Science waives the cost if you don’t get a job. Find previous graduates from the bootcamp on LinkedIn and ask them if they thought it was worth the time, money, and effort.
I did Insight Data Science when it was free with a stipend. I heard positive reviews from previous graduates from the program, so I decided to apply.
Questions or comments? Tweet at me @pujaarajan.
This is a living blog post. I’ll add your questions and my answers to this page to help others too.