2. Who are we?
Anthony Rotoli
Building interviewer network
Loves Seattle!
Loves good music and food :)
Formerly at Microsoft
Kevin Bao
Technical Lead
CMU SCS '13
Formerly at Facebook and
Microsoft
Avid paraglider
Zach van Schouwen
Interview R&D Leader
Formerly at Google and
Goldman Sachs
Amateur urban historian
3. What is Karat?
First Round Interviews. We conduct all of the first round
technical interviews for these companies.
Questions and Scoring. Our interview questions are battle
tested and matched with an accurate and fair scoring
methodology.
Professional Interviewers. We’re building a network of
highly-skilled engineers who love interviewing.
Fair and Accurate Assessment. We’re determined to
develop the most accurate, unbiased, predictive technical
assessment in the world.
Turbocharging hiring through analytics. Leveraging data
through the entire process to get more intelligent.
4. How did Google, Facebook, Microsoft,
Amazon, etc. become the most successful tech
companies in the world?
ANSWER:
5. How did Google, Facebook, Microsoft,
Amazon, etc. become the most successful tech
companies in the world?
ANSWER: You guessed it… by sorting linked
lists way faster than everybody else.
7. What’s been your experience in
interviews?
● Were you comfortable? Or intimidated?
● Were the questions relevant to the role?
● Did you leave the interview knowing more about the company
than when you went in? Did the company really learn anything
about you?
8. How do we make
interviews more
valuable, both for
you and for the
company?
9. Here’s what we’ve found
What works well
● Human interaction provides insight
beyond tests
● Adaptive problem solving leads to
meaningful conversations
● Passionate technical interviewers
provide great candidate experiences
What could be better
● More relevant interview questions and
consistent scoring methodologies =>
less biased & more accurate assessment
● Interviewing pulls engineers from their
core job and causes interviewer fatigue
● More bandwidth for interviews => more
candidates fairly assessed
● More flexibility in interview scheduling
=> candidates interview when they want
to/are able to
10. The typical recruiting process
● Express initial interest
○ Career Fairs
○ Applying online - best to email your recruiter directly
○ Attending company talks and other events
● First round of interviews
○ Some companies will send an offline coding challenge before this
○ Typically conducted via video, on your campus, or over the phone
○ Expect 30-60 minutes with some resume discussion and coding questions
● Final round of interviews
○ Typically in person at a company site
○ Expect 3-6 interviews lasting around 60 minutes each
● Offer & Decision
○ Let your recruiter know about other opportunities you are considering
○ Be honest about what you need
○ Negotiate
11. Prepare for your interview
● Research and practice online!
○ Wikipedia; Cracking the Coding Interview; Codility;
HackathonHackers
● Learn about your target company, and what they ask in the
interview.
○ Learn the vocabulary in the job description.
○ Find out what coding environment you'll use for the interview.
○ Pay attention to the skills they say they're looking for.
● Do practice interviews!
● Schedule your interview strategically.
12. Get your resume right
● Be persuasive when describing your experience
● … but don't exaggerate. If you say you know Language X, be
prepared for the interviewer to ask you about it! If it's on the
resume, it's fair game.
● If you don't have much professional experience, you can include
academic projects, side projects, open source contributions, etc.
● Frame your experience in terms of how it prepared you for the
specific role you're applying for. Different jobs require different
resumes.
13. Talking about your experience
Provide succinct, easy-to-follow explanations with context. Don't
assume the interviewer is an expert in your subject domain.
BAD: "I spent this summer working at MaxSense where I increased CTR
by 8% for our playables by using Sixpack to switch copy and aspect
ratios."
BETTER: "I spent this summer working at an advertising network,
specifically trying to drive engagement on our video ads by A/B testing
new ad content and formats. I produced a 8% improvement in
click-through rates across the board over six weeks of testing."
14. It's OK to brag! The interviewer wants to be impressed by your skills. Don't be
obnoxious… but don't be afraid to give yourself credit.
BAD: "I helped the team develop new testing requirements. I also contributed
to our new data validation features."
BETTER: "I created new best practices for the team around testing that
increased our code coverage from 60% to 80% in one quarter. I developed the
first proof-of-concept, as well as most of the final back-end code, for our new
data validation features."
Talking about your experience
15. Talking about your experience
● Focus on the experiences that are most relevant to the position
you’re interviewing for
● Be prepared to dive technically into your project and discuss some
of the technical decisions made
● As much as possible, highlight side projects outside of coursework
● If you haven’t developed any side projects yet, start with
something small that you’re really passionate about
16. The Dreaded Coding Exercise
Ask clarifying questions.
The interviewer is already waiting for you to do this. The problem
that they gave you was probably vague, unclear, or incomplete -- part
of the test is whether you can think through edge cases. Take your time
and consider all the possible inputs and outputs.
Don't make assumptions.
You're probably wrong. Instead, ask the interviewer to confirm
your suspicion.
17. The Dreaded Coding Exercise
Talk through it.
You don't want to write code without a plan in mind. Even if you
think the solution is obvious, take a minute to think out loud, or outline
your solution in comments. Often, you'll discover a flaw in your own
plan, or the interviewer will ask you a question you haven't considered.
Be prepared.
Almost every company wants you to write valid code in a
programming language. Choose your language in advance, and learn
its syntax. Learn collection types, generic parameterization, and any
other constructs you would use as a daily programmer.
18. The Dreaded Coding Exercise
Remember -- it's not that hard.
Sure, the problem seems daunting. But there must be a way to
deal with it in the allotted time, or nobody would get hired. And in fact,
there's almost always a trick.
Break down the problem.
Don't try to write a full solution right off the bat. Try to make a
skeletal outline. If there's one piece of the problem you know you'll
have to solve, write a function signature for it and forget it. Write
pseudocode. Write comments. Get something on the board that you
can build on.
19. The Dreaded Coding Exercise
Consider edge cases.
Every technical interviewer is looking to see how you handle edge
cases. Exhausting the space of possible inputs to a given problem
should be the first thing you do.
Ask the interviewer what they want.
Are they looking for a brute force solution? An algorithmically
optimal one? Pseudocode? Production-quality code? Clarify the
expectations before you start working to produce the right result.
20. The Dreaded Coding Exercise
Remember… the interviewer wants you to succeed.
Nobody likes watching a candidate struggle in an interview. If you're
really stuck, there's nothing wrong with asking for help. The way you
integrate feedback from another engineer is just as important as the
code you write yourself.
21. Talking about the company
Ask questions.
It's important to show interest in the company and the team.
Unfortunately, most interviewers still have a lot of subjective
leeway in making recommendations to hiring managers. The more
questions you ask, the more the interviewer gets to talk -- and at the
end of the interview, they feel that they connected with you more than
they did with other candidates.
22. Talking about the company
You're already on the team.
When you want a promotion, the standard advice is to
demonstrate that you're already performing at a higher level. The
same advice applies at an interview -- act like you've already been
hired. Ask what you'll be doing on your first day. Ask how the team
plans to teach you about their code and their best practices. Ask about
the direction the company is headed. Ask, ask, ask.
Be memorable.
You know you'll be asked to explain your background. Have a
concise one- or two-sentence summary of your career ready to go.
23. Don’t forget
● Before: PRACTICE! :) and research
● During: Do your best to relax - go into it like a discussion with a friend
or colleague.
● During: Ask plenty of questions - clarify anything you don’t know
before attempting to provide a solution.
● After: Don’t get too discouraged if you don’t make it through the
process. Interviewing isn’t perfect, don’t let a false negative impact
your ambition.
24. CMU specific resources
● Paying attention in classes help
○ 15-251, 15-210, 15-451 help instill a problem solving mindset
○ 15-213 is fundamental
○ People familiar with CMU will often times ask about 15-410 (it's a plus!)
○ 10-601 is hot right now for getting a job
■ Pre-requisite for 10-605, which is more practical (and fun)
● Go to job fairs and company talks
● Your peers and alum
25. Interview Science @ Karat
What makes a bad interview?
● Conscious and unconscious bias
● Subjective requirements
● Frightened candidates
● Low signal-to-noise ratio
● Meaningless "quiz" questions
26. What makes a Karat interview different?
● Conscious and unconscious bias
Professional interviewers peer-reviewing each other's work
● Subjective requirements
Objective, concrete evaluation metrics that measure specific competencies
● Frightened candidates
Interviewers screened for interpersonal skills, and who put candidates at ease
● Low signal-to-noise ratio
Constantly refining our data and measurement points to improve assessment quality
● Meaningless "quiz" questions
Targeted questions relevant to actual engineering work, tested for consistency & quality
Interview Science @ Karat
27. Do you have ideas that can make
interviewing better?
We’d love to hear it!
Chat with us anytime: anthony@karat.io
Free practice interviews: karat.io/university
Follow us: @karat
Find this deck at: