Apple Machine Learning Engineer
Massachusetts Institute of Technology , Machine Learning, Natural Language Processing
Current Time 0:00
/
Duration Time -:-
Progress: NaN%

How did you get to where you are today? What is your story? What incidents and experiences shaped your career path?

Summarized By: Jeff Musk on Tue Mar 10 2020
I entered undergrad as a Math Major. I was in love with it from high school, had done a few competitions, wanted to continue along with that study and what I didn't like about math and what I started to realize in my sophomore year was that most of the jobs that I was looking at seemed to be bookkeeping jobs which isn't a bad thing, I have nothing against it, it just didn't fit my personality very well. I happen to take a CS course in that fall and then that let me realize that CS was a way to scale now, so I started asking around professors how do I get more into this because our CS department had been defunded and what they recommended was research and doing these directed studies, pitching a project and then just diving into it, that's what I did and then that led me to apply to some NSF REU. I did one at Clemson and another at Berkeley, and then that kind of pushed me into academia and I was awarded in NSF fellowship for some of the research that I was working on, which made me go into grad school immediately the following undergrad but I decided that they were some areas in my professional life that I couldn't improve upon just in Grad school alone so I decided to go in the industry and then I ended up continuing what I was doing, which is natural language processing and machine learning.

What tools (software programs, frameworks, models, algorithms, languages) do you use at work? Do you prefer certain tools more than the others? Why?

Based on experience at: Machine Learning Engineer, Apple
Summarized By: Jeff Musk on Tue Mar 10 2020
We surely have no preference, it's pretty much whatever gets the job done. We on our team which is very specific, we primarily use Swift, Objective C, and Python but we're not afraid to go into things like Java or R if it's able to do something in a quicker, cleaner manner. We use PyTorch to do sort of lower-level modifications for ideas that we're thinking about, TensorFlow and Keras for things we are trying to get a quick prototype out on.

What things do you like about your job? Were there any pleasant surprises?

Based on experience at: Machine Learning Engineer, Apple
Summarized By: Jyotsana Gupta on Tue Mar 10 2020
I have no idea what to expect when I was first coming in. This is my first job at a big company, never been in a company like Apple. I was kind of going in blind, and I have been school my whole life but then I found that I loved it here. I still felt like I am able to express my ideas and they're received very well as well as I can pitch projects sometimes they're picked up, sometimes it's not the highest priority. But I think one big pleasant surprise was still having that freedom to pursue my own ideas as well as being at a community where scientific integrity is still paramount so there's no line, we're always honest about results. If we find a bug, it says okay, just point it out, readjust what our understanding of how well we're doing on the problem is and then continue moving forward and no one has any issues with that and no one takes anything personally.

What are the job titles of people you routinely work with inside and outside of your organization? What approaches do you find to be effective in working with them?

Based on experience at: Machine Learning Engineer, Apple
Summarized By: Jyotsana Gupta on Tue Mar 10 2020
I primarily worked with software engineers as well as designers. It honestly depends on the background of the person that you're working with for which approach is most effective. But what matters to me is that the other person is understanding the ideas and concepts that I'm trying to communicate and if that takes explaining different granularity, simplifying concepts or really sitting down with them and showing them the inner working what I'm talking about, then I'm willing to do that. It's just the communication part that I'm optimizing for.

What are the recent developments in the field? How significant are these improvements over past work? What are their implications for future research & industry applications, if any?

Based on experience at: Machine Learning Engineer, Apple
Summarized By: Jeff Musk on Tue Mar 10 2020
I can answer this on a personal level, things that I find interesting. I love language modeling so the reason I would love language modeling because it's an unsupervised approach to NLP and I think that with supervised approaches, you're kind of putting this constraint on the space in which meaning is able to be expressed and once you do that, you're no longer capturing the objective, you're trying to model meaning and then you're saying Okay, you can only say this one way, that sort of defeats the purpose. But when you do in an unsupervised way, you're saying, Just look at the data, we're not going to tell you whether or not this is right or wrong, just learn from it. This is a lot harder of a field, but I do see some people starting to move in that direction, especially in generative modeling for NLP, which is still undefined but I'm personally interested in those. From a more industry perspective, I would point out to students, just to remember that complexity is not always better, it's often good to get a very simple baseline or even just a dummy model based on looking at the data and then moving forward from there. If you get 90% with just looking at whether this one keyword is present, do you really need to spend six weeks optimizing? it's up to you. Some people think that semi-supervised learning is the future that I could get on board with. I think that we just need more of unsupervised, I think that the successes of NLP have come from the representations and all of these embedding that we're learning through models like Bert. So I just want to take what we seem to be doing right from there and at least throw it out some of the other problems that we're looking at. The active learning stuff is also fascinating, I just wish that there is a bit more interpretability as to why that as transfer learning is working so well.

What qualities does your team look for while hiring? What kind of questions does your team typically ask from candidates?

Based on experience at: Machine Learning Engineer, Apple
Summarized By: Jeff Musk on Tue Mar 10 2020
The questions that we usually ask are basic software engineering questions just to establish a baseline but there is nothing trivial, they are things that we actually use on the day-to-day work since that's what matters in the end and how we evaluate the candidates. Then we also ask some open-ended questions that are typically based on products that are already in existence or ideas that we're thinking about or see Apple moving toward but we don't give that information, of course or any of the specifics. So when answering those questions, the qualities that we're looking for is a strong understanding of the underlying fundamentals of machine learning. So if you just pitched a logistic progression, it's good to know how it works, how it's optimized, what's the decision boundary like questions like that as well as what are alternatives to the model that you've chosen to talk about. In addition to a strong understanding of the principles, we also want a quantitative emphasis. So you're super into numbers, you want to attach a number to everything that you say, nothing is hand-wavy, you can make the high-level quality of statements, but only if they're asked for it if we're saying something like, what would be a good early stopping point and you say, like when the loss decreases, just say ok, when it hits this number or when we change point detection, it's no longer decreasing something like that.

