October 30, 2025 Speaking

JS Conf Talk: Interviewing in the AI Era

A Product Engineer's Guide to Getting Hired

Link to Slides

Description

AI is reshaping how product engineers learn, build, and get hired. Today’s engineering roles attract thousands of applicants, making it essential to understand how the hiring process really works. This talk breaks down the modern interview funnel from resume prep to coding and system design rounds, and shows how to use AI tools to prepare smarter, not harder. Whether you’re interviewing at a fast-moving startup or a large tech company, you’ll learn what hiring teams actually look for, how to tell your story with impact, and how to position yourself for success and land that pivotal role.


01. Prepare with Purpose

The Reality of Today’s Hiring Landscape

Thousands of applicants compete per role. Use AI to prepare smarter, not harder. Refine your thinking, don’t outsource it. Leverage your community. Never Search Alone by Phyl Terry. AI is a tool. Use it to sharpen your skills. Understand how AI is transforming how engineers learn, build, and get hired. Explore how ChatGPT, Claude, Rezi.ai, Final Round AI, and CodeSignal can accelerate learning and prep.

Hiring is a Funnel

Application → Assessments → Interviews → Debrief

Understand where automation (resume parsing, assessments) influences outcomes. Map your prep to each stage. Awareness reduces your anxiety.

The Interview Process

  • Application and Resume Review (1000)
  • Self-Serve Code Assessment (100)
  • Manager/Recruiting Screen (20)
  • Technical Interviews (10)
  • Behavioral Interviews (5)
  • Offer (1)

Transcript

I work on the engineering interview processes. So what interview questions we have, who ramps up to conduct those interviews, how we actually make decisions and how we actually hire engineers. We’ve got over 400 to 500 engineers that we hire across the board of both backend infrastructure, front end and full stack development as well. So it’s really important that we get this right.

We’re not a very big company. We’ve got a couple thousand employees, but as we’ve sort of grown and developed, it’s been very critical to make sure that we’re hiring the right mix of both technical but also people skills. And it’s something that I’ve just been very passionate about in terms of actually helping engineers get in the door, then really advance through their careers, make sure that they’re learning and growing. It’s something that I particularly love.

I was born in Mexico City. I emigrated to Chicago when I was a kid, and so I really grew up in that kind of environment. And as I visit back and forth, you really start to see a little bit of the differences of how Silicon Valley operates compared to any place in the world. Even in Poland, where we also started hiring. It’s just a very different mindset and I want to make sure everyone in the world has that ability to grow into that mindset that will be able to deliver business impact and results.

So the structure of this talk is largely based on just how the interview process works. Making sure you prepare, how do you prove your skills, what types of skills you want to make sure that you’re highlighting throughout different parts, and also just understanding how to leverage AI in a unique way specifically to help you prepare.

Many of you have probably heard of the idea of 10,000 hours. It was something that Malcolm Gladwell championed, saying that the Beatles were fantastic because they played for 10,000 hours in bars, right? And as studies have come out, yes, it’s that time and that energy, but it’s not just the time. It’s about what’s called intentional practice. Through intentional practice where you’re doing a task, you’re iterating and getting feedback on it, and you’re learning and growing because of that task, that is what makes the biggest difference. If you’re just swimming or running at the same exact pace, your time will not actually improve, and how much you’re able to output will not be improved. So it’s about that intentional practice that really makes all the difference in terms of how you start preparing.

You could do 10,000 interviews. That’s one way to get better, but you could also leverage AI to get much faster at that iteration cycle. So the main thing is really understanding that you’re not the only one. Everyone is competing for those same roles. It’s really about understanding that hiring funnel, how to leverage AI to make sure that you’re really thinking smarter and faster, and you’re able to shorten that feedback cycle from when you conduct an interview or you’re simulating an interview and iterating on that so your mind picks up on that cycle as fast as possible.

The other thing that’s important is that it’s very easy for us as engineers to be in front of a computer and sort of silo ourselves. And now that we have a friend in ChatGPT, we might think that is our only connection. But it’s not. It’s every single one of you in these rooms. It’s about building community. If you haven’t heard of this book, it’s called “Never Search Alone” and it’s specifically about how you build community as you’re trying to enter the job market. So something very much to consider as well.

I think a lot of this is about understanding the different tools that are out there and how to leverage foundational LLM models. There are tools specifically built for some of these things. You can input your resume, you can input a job description, and they will come out with a slightly better summary that is a little bit more tailored for those kinds of things. So you really have to start understanding all these tools. The downside is that they all cost money a month, but these things sort of start to add up. But it’s really important that you do the free trials, see what’s actually paying off, and make sure that you are spending your money wisely, but more importantly spending your time wisely. If there’s a tool that you’re using that isn’t yielding results, that’s okay. Change it.

Another thing to really think about is that the interview itself is a hiring funnel. The application, the assessment, the interviews, the debrief—there are different steps along the way. Some automated, some human sort of curating and really thinking through this. But the more you prepare and understand that interview process, the less anxiety you’re going to feel. Sometimes by the time you actually complete the interview, by the time you actually get feedback from them, it might be a week. You might wonder, do they not like me? What’s going on? What’s challenging? It’s actually because they just need to collect the interviews and feedback from all the different interviewers. So it’s about really understanding that timeline and process, and that alone will help you reduce your anxiety, which will help you perform better.

This is roughly the numbers from Dropbox—though I’ve specifically rounded them around. But this is one role, right? We’ve got ten roles I believe open right now for Mexico. So you can imagine how many applicants are actually going through that. But out of those 1000, some will be screened out because they just don’t have the right years of experience, they don’t have the right industry background or specific experience. So that’s like the first filter. Then it’s a self-coding assessment, right? Who can actually pass those LeetCode challenges and go through that? Then it’s about a recruiting or a manager screen. How many people can pass that? Technical rounds. That’s the next one. Not just can you code, which is what the self-serve assessment is doing, but can you code with collaboration in mind with an actual human? Because that’s a really big part of the role. Behavioral interviews—is this someone that not only you want to work with, but they can actually deliver, and can show that they’re learning and growing? And then at the end of the day, one person is actually going to get that role. So it’s important to sort of understand how that funnel works.


02. Get Noticed

Craft Your Resume

Get past automated filters and catch the human eye. Use tools to leverage your past performance reviews and role description you are applying to. Lead with outcomes, not tasks. “Reduced latency by 40%” not “Improved performance.”

Tell a Clear Story on Paper

Outline your career trajectory and progression. Extract key role traits or technologies from job posts using AI summarization. Mirror the company’s language, mission and metrics from their website and blog posts.

Transcript

So then we move on to the “get noticed” stage, right? How do you craft your resume? There’s a lot of AI tools that will simply just dump in keywords. Yes, you should put those in your LinkedIn profile and make sure that you’re saying the right thing. But don’t apply to a Rust role if you don’t necessarily have immediate Rust. If you have Python fantastic experience, get better at that and do sort of push for that. If you have TypeScript and JavaScript experience, target those roles that do that because they’re frontend or full stack roles if that’s what their stack typically is. Get fantastic at one language and iterate through that.

So really, if you have had prior experiences and you’ve had the fortune of having a good relationship with your manager and they’ve done performance reviews for you, you will do a self-assessment every year or every six months for yourself. Put that into your resume. Put that into ChatGPT to help you develop your summary. Sometimes those little details of like what did I do this week, you know, when you write a Slack standup or a weekly update. That is information that over time starts to build up and you can actually put into your resume and make sure that you’re really changing your framing. It’s about business impact.

We are here as engineers to build something, but the reason we’re building it is to create a business, to make money. What are you actually moving the needle on? Those are the things that people really want to know. So yes, maybe you got a performance improvement project. Fantastic. What did it actually deliver? What did it put in the hands of customers? How did it impact the business? Make sure that you’re rewording and rephrasing your resumes in that way.

