ace the tech interviews -
Post on 22-May-2015
801 Views
Preview:
DESCRIPTION
TRANSCRIPT
Ace the Tech InterviewThe ultimate 1-hour guide to overcoming your
fear of interviewers and becoming superhuman.
Top Tech companies are AWESOME● Surfing in the Pacific
● Party at Bill Gates' house
● Meet great people like Bjarne Stroustrup, Guido van
Rossum, ...
● Get free food, gym, t-shirts, beer, ice cream
● Work with some of the best people in the world
● Change the world and make your grandma proud!
But only 1 in 100+ lands a job there
Most people don't know how to do the interview well
We may be able to help
● Between the two of us we've done 6 internships at
Google, MSFT, Nvidia and we've worked for 10+
different companies.
● Combined work experience of 15+ years
● We have interviewed dozens of people
Do you have these concerns?
● Your algorithm skills are shaky
● You freeze when you don't know the solution to a
problem
● You are very nervous during the interviews
● You aren't sure what to put in your CV
● You don't know how to get an interview
one VERY BIG idea
Getting an interview
● Through the site - a queue of 1 mln people
● Through a referrer - you are special
How to find a referrer?
The BIG idea
Tricks & Actions
● Short term:○ Open FB or LinkedIn and explore your network
○ Think about groups that you are part of
○ Use the university: career center, profs, other
students
● Long term:○ Join open source projects with potential referrers
○ Get in contact with potential referrers
Your CVThe quest to be invited to an interview
Yes, you are smart and beautiful
But all the recruiter sees is this
So be careful...
Your CV is Super Duper important
● Recruiters don't know you, care about you, or think you're special
● It's the first, and only, impression you make
● They look at CVs all day long
● Clear expectations of what a CV looks like
It's OK to be obsessed with your CV.
Let's look at 3 CVs2 minutes each
What makes for a bad CV
● Structure○ Standard template, photo○ Creative section ordering○ Poor formatting, weird fonts
● Content○ I don't understand what you did there○ Uncompelling past experience / underselling○ Empty words○ Typos!!○ Lying or strong exaggeration○ "Experience with Microsoft Office"○ Overusing the first person pronoun○ sexy_girl_17@yahoo.com
What makes for a good CV
● Structure○ One page○ Can be read in 20 seconds○ Beautiful, clean formatting and structure○ PDF
● Content○ Education○ Work experience○ Extra-curricular activities○ Awards & Achievements○ Specific details, roles, contributions○ Explain your contributions
Tricks & Actions
● Imitate someone else's structure● Describe each job so that the recruiter can
explain it to a third person● Use bold, but no underline● Play with the font size and margins● Always export to PDF● Make sure it prints well and choose a good
filename
Ask someone to review your CV
At the interviewtwo VERY BIG ideas
Designing an interview process
1. Culture fit
2. Character
3. Intelligence
4. Skills
All parts of the interview are very important.
Preparation is everything
1. Practice
2. Practice
3. Practice
4. Practice
95% happens months before the interview.
Part 1. Non-Technical Questions
The non-important part, right?
● "What is your major at the university and why did you choose it?"
● "What is your favorite Microsoft product?"
● "What was your favorite course at the university? Why?"
● "What is the most challenging project you've worked on?"
A 30-second blitz game
Tricks & Actions
● Compile a Google Doc with a list of all questions you can find
● Invest some time to write a good, thoughtful answer to each question
● Practice in front of the mirror. Each answer should be no longer than 1-2 minutes.
● Go over your CV and make sure you remember the things you outlined very well
Part 2. Technical QuestionsWhat we all prepare for, or do we?
Types of questions
● Programming language-specific
● Algorithmic
● Systems design
● Brain teasers
● What do we forget?
Language-specific questions
● Do you know examples?
○ [C++] What is a virtual destructor?
○ [Java] How does the GC work?
● How to prepare well for these?
Prepare for language-specific q's
● Choose your preferred language carefully!
● What books do you know?
○ C++: (More) Effective C++
○ Java: Effective Java
● Google the most popular such questions
● Code a lot in your preferred language
Algorithmic questions
● Cover the important topics
● Master complexity (time vs memory)
● The only way: practice a lot!○ TopCoder, Codeforces, ...
○ How do these work?
○ How to take the most out of them?
StrategiesHow to act when we hear the problem
Start with...
ASK CLARIFYING QUESTIONS!!!
Simplify the task
● There is a rectangular grid (2D)
● People are at intersection points of it
● What is the optimal meeting point with least
total distance to walk?
● Simplify: solve the problem in 1D
● Apply solution for X and Y axis
● Voila!
Data structures and related problems
● Create a data structure, which supports:○ insert, remove with O(logN)
○ get median with O(1)
● What data structure could help?
● What is that similar to?
● Heaps do that but for min/max element
● What if we use two heaps?
Solve a few examples first
● Cars in a parking lot, from 1 to N
● Parking spots are from 0 to N
● There is one free spot
● Order cars (1,2,...N) with least number of
moves
● Solve a few examples
● Cars are permuted and form cycles
End with...
Test your algorithm with examples!
Tricks & Actions
● Choose your preferred language
● Learn it well and code in it a lot
● Study algorithms from books and online
● Begin solving problems on TopCoder
● Collect strategies for solving problems
● Try using the strategies on real problems
Conveying your ideasDon't be quiet, talk about your thoughts
Conveying your ideas
TALK ABOUT YOUR THOUGHTS!
What to talk about?
● If you don't have the best solution:○ apply the strategies discussed
○ come up with a simpler one, say why it's not good
● Whatever it is, talk about it:○ ideas you have (even if they are distant)
○ any issues you face while solving this problem
○ the solutions you come up with
What interviewers look for
Interviewers want to see how you think and that you can convey ideas well
... so DON'T BE QUIET FOR LONG!
CodingWhen they ask you to write some code
Coding
Whiteboards are not like your IDE
Coding
● Whiteboard (paper) or shared doc○ It is much different from regular coding
○ Write code this way (start with binary search)
● Extract code in separate methods○ helps for structuring the code
○ puts your thoughts in order
● Talk about the code you write
● Test the code after it's ready!
Part 3. Your questionsRight when you think it's all over
Questions to ask to interviewer
● Show interest in the company and team:○ the tasks that they are working on
○ the process they have adopted in their team
○ how they test their code
Practice and do mock interviews!
Applying
Technicalquestions
Non-techquestions
Questions you ask
CV Referrers
Skills Strategy Coding
General CV-related
5 things to do today in 2 hours
1. Open FB or LinkedIn and find one person to refer you (10 minutes)
2. Google the 10 most popular questions and put them in a word doc (10 minutes)
3. Write your first answer to a question in your word doc (25 minutes)
4. Sign up for TopCoder or your favorite site (5 minutes)
5. Solve your first problem on TopCoder (60 minutes)
Questions?
That's all from us!
top related