What we look for in a resume

https://huyenchip.com/2023/01/24/what-we-look-for-in-a-candidate.html

When we actively hire, our startup gets 150 - 200 applications each month. I read every single one of them. Sometimes, I’d talk to a candidate and see that what we perceived as their strongest aspects actually weren’t included in their resume. Occasionally, a candidate would tell me that they didn’t expect their resume to still be screened by humans – had they known, they would have written their resume differently.

The resume evaluation process is pretty much a black box for most candidates. And it is so because few hiring managers have publicly discussed this. I thought I should start the conversation.

“Resume” here refers to both the traditional resumes and LinkedIn profiles. If your LinkedIn is current and contains all the information you want to share, that’s perfectly fine. Some hiring managers I know at other companies actually prefer looking at LinkedIn because they find it faster to find the info they need (e.g. company logos, time spent at each company). I’ve also seen candidates who use their personal websites as their resumes, which also works.

Whether you’re interested in applying to our startup, I hope that my perspective can shed some light on what is happening on the other side of the table, and how to create a resume that helps you put your best foot forward, not just with us, but also with other companies. Caveat: Every company hires differently. What’s right for us might not be right for other companies.

Job hunting is exhausting, and sometimes feels like a shot in the dark. I wish more companies would be transparent about what they’re looking for so that candidates can decide before they apply if they are a good fit.

Disclaimer:

  1. We hire mostly infra and ML roles, so this post might not be applicable to other roles.
  2. We’re very small so what we’re looking for is specific. If you’re not a good fit for us right now doesn’t mean you aren’t a good fit anywhere else, or won’t be a good fit for us in the future.

Table of contents
…. 1. Our overall approach
…. 2. We look for demonstrated expertise, not keywords
…. 3. We look for people who get things done
…. 4. We look for unique perspectives
…. 5. We care about impact, not meaningless metrics
…. FAQs
…….. Do resumes have to be one page?
…….. What to put on my resume if I have no experience yet?
…….. Do I need a cover letter?
…. Misc tips


1. Our overall approach

Startups like us and big companies, say Google, hire very differently. Therefore, it makes sense that a candidate should apply to a startup differently from how they’d apply to a big company.

Here is what we do, which might differ from what big companies do.

  1. We don’t use an automated system to screen resumes.

    We read every resume. This means that a lot of tricks you’ve read about how to beat automated screening such as include certain phrases of job descriptions in your resume, repeat “hot” keywords, fill your resumes up with random metrics, etc. doesn’t work on us. They can even hurt when you apply to companies like us, because the resume space used for these tricks is the space you aren’t using for things that are relevant to us.

  2. We look for reasons to say yes.

    For a company that receives a large volume of resumes (much larger than us), they’ll need a way to quickly filter out resumes, aka quick ways to say no. For example, their automated algorithm might reject a resume if it lacks certain years of experience or lacks certain keywords. For us, we evaluate each application holistically, and if your application demonstrates the aspects we’re looking for, as discussed in this post, we’d want to get on a call to get to know you more.

2. We look for demonstrated expertise, not keywords

About 90% of resumes we see have a long list of skills. Here are just some examples. link

Initially, I was confused about the purpose of this list, because:

  1. It’s unconvincing. There’s a big gap between “saying that you know something” and “being good at it.”
  2. It can weaken your resume. For example, if you consider common skills like Jupyter notebook and git your competitive advantage (the only reason to include them in your resume), I would automatically assume that you have no other competitive advantage.
  3. Expertise takes time to acquire. I’m skeptical of people who claim to be experts in too many things.

As I tried to figure out why, I found a world of articles that give tips on how to beat automated resume screening. These articles claim that at large companies that receive an influx of resumes, recruiters set rules to surface resumes that contain certain keywords. Candidates, not sure what these keywords are, populate their resumes with all the keywords they can think of.

That is a bad strategy for applying at startups like ours. We’re not looking for keywords. We look for demonstrated expertise. Here are a couple of ways to demonstrate your expertise.

  1. Show how you acquired and use that skill in your job

    Consider these two candidates who both mention Flink on their resumes. Which one would you want to talk to?

    • Candidate A has Flink as one of the 30 items on their Technical skills box.
    • Candidate B explained how they used Flink in their last job: “worked on a feature computation platform built on top of Apache Flink which processes 100,000 events per second and serves 10 different ML models.”

    If during our interview, candidate B can tell me why they chose Flink over other stream processing engines, what issues they’ve encountered, and what changes they wish to see in Flink, I’d be sold!

  2. Share your expertise on public channels such as: StackOverflow answers, open source contributions, papers, blog posts

    Here are some examples that convinced me of a candidate’s expertise in certain technology:

    • A candidate sent us their StackOverflow profile where they have answered over 100 questions on JavaScript.
    • Another sent us a list of their merged PRs to PyTorch.
    • Another sent us a blog post that covers in-depth detail about X that made our team go: “whoa, they really know about X.”

    We understand that not everyone has time to contribute to public discourse, so #2 is optional.

3. We look for people who get things done

A lot of people get attracted to a startup for its vision: what this startup can be in the next 5 or 10 years. However, once you join the startup, what really matters is the day-to-day execution. When I was at Snorkel, our CEO kept telling us: “Startups don’t magically move faster than big companies just because they are startups. Startups move faster because they have to.” We have to get things done. To be able to move fast, we need people who aren’t afraid to roll up their sleeves and tackle difficult challenges.

There are two traits we look for to evaluate whether a candidate can get things done: initiatives and persistence. If you have experience that demonstrates these, please do include them in your resume.

Initiatives

To get anything done, you need to start it. There are a lot of people who can see a problem, but few who would do something about it. We want people who, when seeing a problem, proactively do something about it without waiting to be told. We look for initiatives a candidate has started before, such as:

  • A student club, an event, a team, a project at work. A project that you initiate doesn’t have to be about something new. Projects like writing documents or improving existing CI/CD are also extremely valuable.
  • A startup. A founder told me that his best hires are people who have previously founded a company, even if that company didn’t work out. They know the drill.

Persistence

Once we’ve started something, we need persistence to drive it to completion. Some signals of persistence that I’ve seen:

  • Daily contribution to GitHub for one whole year.
  • Being good at anything that requires consistent effort, e.g. a Kaggle master, a chess master, a professional athlete, etc.
  • Having previously joined another early startup before and stuck around.

I’m a bit hesitant when I see candidates who change jobs too frequently, e.g. 5 different companies in 5 years. I understand that not all jobs work out, so it’s okay, sometimes necessary, to move on. However, consistent job jumping can imply that you get bored or give up easily. A year at a job is hardly enough to get deep into a problem space and make significant contributions.

Working at a startup can be tough, and we don’t want someone who joins and leaves at the first sign of challenge. We want someone to stick around and help us through different phases. This process, I hope, can also provide you with a diverse set of experiences to prepare you for whatever you want to do after.

4. We look for unique perspectives

Startups like ours exist to solve a problem that few others can solve. This requires us to see the problem from a perspective that most people don’t. For that reason, we’re not looking for group thinkers or hype chasers. We look for people who can bring a unique perspective to the table.

Your unique perspective can be demonstrated in your career/life choices, your writing, your side projects.

Recently, I had a panel discussing resume screening on our MLOps Discord, and Kyle Kranen, a senior deep learning engineer from NVIDIA, discouraged candidates from listing cookie-cutter projects on their resumes, as they take away space for things that are uniquely your strengths.

Cookie-cutter projects happen when someone simply replicates a common solution to a popular project – titanic, sentiment analysis of tweets, stock trading, chatbots – without any new approach or insight. I see them in about ⅓ of all the resumes we’ve received. These projects are good to practice on. I myself practiced on them when I started. However, they won’t help you stand out as a candidate.

Examples of interesting projects that I’ve seen:

  1. A personal website that looks exactly like MacOS.
  2. A CLI tool to autocomplete your bash commands.
  3. Matcha-making robot arm.

5. We care about impact, not meaningless metrics