Tell a clear story on paper. Your career trajectory—that you’ve learned and grown, that you’ve gone from junior engineer to mid-level to senior. People want to see that kind of career progression. Start scraping the website pages from the different companies that you’re applying to. Start to understand how they talk about these things. The reason I love this is because Dropbox publishes a tech blog specifically that tells you about all the things that we’ve done, the technologies that we are proud of. Go understand how we’re measuring success, and you can put your resume into those same terms.

Stay organized. This is the one thing that I think is really hard for us to do. You will get lost in emails, applications, conversations. Internally, we have what’s called an applicant tracking system, where all these thousands of candidates get pulled in at each one of these stages—filter, no filter, continue, no continue, pass, no pass. Do the same thing because you will probably find yourself applying to hundreds and hundreds of companies. Do the leg work. Be an engineer that is organized, that is thoughtful, and put that stuff into tools like Notion or Airtable and actually track the stages. More importantly, track the feedback. What were the questions that they asked you? How do you sort of iterate through all that stuff? So it’s really important to go through that.


03. Prove Your Skills

The Purpose of Self-Serve Code Assessments

Efficiently evaluate coding and problem-solving skills. Don’t cheat. The robots know if you are using robots. Understand the fundamentals of how to efficiently solve problems. You don’t need a Computer Science degree.

Review and Iterate

Turn each practice test into learning data. Ask AI to review your code for clarity and efficiency improvements. Reflect on how you approached the problem. Speed follows structure.

Transcript

You want to make sure that you’re able to prove your skills, that you are working through efficiently evaluating. Right? So once you actually make it through the screeners, once you actually get a link to that code self-service assessment, LeetCode—tons of folks will be practicing on those tools.

The main thing I say to a room of JavaScript engineers: you know exactly what the browser is capable of doing. It detects keyboard. Every keystroke you type. It detects every time you switch away from the context of the window. It detects all these different things—video, microphone. It has access to everything. It’s just a cat and mouse game if you try to use a tool to help you go through those testing programs. So it’s not about using the tools to get an edge. It’s about using the tools to have time to practice in those self-service assessments.

Understand the fundamentals of what it is to be a computer scientist and what it is to solve a problem with code. You don’t need a computer science degree to be able to learn that. I don’t have a computer science degree myself. But what matters is that you understand the ideas to solve a problem and do it in the most optimal and scalable way possible.

You really have to prepare for these LeetCode problems. How do you actually write clean code? How do you write tests for your code? These are things that we expect on a day-to-day basis from an engineer. And you need to be able to show that in a matter of seconds and minutes during that interview. Especially when you’re preparing with LeetCode as well, these are practical problems sometimes. Sometimes it might seem like these are abstract algorithms, but I can actually apply them. You’d be surprised how often we use these kinds of challenges, especially when you’re dealing with a company that has to support a certain amount of scale. Those kinds of small optimizations matter. That’s why we still use them. They’re not perfect. Technical interviews aren’t great. I don’t like puzzles or riddles. But we really try to make sure that we’re picking things that you can practically build and develop.

Iterate with AI. What was the success? How did you end up going through? Shorten that feedback cycle for yourself so that you go through that as fast as possible and make sure that you’re reflecting on everything. Make sure that you’re really internalizing what did I get right, what did I get wrong? As you go through this, make sure you’re repeating.


04. Connect the Dots

Manager + Recruiter Screen

Evaluate communication, motivation, and alignment with the role. Use voice mode to rehearse responses. Align on years of experience, past roles and career level. Use levels.fyi to understand your fit.

Speak Their Language

Show that you understand the company’s priorities. Analyze public company docs, blogs, or engineering handbooks with AI summaries. Tie your experience to their mission or product problems directly. Everyone wants you to succeed. Partner with the recruiter. Don’t just pass their test. Draft thoughtful follow-up questions and thank-you emails with AI. Show professionalism and follow-through. It signals readiness.

