How to Be Interviewed
Earlier this week I gave a short presentation to some undergrads at the University of Toronto on how to be interviewed for internships. The points I made are listed below; as always, I’d be grateful for feedback.
Why Should You Listen to Me?
- Worked at six universities, a dozen companies, and a non-profit over 40 years
- Supervised over 20 undergraduate interns and hired that many again for other people
Why Shouldn’t You Listen to Me?
- I graduated in a tech boom 40 years ago — you are facing the toughest job market I’ve ever seen
- You’re probably not a middle-aged straight white guy
- You’re probably not applying for the same jobs I would
The Pipeline (Fall 2024 Edition)
Step | Count |
---|---|
Ad online (days) | 5 |
Applications | 1776 |
After first manual screen | 289 |
After second manual screen | 45 |
After HR screening call | 28 |
After 1/2 hr with me | 12 |
After coding interview | 8 |
Offers | 4 |
Before We Talk to You
- If you don’t meet the legal criteria, please don’t apply
- Page 1 is the only page that matters
- Don’t waste space on “I’m a hard worker, quick to adapt, and a good team player”
- Because nobody says “I’m lazy, stubborn, and anti-social”
- Tell me your GPA
- I’ll wonder about it if you don’t
- But note that I prefer consistency (B-B-B-B) to inconsistency (A-C-A-D)
- If you say “42.3% improvement in customer retention”, I’ll ask for details…
On the Phone Zoom
- First screen is 15 minutes with HR
- If they find out you have misrepresented yourself, the conversation is over
- Second is 30 minutes with me
- Then a 50-minute coding interview
My Script
- Introductions
- Icebreaker (2 min)
- What was your favorite course and why?
- What about your least favorite?
- Walk me through the most complicated thing you’ve built (5-10 min)
- Tech stack
- Tech decisions you had to make and how you made them
- How did you know it actually worked?
- What would you do differently if you had to do it again?
- Design question (5-10 min)
- Initially present a simple problem with a straightforward solution
- Then add a wrinkle that might require a change to that solution
- Add another complication that definitely requires backing up and re-thinking
- Plotly (3-5 min)
- What we build
- How we’re organized
- Positions and projects
- Four open positions (Jan-Aug 2025)
- Probably work on 2-3 projects in that time
- Probably just one team, but who knows?
- Questions?
What I’m Looking For
- Can you explain technical details?
- If it’s on your resume, I’m allowed to drill down
- If you dodge, I’ll definitely drill down
- Can you explain why you built something as you did?
- Can you think aloud / think with me?
- Do you have interesting questions?
- I.e., have you looked at my company’s website?
Coding Interview
- Your CV tells me that you can write code
- But can you debug?
- A better indicator than LeetCode exercises
- We send a hundred-line program with some bugs and watch the candidate find them
- They are allowed to use web search, AI, etc.
- We want to see how they actually code
- But we have to be able to see everything they’re doing
- What we’re looking for
- How methodical are they?
- How well do they use their tools?
- Prefer debugger to print() or console.log()
- Bonus marks if they create a test case without being prompted
- Do they ask for clarification when they need it?
How You Can Help Each Other
- Read and critique each other’s CVs
- Practice Q&A with each other
- Learn to use your tools well
- Build a personal website
- GitHub Pages is fine
- Be kind
- You are not really each other’s competition
How to Improve Your Chances of Getting Re-hired
- Learn how to participate in a status meeting
- Progress, plans, and problems go up
- Context and priorities come down
- Learn how to review code software designs
- Learn how to estimate how long things will take
- Optimists are tiring…
- Learn (about) the other 90% of the business
- Ask to have a coffee with DevOps, Product Management, Customer Success, etc.
- Be kind