I recently asked on LinkedIn how resumes have become so metrics-oriented. Almost all resumes I’ve seen are full of metrics. Metrics are good when they serve to make a point. However, many of these metrics leave me more confused than impressed. For example, here are some of the actual metrics I’ve seen:

  • Built a Transformer-based model that achieved an accuracy of 89% (no info on the task or the baseline)
  • Work on 15 different domains.
  • Participated in over 300+ code reviews (not sure what this is supposed to show. If I do a code review a day, it’d only take me a year to reach this number, which really doesn’t say much.)

People were quick to point out to me: the most common advice for writing resumes is “quantify your impact,” e.g. how much money you’ve saved for your company, how much faster you’ve made your program. Due to this advice, many candidates have told me that they need to have metrics on their resumes. Sometimes, when unable to quantify their impact, they settle for what they can quantify.

Unfortunately, not all that are quantifiable are impactful. Showing the number of code reviews you’ve participated in, without any context, doesn’t say anything flattering. It’d be better if you could show how the learnings from all these code reviews are relevant to the role you’re applying for: e.g. how they helped you become a better engineer.

Clarify your contributions

Every job seeker should make their resume look as good as possible. I’ve talked to many candidates who are uncomfortable talking about their achievements, either due to humility or shyness. This is especially common among female candidates that I’ve talked to.

On the other hand, I’ve seen many candidates who take this too far. For example, last week, a candidate wrote that they have extensive experience in deploying large scale systems because of their one Amazon internship.

Often, I’d see a candidate who takes credit for the entire team. An applicant said on his resume that he “deployed an online prediction model that served 10M daily active users.” During our interview, I found out that he wasn’t at all involved in deployment nor in scaling the prediction service. His task was wrangling data from an S3 bucket. To be clear, this is an important skill, just not what we were looking for. We explicitly said we were looking for experience in deploying models in production. This interview was a waste of time for both of us.

Metrics that we’d love to see

I do care about metrics. I especially appreciate metrics that are presented with two components:

  1. How they can be tied to business objectives.
  2. Your contribution in achieving that metric.

Here are some of the metrics that we’ve found convincing:

  • Part of a 2-data-scientist team that owns feature engineering for a fraud detection system. Added 200 new features, resulting in a reducing the false positive rate from 20% to 15%, while keeping the false negative the same.
  • Built caching strategy using application-level caching & Redis for 2000 QPS, leading to a decrease in response time by 50%.

Good impact - link

Screenshotted from the resumes submitted to our resume critique session

Not all impact has metrics

Fixing a bug or helping a coworker out is impactful, but hard to measure. It’s a great signal when your work receives awards and recognitions, such as:

  • An internal company award (e.g. intern of the year, MVP, founder award, winning hackathon)
  • Promotions, e.g. I was impressed with a candidate that went from being a data scientist to a senior MLE to a staff MLE within 4 years.
  • Glowing recommendations from previous teammates and managers. We actually made an offer to a candidate after two of their references talked about how much this candidate helped and mentored them.

FAQs

Do resumes have to be one page?

A candidate told me, during our interview, that he didn’t include his side projects in his resume because he was worried that it’d take him over the one-page limit. To be clear, I’m NOT going to reject a candidate just because their resume is over one page.

The one-page limit suggestion is to help you be concise. Like the French mathematician Blaise Pascal once said: “I have only made this letter longer because I have not had the time to make it shorter.” The longer your resume goes on, the more chance that your biggest strengths will be buried among less important details.

The goal of a resume is not to show everything about you. The goal is to put your best foot forward to show a company why you’d be an excellent addition to their team. Rarely do I see a candidate whose best foot forward can’t be contained within one page.

If you have a lot of experience, you should have more options to choose from to highlight your strengths. A 3-page resume without any focus or highlight shows the lack of judgment for what is important and concise communication.

What I find a lot harder is for candidates new to the field to have sufficient things to fill in one page.

Some tips to shorten your resume

  1. Find repetition and remove them. For example, do you need to list all 5 of your personal projects, or the top 3 would suffice?
  2. Remove irrelevant experience, even if that creates gaps in your resume. Personally, I don’t care about gaps – everyone needs time to recharge and take care of personal matters.
  3. Most resumes I’ve seen can have shorter education sections.
  4. Remove common skills, e.g. git, notebook, MS Word/Excel.
  5. Find a more efficient format, e.g. using multiple columns.
  6. Reduce font size, page margin.