Transcript

So the next step is actually to do a hiring manager screen, right? You’re going to talk to the recruiter. If I had 10 engineers, if I have 10 roles, my goal is actually to only talk to 10 people. That would save me a lot of time. I want every single one of you to succeed. We want to set you up for success. We have interview prep materials for a reason as well, and every company does this. Read it, understand it, digest it. Another thing that is really important: don’t apply for a staff engineer role that you might not be ready for. Don’t apply for a junior engineer role that you have too much experience for. You have to understand the career levels that every single company has. Dropbox publishes it. Levels.fyi is an amazing one because it allows you to compare across companies. If you’re going to apply for Dropbox and you’re going to apply for Amazon, their career frameworks are up there. Really understand how your years of experience map across companies because sometimes the titles are different, sometimes the salaries are different. But it’s really good for you to understand where the baseline is that you’re going to be going through. Because otherwise, if you get rejected because you applied for the wrong role, often some of these companies will have a six-month period where they will not consider you for that role or a different role. You just don’t want to burn your bridges by being told no often. So make sure that you really align with folks in that way.

What do they say? How do they react to you? What do they want you to be successful at? How do you tie what you’ve achieved to their experience? Understand what you’ve built in the past and how that can help them. If you have experience doing performance in frontend, how does that apply to some of the challenges that they’re going through now? Really sort of connect the dots. A lot of that stuff you can get from the job description. From all the job descriptions and previous ones you can find out. Let’s pretend there are two roles—one for my team and one potentially for a sibling team. You can use LLMs to actually bridge all these things together. You can say, scrape all the job descriptions, help me map out the structure. What teams is this team collaborating with? Because I want people that can actually connect the big picture, not just solve an individual problem. And this is where you can use LLMs to really scale and use your particular experience.

Follow up with people, right? Make sure that you show professionalism, talk through your challenges, what you think you’re going to be best suited for, what you think you’re concerned about. Make sure you treat the recruiter as a partner. If something changes, the interview gets rescheduled, it’s okay to get frustrated, but make sure that you understand where they’re coming from. They’re dealing with again thousands of applicants. They’re just here to help you succeed. But if you are not following them in the right way, it’s going to make their job a lot more difficult.


05. Show Your Technical Craft

The Goal of Technical Rounds

Demonstrate problem-solving, coding fluency, and design reasoning. Discuss your approach. Explain challenges as you go. Interviewers evaluate clarity as much as correctness.

Pairing and Collaboration

Show you can communicate and iterate in real time. Simulate collaborative debugging sessions with AI-generated “pair partner” prompts. Listen carefully, ask clarifying questions and explain trade-offs.

System Design in Practice

Start from first principles to solve for reliability and scale. There is no perfect solution, but always follow a process. Requirements → data flow → components → trade-offs. Practice problems on your own, then compare your solution to Exponent and ByteByteGo YouTube Channels.

Transcript

So then we get to craft. How many of you have searched on YouTube for the different system design interviews? How to build a messaging platform? My favorite one is “design Dropbox.” Who has actually gone through that system design interview? I got one person right there. Guess what system design interview question we ask at Dropbox? Every single design. Go build it. Go architect it. You have to go through this. And it’s not to say that I want you to go and regurgitate what you just learned from YouTube and from all these tools, but it is about understanding how you are solving problems. One of our system design interview questions is based on what we actually do. One of our frontend interview questions is: what does Dropbox do in the browser? It uploads files in a browser. Guess what? One of our interview questions is that, right?

There was a world in which we would have asked you how many marbles fit into a jar, right? These obscure ways of testing computer science—Google moved away from this years ago. They were notoriously bad for doing this kind of thing. We don’t do that anymore. It’s not practical. It’s important. That’s one of the reasons I got connected with the interview process: it’s important to test for real-world experiences that we need to be able to do.

