You studied Electronics and Telecommunications in your undergrad and completed your Master’s in Computer Engineering where you specialized in deep learning. Was it a tough transition to go over from a non-coding major to a coding intensive field?
KS - Definitely! My first assignment was in Python and I had no idea about it. I did some assembly-level programming and MATLAB in my undergrad, so I had some coding experience, but Python was new. It was quite daunting to start from scratch. Honestly, this extends into work as well and there’s always something new to learn.
Pro-Tip: While having a CS background is a huge plus point, it is not mandatory. Programming can be learned at any point in your career.
What courses did you take in your Master’s? How did you build your resume?
KS - For my first-semester elective, I chose Machine Learning. It was my way of stepping out of my comfort zone and trying something new. Fortunately, I loved the course, and it changed my life. Consequently, I took courses in deep learning, computer vision, natural language processing and I completed my thesis in speech recognition. I did have multiple internships - both part-time and full-time. My MS program required us to submit papers, so I was able to publish a couple of papers as well.
Pro-Tip: Choose courses that will let you work on projects or publish papers. This way you don’t have to spend additional time building your portfolio.
How did you land your current job at Apple?
KS - I must’ve applied to 100 jobs at Apple before I got my current one! I met my current manager through our university career fair. Their team was looking for a purely ML person which fit my skillset perfectly.
Do you believe that you need to attend the top universities to get a job at FAANG?
KS - No, I don’t completely believe that. It’s important to choose a university that has a good recruiting and internship program. I got my current job through the campus career fair and I was able to complete multiple internships due to RIT’s strong internship program. While the top schools will have wonderful programs, it’s also what you make of it. Not getting into the best school should not be a deterrent.
Pro-Tip: Find a program that has relationships with companies. Networking helps!
Can you tell us about your day-to-day as an ML Engineer at Apple?
KS - The MLE position could have multiple requirements based on your team. Some research focused teams have more modeling and less engineering work. Client facing teams need to have more domain knowledge. Infrastructure teams require you to have knowledge about connectivity, networks, and distributed systems. But you are not expected to have in-depth knowledge about everything - there are domain experts to help you out. As an ML Engineer, you are sought out for your ML knowledge, with the ability to combine ML into your team’s domain. Personally, I spend 70% time in ML and 30% in software engineering. We do have domain experts for consulting purposes, but basic networking knowledge is required. Without knowing the jargon, it is nearly impossible to understand the problem that you need to solve and build a solution for it.
Pro-Tip: Machine Learning requires you to be a different kind of technical. However, you do not need to know everything. Expect to work with multiple teams.
In recent years there has been a massive influx of online courses - some that barely scratch the surface of ML while some are math-intensive. As an industry professional, how valuable do you think they are? How much math do you use in your job?
KS - I think that depends on how much ML you use at your job. In my opinion, it’s always good to study the math behind the models. If you take modeling decisions without knowing the math behind it, you tend to miss out on a lot of intricacies about the model. Use the MOOCs as a starter course but not the end-all solution. Deep dive into the subject and learn the math behind it.
Pro-Tip: Math is fundamental to Machine Learning.
Job descriptions can be generic and expect fluency in full-stack development from a candidate. Being in the industry, I understand where that thinking comes from. While I’m not required to know ETL/SWE concepts fluently, I feel that I will succeed better if I have those skills. Pure ML/DS knowledge would not suffice. But I also agree that it is a strenuous task to build a portfolio that demonstrates full-stack data science skills. In such situations, what should a job seeker do?
KS - Yes, I agree with you that candidates with full-stack data knowledge are highly preferred. For students, I think personal projects like Kaggle projects are a good way to demonstrate a variety of skills. I would also recommend studying the different roles in the industry and their job descriptions first. No two machine learning/data science roles are exactly the same. Identify what role you want to pursue, analyze the job market to identify the needs for that role, and then work your way up to it. Knowing the field and understanding the job descriptions will help you customize a learning path and enable you to build a tailored resume that will open up several job opportunities for you.
Pro-Tip: Study the different roles, industry trends, and job requirements. Tailor your learning path and resume accordingly.
What advice would you give to a candidate who is actively looking for jobs?
KS - Don’t get disheartened by rejections. It’s a numbers game and everybody’s journey is different. Easier said than done but keep applying and something will come through!
I’ve been interviewing candidates recently and it’s important to build a rapport with your interviewer. It’s important to keep your interviewer engaged with your brainstorming and discussions. Also, it’s perfectly fine to admit that you don’t know the answer to the question. Don’t beat around the bush because we can smell the rat easily. Be confident during your interview. When I interviewed for Apple, I was so sure that I wasn’t going to crack it. With nothing to lose, I found myself to be more relaxed and confident during interviews which did the trick.
Pro-Tip: During interviews, it's okay to say you don't know the answer to a question rather than beating around the bush! Keep your interviewer engaged by your questions and your thought process. Be persistent and confident in yourself.