What are different entry-level jobs and subsequent job pathways that can lead students to a position such as yours?

Based on experience at: Machine Learning Engineer, Apple
Summarized By: Jeff Musk on Tue Mar 10 2020
I have tended to see most entry-level machine learning engineers are either coming straight out of Master's program or they have one or two years experience as a software engineer and then have taken a class or done some research at home in order to have a base-level understanding of machine learning and basically something to build on top of is what we're looking for and that's what I see most commonly. I've also heard of other people doing really cool stuff such as scientific data journalism and just falling into your machine learning naturally. So there are no hard requirements, it's just based on your knowledge and experience.

How did the school prepare you for your career? Think about faculty, resources, alumni, exposure & networking. What were the best parts?

Based on experience at: Machine Learning, Natural Language Processing, Massachusetts Institute of Technology
Summarized By: Jeff Musk on Tue Mar 10 2020
MIT is an incredible place, I loved it there so much. I learned an amazing amount, both technically and from a higher level, like soft skills perspective and it's hard to pin down exactly what those were but after just two years at MIT, I felt like I was able to tackle anything, deconstruct whatever I was looking at in two parts and then figure out the best way to forward it as well as a backup plan on solving that particular component. Then, of course, there were also amazing resources, we had GPU etcetera, which I don't think is totally necessary to get into machine learning. I think you could do some really cool stuff with smaller data sets and not super large architectures that'll help you get a job such as mine. Then, of course, alumni are huge. I regularly meet up with alumni both ones that I know and went to school with or have never met, and we just noticed that we're both from MIT and want to chat and then those have helped me to get into Apple as well as I've helped other people to get into Apple, so I would definitely capitalize on the network that you have.

How did the school prepare you for your career? Think about faculty, resources, alumni, exposure & networking. What were the best parts?

Based on experience at: Bachelor of Science (B.S.), Applied Mathematics, Computer Science, Spanish, SUNY Geneseo
Summarized By: Jeff Musk on Tue Mar 10 2020
Geneseo was a very different experience. I felt like MIT was forcing me to really think outside of the box not that Geneseo wasn't but it was thinking outside of the box, in ways that were necessary to break new frontiers whereas Geneseo really helped to train me to get into very good work habits as well as I got an incredible math education. I really like my time there and I've also felt that at Geneseo in a weird way, it was easier to find opportunities and then pursue them and explore my interests. So I think in that sense, the context is also a bit different because, in grad school, I kind of knew where I was going but the same thing goes there, for example, I just had lunch with alumni, happened that she works for apple and it was great, we chatted about our experiences and how much fun we have and how it set us up for the grad schools that we went to after and then she was like, "Oh, there's this other woman, she is from Geneseo and she works here" so I am going to have lunch with her shortly too.

Would you like to share something that is not on your resume? This may include your passions, facing setbacks or adversities, a unique experience, or an unexpected help.

Summarized By: Jeff Musk on Tue Mar 10 2020
I do take care of my fitness and read and write a little poetry, and this just helps me de-stress and to stay levelheaded, which I think is important to anybody. Additionally, I had a lot of family issues when I was in undergrad, and that did offset my goals a bit. It was harder to progress on them because I was also dealing with stuff that was going on at home and I just wanted to make the point that it's totally okay, and you shouldn't beat yourself up about it. You just have to do what you need to do in order to handle both your personal and professional life and if you need to make sacrifices in your professional life in order to help out your personal life, that's fine, I think that people were very understanding.

Do you have any parting advice for students hoping to get to a position such as yours? What 3 dos and 3 don'ts would you suggest?

Based on experience at: Machine Learning Engineer, Apple
Summarized By: Jeff Musk on Tue Mar 10 2020
I think the first do that I would recommend is to have a laser focus on your value proposition. So what is the value proposition is essentially saying this is my contribution or this is my objective so you're going to need to very precisely define what you're trying to do as well as map out any existing work that you can leverage with, like, minimal effort from yourself as in pretty much out of the box and then for everything you do, keep asking yourself, Why is this the best way for me to get closer to achieving that value proposition that I want to do? and if it's not aligned with your value proposition or you're having a hard time justifying it, it's probably not worth doing. The second do I would say and this is something I learned at MIT was to focus on the framing and dedicate a lot of time to get the correct framing. So what I mean by framing is sort of the context that you're setting for the ideas and contributions that you're proposing. You want to really sit down and yourself understand the best way to show this in an objective valuable light if that makes sense. So the flip side of that and this is the first do not is don't stress the truth or over-promise, I think honesty, integrity, and reliability are really everything and it's important to remember that, even like these white lies can be very dangerous and it's much better to do one thing super well than two things in an average way and then, of course, remember this when you're committing to obligations, Can I actually handle this? Do I actually want to promise this? And remember, it's okay to say no. I think another do not is really try not to get blocked by anything. If you are blocked by something, either put it on the backlog and come back to it and focus on something else that is also high priority or ask for help. You should ask whoever is mentoring you or your co-workers or your friends, get their ideas on something just never ever be blocked because then you're not making any progress at all. Then the last do would be to have a vision. I believe in it very strongly because I think that if you don't have a vision, you're always reacting to something and visions are very personal it's what goals you have for yourself so once you define that then I think it's much easier to say, Should I take this opportunity? Yes or no? Why? Because it fits into my vision and I will achieve this part of it or I won't achieve another part of it.