But okay, think through that problem, right? I need to upload a file. What if the file is too big? What if I have a spotty internet connection? What are the actual challenges that you’re going to run into? Actually think through the approach. This is my favorite tip—so few people do it.

Ask for an explanation of the problem and in comments in the code, in the chat, type step one, do X, Y, Z. Step two, do this other thing. Step three, do this other thing. Just to show that you’re thinking through the steps that you need to do in the interview. Take two minutes, do that. Those steps will change as you learn and do more of it. But the fact that you took the time to think through those, and then you can say “Oh, actually step 2.5 is do this other thing”—because you’re learning and iterating. Just something as simple as taking the time to process the problem. Often what people will do is they will just start writing code, and believe it or not, they will code themselves into a corner because all of a sudden you’re solving the very specific problem that you were asked for, but you didn’t think about scale or some other situation, and you might have to rewrite your entire solution. Avoid those kinds of things by actually thinking through the structure.

How do you communicate with folks? This is my favorite part. Again, we want you to succeed. Listen for hints. This is something that is actually hard to educate our interviewers on. When do you provide the right hint? You don’t want to give someone the answer, but you want to make sure that if they’re pointing in the wrong way, you’re just nudging them ever so slightly. Every word that comes out of an interviewer’s mouth is important for a reason. It’s not there to help you solve it, but it’s really there to help you make sure that you’re on the right track.

That collaboration—“Oh, that’s an interesting point. I hear what you’re saying. I think it means this. I think maybe I should plan for this other thing, right? How does that affect what I’m doing now?” It’s not that they want to throw you off. It’s that they want to make sure that you’re on the right track. Because otherwise, the amount of times that I see someone do an interview and they will just waste 10 minutes on some solution that they should not have gone down. It’s just taking away from other time. So make sure that you’re really leveraging AI to do those partner prompts. Take it step by step. Practice those kinds of nudges and say “I don’t understand this problem. What is a hint?” Don’t say what’s the solution. Say what is a hint, and start to really try and internalize those.

It’s about starting from first principles. Everything in computer science, everything that we do about code is limited by time, by space, by literally energy and compute power that we have to do something. And by the time you actually sort through that at scale, you have to solve that from the beginning. What are my limitations? What are my constraints? What can I throw out the window and come up with? Really understand the requirements, understand the components, make sure you’re documenting all of your tradeoffs.

When you do “design Dropbox,” ask the question about your technical and non-technical requirements, functional and nonfunctional requirements. It’s like, are we launching Dropbox with 10 people or are you actually trying to rebuild an architecture that’s supposed to ship to 100 million people right now? Those are two very different ways of solving it. And we actually think through that problem process as well when we do internal architecture designs.

Exponent and ByteByteGo are fantastic. Those are resources that you all should take advantage of and learn from. I recommend that you practice those as well. But again, they’re just going to give you the answer. I don’t want someone that just tells me the answer. I want someone that can think through the problem and solve it in a unique way.


06. Why Behavioral Interviews Matter

Why Behavioral Interviews Matter

Prove you can deliver, adapt, grow, and support others. Share real stories, reflection and what you learned. Generate practice questions around leadership, failure, and giving and receiving feedback.

Cultural Fit = Mutual Fit

Ensure alignment on values and ways of working. Ask genuine questions about team rituals, priorities, and success metrics. Use AI to understand their mission, principles and business.

Transcript

These are about behavioral interviews. Growth mindset and high agency are something that we look for when we are giving engineers promotions. Internally, we talk to someone: did they achieve something? Did they learn it? Are they willing to really tackle hard problems and say “I can’t do this yet” versus someone that says “I can’t do this”? There are two very different mindsets. It’s something that I’m trying to teach my 6-year-old, and you’d be surprised how many people you run into that are full-grown adults that still haven’t internalized that. It’s about learning and growing and interacting, taking feedback. All of those things matter. These behavioral interviews matter. You’re talking about sharing real stories. You’re talking about what you’ve learned, how you’ve grown, and how you’ve adapted.

