Informal Mentors: Chip Huyen on Her Career, Writing, and ML

[ informalmentors learning career machinelearning writing ] · 11 min read

Recently, I had a chat with Chip Huyen, a computer scientist and writer. She’s someone I greatly admire. I had read about her life and career and was curious how she did it.

Little did I know that her story is more inspirational than I had thought. She went from learning English on her own, to attending Stanford, and then joining NVIDIA and now, SnorkelAI (with plenty of setbacks in between). We also chatted about her love for writing and how it changed her life, as well as her thoughts on machine learning in production.

Regardless of what stage of life you’re at, I hope you’ll be as inspired by Chip’s sharing.

Hi Chip, would you like to introduce yourself to readers?

Hi, I’m Chip Huyen, a writer and computer scientist. I develop tools and best practices for bringing ML research into production.

Chip's About Page

Chip's About Page

That 3-year round-the-world trek is amazing. I can’t think of anyone else I know who’s done something like that. How did that come about?

Well, that was actually motivated by failure.

While in high school, I became obsessed with Stanford. People thought I was crazy—I grew up in a small village and didn’t learn English as a child. Even though everyone told me to apply to easier colleges, I had eyes on only Stanford.

So when I got rejected, I didn’t know what to do next. A speaker I met at a conference in Malaysia offered me a job. I took the job and went to visit Brunei for 3 days. There, a lady offered to drive me back to Malaysia and I thought: “Wow, crossing borders is that easy.” So I decided to keep on crossing borders to see how far I could go. That’s how the 3-year trip started.

You eventually attended the college of your dreams. How did that happen? How was it different from your first application?

While traveling in those three years, I wrote a lot. I hosted a newspaper column and published two books. As a result, my English and writing got better.

The second time I applied, I was a different candidate. Character development, I suppose. Also, all that writing practice helped me write better admission essays.

By all accounts, you’ve been very successful in your career. You got an internship with NVIDIA and then joined them full time. What did you have to demonstrate to get that internship?

First, I have to say that I got a lot of help along the way. I’ve been very lucky in life.

I didn’t have a lot of success. Many of the roles I applied for didn’t work out. I was bad at selling myself. I guess this is part of the Asian culture where we don’t like to market ourselves.

While attending the career fair in my first year, I received feedback that I still remember till today: “Wow, your resume is really sparse”. I got rejected for most the summer internships I applied for and spent time conducting research on campus instead. (Author’s note: She was a research assistant in the Astronautics Department).

In addition, I was surrounded by classmates who were much better than me at engineering since I only started coding in college and they a head start of years. I felt insecure.

To get around this, I became a teaching assistant at Stanford. (Author’s note: Chip TA-ed for CS106A: Java programming and CS106B: C++ programming). I saw teaching as a way to learn. I spent a lot of time at office hours and asked a lot of questions on the class discussion forums. When I graduated, Piazza (a class forum platform) sent me a bag of swag! This was because I had logged in 18 - 20 times a day.

Along the way, I saw an interesting TED talk by Sean Gourley and reached out to him. He told me he had just founded Primer.ai. That was how my second-year internship came about. When I joined, it had 6 people. It has grown since then. (Author’s note: Now, they have about 120 employees and have raised 58 million.)

At Primer, I started to use TensorFlow. However, I was struggling to find good resources on it. I asked some of my professors if they could teach a class on it, but they didn’t have the time. They suggested that I teach it instead, as a student-initiated course.

That was how CS20: TensorFlow for Deep Learning Research came about. (Author’s note: It’s also known as the Stanford TensorFlow Tutorials.)

That class somehow got popular. NVIDIA and Netflix reached out to me. That was how I got my internship at NVIDIA that eventually turned into a full-time role.

For people who are getting started in their careers, I think they shouldn’t go on the standard path which everyone is on. When you do what everyone else is doing, you’ll have to compete with everyone. When you do your own things, you’ll only have to become better than your past self. So pick a path that best suits you.

After one and a half years at NVIDIA, you left to join SnorkelAI. What was your thought process on that decision?

I take on each role knowing what I want to get out of it.

At Stanford, I wanted to teach because I wanted to learn the material better and improve my technical communication skills.

For my first job, I wanted to learn how big companies operate so I joined NVIDIA. I had a wonderful time there, met great friends and mentors, and it was a great learning experience.

Now, I want to learn how to start and grow a company, as well as the business aspects of it. I eventually want to build my own start-up. I joined SnorkelAI and am learning a lot right now.

AFAIK, SnorkelAI has been in stealth until recently. How did the opportunity to join SnorkelAI come about?