What to put on my resume if I have no experience yet?

This is a tough question. If you don’t have the experience a role needs, it doesn’t matter what you put on your resume, that role is just not going to be a good fit for you.

I have, however, been impressed by candidates who make up for their lack of experience in our field with impressive experiences in other fields.

Personally, I was once given an internship at a startup, even though I had none of the experiences they were asking for. I reached out to the CEO explaining to him the problems I worked on in the past and how the skills I acquired can be transferred to the problems his company was working on.

It’s a long shot, but it’s a shot.

Do I need a cover letter?

The order in which I read an application: resume -> cover letter. If you have stellar experience and skills, we’d want to talk to you even if you don’t have a cover letter. Some hiring managers told me that they don’t read cover letters at all.

I, however, do appreciate it when a candidate writes a cover letter that explains why they want to join us and why they think they’re a good fit for the role. For candidates with unusual transitions (e.g. switching from another career into machine learning), a cover letter could also be a great place to explain their transition.

If you write a cover letter, keep it concise. A cover letter doesn’t have to be a PDF. It can just be an email.

If an information is important, include it in your resume instead of a cover letter. Sometimes, candidates put the important info in the email they sent to our team’s email address, which might not be entered correctly into our application tracking system.

Misc tips

General

  1. If you’re applying to a small startup, say, of less than 20 people, spend some time researching who works at that startup and email them directly.
  2. Send your resume as a PDF instead of an editable format like Microsoft Word or Google Docs. The editable format might not render correctly on other people’s computers.
  3. If you can get someone who used to supervise you to talk about how great you are, include their quote in your resume. Quotes from friends/family don’t count.
  4. Don’t use abbreviations unless you know for sure your audience knows what you’re talking about.
  1. If you’ve contributed to open source projects, include links to the PRs or a public architectural design you’re the most proud of.
  2. If your GitHub has a lot of repos, pin the important ones on your homepage (you can pin up to 6). You can also write a README to guide your visitors on what repos they would look at.
  3. Don’t include a link to your GitHub link if it’s empty.
  4. If you have publications, link to your Google Scholar profile.
  5. If you’re a co-author of a paper with multiple authors, bold your name in the author list.
  6. If you have more to show than your resume allows, create a personal website. Assuming that you have basic coding skills, it’s fairly easy to create a free personal website using GitHub Pages.

Education

  1. If you’re still in school, put education earlier in your resume, as it helps the person screening your resume knows where you are and what you’re looking for. If you’ve been working, put your work experience first.
  2. If you’re still in school, list your expected graduation date so companies know when you can start working full-time.
  3. If you’ve been working for 2+ years, remove your GPA and coursework. I care more about your work experience.
  4. Similarly, course projects should only be listed if you think they’re better than the average course project.

Resume resources

There are many resources on how to write a resume. Here are some of them:

  1. Reddit has a great guide on engineering resumes
  2. Writing a great resume : YC Ultimate Startup Job Guide
  3. Google Recruiters Say Using the X-Y-Z Formula on Your Resume Will Improve Your Odds of Getting Hired at Google
  4. Why Resume Screening Doesn’t Work
  5. Companies Need More Workers. Why Do They Reject Millions of Résumés? - WSJ

Conclusion

Resume writing is a one-off process: it’s the art of arranging what you already have in a way to best help you stand out. It’s hard to write a good resume without having things to put on it.

Resume building is an ongoing process: continuously improve the experience, skills, recommendations, etc. that you have. If you’re good at building, you might not even have to write a resume. If your work catches companies’ attention, they’ll reach out to you.

A few friends told me that “resume building” has a bad connotation, as it might suggest that we should only do things to put on their resumes and ignore important but less shiny things like fixing a bug or helping a coworker out.

What we’re really looking for isn’t the best resume or the best resume builder, but a team member, someone who cares. Resumes might not be the perfect tool to show that, and that’s why we err on the side of talking to that person to find out.

Our startup is still young and we’re still learning. I’d love to learn about this process at other companies, and hear from you what we can do to make the process easier for you.

And of course, we’re hiring for strong infra and ML engineers!! If you think we might be a good fit for you, do reach out.