This is where you can use AI to help you process your past experiences and make sure that you’re formatting to the right models. So often people will tell you to use the STAR method, right? I really like to add an additional R to it: Situation, Task, Action, Results. The one that I love people to add is Reflection. That is the difference between “I solved the problem,” which is good, versus “I solved the problem and here’s how I’m going to solve the next problem better.” You’re iterating, you’re learning, you’re growing. Those are the kinds of ways that you can use AI to actually structure it and say, “Hey, in this structure, how would you rewrite what I just said?”

Use voice mode for these things on ChatGPT. The number of times that I’m driving down the road, practicing talks, practicing conversations with folks, and I’m just using the voice mode for ChatGPT, and I’m just saying, “Hey, here’s a stream of consciousness kind of speaking.” And then you can go back and say, “OK, I have that stream of consciousness, restructure it into these different bullet points so that I know exactly.” Sometimes a conversation flows in different ways. Sometimes a setup you say at the end versus the beginning. Really use AI to leverage those kinds of tools.

Again, everyone wants you to succeed. Everyone wants you to be part of their mission, their principles. How do you align with those things? How are you going to be someone that’s actually going to make their culture better?

One of the things that I tell especially very senior engineers is: sometimes I’ve had conversations where folks say, “Oh, what’s the hard problem that you want me to solve next?” And my response to that is, as a senior engineer, you tell me what’s the hard problem you need to solve next. Getting ahead of that—that’s the type of folks that people want to hire in their company.


07. Thrive Beyond the Interview

The Decision Process

Understand what happens after your interviews. Learn how BrightHire and Fathom assist in structuring interviewer feedback (but not making decisions). Stay consistent and professional. Ask for feedback.

Evaluating Offers

Align compensation and career growth with your goals. Benchmark salaries and equity using Levels.fyi, Glassdoor, or AI-summarized data. Negotiate collaboratively — focus on scope and trajectory, not just numbers.

Continuous Improvement

Build long-term readiness and durable skills. Use journaling or reflection templates to capture what you learned each cycle. Iterate like you ship code. Learn, reflect and refine.

Transcript

Then there’s everything that happens after the interview. You’re nervous. You got through it. You’re sort of trying to gather yourself and decompress and give yourself the time and space to reflect. You can start using AI tools for some of these things, but really understand that decision process. It’s going to take a little bit of time.

So for Dropbox, it’s the screen, then two technical interviews, a system design round, which we call architecture. And then there’s like a project deep dive or retrospective on a project as well. So it’s five interviews that might be scheduled over two or three days. Five different people that have day jobs that then have to submit the feedback that then have to put it into a decision tree. Where we’re starting to use AI a lot more internally is we do have an AI note taker that transcribes the entire meeting. It’s invaluable to us to make sure that we’re validating. But a lot of those decision-makings—whether or not someone got yes or no—we can validate through our initial thoughts. Go check the rubric, go check the transcript, make sure that there’s enough signal there or whether there are gaps.

It takes time to develop and then you have to schedule it and go through deep reviews. It takes a bit, right? So just be patient, understand the process. Ask recruiters what’s the next step. Totally fine if you’re not going to give me a response for like another week or two, but I just want to understand where I am in the process. It’s really about working through some of that stuff. And then again, document every single interview that you did for yourself. Put it into Notion. Really work through how are you going to get better at the next one? Because what matters here again is repetition and that intentional practice.

Hopefully you get an offer, right? That’s the end of the goal. Make sure that it’s a good fit. The recruiter is going to ask you, what is your salary range? Your response could be as simple as, whatever you’ll give me. If you don’t have a job, that sounds fantastic. In California, we actually have a law that we have to publish the range of salaries that we can give, which is fantastic. Now we’ve applied that for all roles. So, based on your location, based on the level, based on the skill set, this is exactly what it is. Because we just don’t want to have conversations that are going to honestly just reject because they got a stronger offer somewhere else. It’s just a waste of time.