One thing I’ve learned is that good startups are always hiring. Startups grow fast and need people.

You need to know what startups are out there. While in stealth, many startups hire from their networks. You want to be plugged into the network to hear about these startups, and for them to know about you.

In addition, when people start something, even if they don’t talk about it directly, they might be talking about things related to it. So you should pay attention to who is talking about the things you’re interested in, try to reach out to them and learn about what they’re doing. Maybe they’ll tell you they’re starting a company :)

For SnorkelAI, I read the papers and wanted to learn more. I reached out to the authors. This was how I learned about SnorkelAI and eventually joined them.

Moving on to a different topic. You’re a prolific writer and have written a lot of useful content, such as your summaries of machine learning conferences, as well as your analysis of tech compensation and ML tools. Why do you write?

I mostly write for myself. I enjoy writing.

My writing usually starts with a question. For example, I was curious about how engineers were paid. This is how the analysis of tech compensation came about. The same goes for the analysis of machine learning tools. I wrote about those to satisfy my curiosity.

For the conference summaries (ICLR 2019 and NIPS 2019), I wrote about them as a way to remember better. I know if I don’t write about it, I’m going to forget about it.

Even though I really enjoy writing, I don’t think I could ever be a writer for hire (unlike being an engineer for hire). I think that once there’s an external motivation for a behavior, it’s possible that I might stop enjoying it as much. I enjoy writing too much to put it at risk.

How has writing helped you?

Wow. Writing has helped me a lot. Like a lot a lot. I would not be half the person today if not for writing.

I would say that writing got me a job, got me out of poverty. It’s also because of writing that I got accepted at Stanford.

Writing helps me learn. Writing helps me organize my thoughts. Whenever I publish something, I get incredible feedback from my audience. Sometimes, this feedback is from people outside of my bubble who have different perspectives—this is very valuable.

Oh, I tweeted about why I love writing previously. Let me share it here.

Now, on to machine learning. You share a lot about machine learning in production, such as through your writing and tweets. What do you think people don’t discuss enough about ML in production?

I think many challenges with ML in production already have solutions in the engineering and DevOps space. Adopting the best practices from engineering should solve 80% of the problems. It’s a number I made up, but you get the point. Maybe people in data and machine learning are unaware of those solutions, or too lazy to learn how to use them.

I think one of the biggest challenges is ensuring that AI is doing more good than evil. Historically, technological progresses have allowed those with technology to oppress those who don’t. For example, the industrial revolution allowed many European nations to grow, but it also allowed them to colonize smaller, lesser developed countries. Now, we see that some countries are very good at AI; I’m concerned something similar could happen again.

(Author’s note: Most ML advancements and capabilities lie within a handful of tech giants. I wonder how we can help smaller companies also benefit from machine learning.)

What’s your advice for small to medium size companies starting to work on deploying their first machine learning models?

Hmmm, this is a hard question.

For me, I like fundamental ideas. I like best practices. There’s a saying I like: “Innovate where you can. Where you can’t, use the industry standards.” For SMEs, instead of chasing fancy new things, I think they should choose less fancy but more stable solutions.

Many enterprises have already seen some benefits from AI. I think it’s important for SMEs to consider ML solutions, and it’s good to start simple.

What are you learning now?

Right now, DevOps.

How do you learn?

I mostly learn through hands-on experience, including work. At work, I learn a lot from my colleagues, who are awesome and very patient with me. I also enjoy reading books and think that books have less noise relative to what’s available online.

I also try to write about what I learned. Writing helps me learn better.

Concluding thoughts

While chatting with Chip, I was blown away by her openness and authenticity. She was disclosing all the challenges she had faced, such as the rejections in her college applications and initial job search.

However, she turned each setback into an opportunity. The Stanford rejection led to a three-year sabbatical where she honed her English and writing skills. Her insecurity and job rejections lead to a TA role where she deepened her knowledge in the material and helped fellow undergraduates with class.

Similarly, the difficulty she faced with learning TensorFlow during her internship led to designing and teaching TensorFlow as a TA-led class. The class caught the attention of various machine learning teams and led to her role at NVIDIA.

We’ll conclude by reiterating Chip’s advice: “You don’t want to take the standard path which everyone is on. This leads to competition with many people. Instead, pick a path that best suits you.”

Thanks to Chip Huyen for the interview. Thanks to Yang Xinyi and Chip Huyen for reading drafts of this.


Share on:

Browse related tags: [ informalmentors learning career machinelearning writing ]

If you enjoyed this...

Get weekly updates on effective data science, learning, and career.

    Welcome gift: A 5-day email course on How to be an Effective Data Scientist 🚀