Scheduling your interviews

How many interviews to run per day is a genuine tradeoff. Fewer per day means more time to prepare between them and less mental fatigue. More per day means you build reps faster and may end up with multiple offers at the same time, which gives you leverage. Two to four per day is a reasonable balance for most people.

The night before

If the recruiter gave you prep resources, read them. This sounds obvious but a lot of people skim or skip them. They often contain practical details like whether you need a local IDE set up, what coding environment they use, or other tools you will be expected to have ready.

Prepare a few questions to ask each interviewer. Going into an interview without questions reads as low interest. If you are stuck, these cover most situations:

  • What are the team's long-term technical challenges?
  • What does day-to-day work actually look like for someone in this role?
  • What would a successful hire look like at 6 months?
  • What processes does the team use (agile, kanban, etc.)?

Finding out what questions to expect

This is a grey zone of ethics, so take this however you see fit. If you are comfortable with it, there are a few ways to find out what a company typically asks. LLMs with search capabilities are surprisingly good at this. Glassdoor users often report the exact questions they were asked recently. Sites like LeetCode and 1point3acres have paid features that tag questions to specific companies. Hello Interview itself has a company search.

After the interview

Debrief while it is fresh. If you have friends in the industry who are willing to talk through it, great. If not, drop the question and your approach into ChatGPT or Claude and ask for honest feedback. If it is a well-known problem, look it up and read the answers thoroughly. Take note of what you missed and, more importantly, what patterns keep showing up in what you miss. ("I keep forgetting to reach for a TreeMap when ordering matters.") Those patterns are what to drill next.

Following up with the recruiter

I wait two to three days before reaching out. Keep it short: thank the interviewer, say you enjoyed the conversation, and mention that you are eager to know about next steps. If you get rejected, thank them regardless and ask for specific actionable feedback. Surprisingly often, they will actually give it to you. That feedback is worth more than another three hours of LeetCode.

Misc notes

Third-party recruiters

Surprisingly worth it. They get paid only when you get the job, which means they are genuinely motivated to help you succeed. They will get you introduced to in-house recruiters quickly, provide prep material, and sometimes share specific details about the interview questions. At minimum they are not a waste of time.

Keep your eyes on your screen

With cheating more common, even innocent behavior like glancing at a second monitor can look suspicious. I used to run Zoom on one screen and my coding environment on another, but this made a few interviewers visibly uncomfortable. Now I work from a single screen during interviews. It is an annoying constraint, but it is not worth raising suspicion over.

On the word "consistency"

I genuinely dislike this word in technical interviews. It is one of the most overloaded terms in computer science, and using it without qualification almost always creates confusion. In most interview contexts it refers to one of two completely different things: timeliness (when does data replicate to a follower?) or integrity (in ACID, a consistency violation means a constraint was broken). When you use the word, say which you mean. When your interviewer uses it, ask which they mean. This one small habit will save you from talking past each other on a topic that matters a lot in system design rounds.