Really think through this and understanding what is your worth. But also, sometimes you will have to potentially take a lower offer because it’s just a better company fit, because it sort of comes down to maybe the spaces that you’re going to be in. Really think about how that all fits into your trajectory.

Make sure that you’re learning, you’re iterating. I will say this over and over again. Reflect, review, track it. Use AI and LLMs to actually help you process and really digest this information. This could be a monthly process for you. This could be a two-year process for you. So it’s very much about just constantly improving.


08. The Power of Durable Skills

Level Up: Reflect and Grow

Strengthen the traits that endure: critical thinking, empathy, adaptability. Your human edge is what scales. Use AI to challenge your thinking and test your assumptions. Balance automation with authenticity.

AI is a tool, not your crutch. Use it as your coach.

The best engineers build product and themselves. Be inspired and equipped for what’s next.

Transcript

The last way that I’ll very much end this part of the conversation is with this idea of a durable skill. AI and technology is no different than other technologies, right? We use telephones now. We don’t need to go to pay phones. We like cell phones. We use cell phones instead of landlines. We use bicycles instead of running. It’s not that it’s replacing humans in any way. It’s that it’s simply giving us leverage to do more, to lift more, to deliver more. So those are the types of things that you want to do. Make sure that you are taking advantage of all these things. Use it to test your assumptions. But what matters is that you are human and you are working with other humans.

It’s a company, it’s a culture, it’s a team. If you want to go do a startup by yourself, go for it. Have fun. I’m sure that’s a lot of fun. But you’re in a team. Just make sure you’re not overdependent on it. Again, don’t just look for solutions. Really be someone that is going to grow on your own and hit these challenges in the next steps.

And with that, we’re hiring in Mexico. We have tons of roles. I have a role open for one of my teams as a full stack role essentially for one of our testing teams to build out our tooling. There are tons of positions available. Please reach out. Please talk to the folks in the booth. Make sure that you get into a process and we’ll help you prepare for these things. I’d love to hire every single one of you, right? That’s just simply what it goes through.

There’s my LinkedIn. Please connect. Please scan it. Add me. Any questions you have, I might not be able to meet with all of you one-on-one, but that’s what I’m here for. But I’m always happy to respond to LinkedIn messages and help you all go through that. So please, let’s connect.


Q&A

Question on Pair Programming Interviews

I recently did an interview where the dynamic was pair programming, where I was the interviewer and the co-pilot. So I’d like to know what would your advice be on how to handle that interview as well as possible when I’m the co-pilot—where the interviewer was just guiding the interview. She showed me the structure, but I had to take it forward.

For a pair programming session where they expect you not to be in the driver seat, think about your best teammate. Who’s the one that supported you along the way? What did they do? They caught bugs. They made sure you didn’t go down the wrong path, right? They talked to you. They work through it. You’re essentially doing a live code review.

So think through all of that process. Make sure that they’re not skipping something. All of the interviews, no matter which ones they are, have a rubric. That rubric says, “Did they do testing? Did they do this other thing? Did they worry about their types? Did they do?” So it’s a checklist, right? And the same for the system design. You can ask ChatGPT all about these and then it’ll break it down for you. But what matters is that you understand.

It’s just as important what they’re saying versus what they’re not saying. If they are like, “Oh, this is really great. Everything’s kind of just going,” it might feel like a trick question. But just something as simple as like, did we write a test for that? Do we need to write a test for that? Like what do you think? What do you think is the most efficient use of our time right now?

You were there as a pair programmer in that co-pilot seat to make sure that they are not doing any mistakes. And then that you’re actually learning and internalizing the program with them. It’s what you do every day as an engineer. So practice. Now that you know that that is the type of interview you need to get better at, practice with ChatGPT. Try to do some of that stuff. Practice with a fellow person that’s applying for another role as well.