Over the years I've participated in dozens of technical interviews.

I've answered technical questions one-on-one with the CTO and in a group with the dev team. I've taken quizzes with a timer and built features into existing apps in live mode.

I've live coded algorithms, done take home assignments, and demonstrated my system design skills.

And all this has given me a lot of knowledge and experience that I want to share with you now.

In this guide, I'll share my top tips, recommendations, and checklists to help you prepare for and pass your technical interviews. These will level up your game and increase your chances of getting a job.

What We'll Cover:

Introduction

The technical interview is designed to test how you think, code, and communicate. It's about both explaining your reasoning and showing what you can do. Think of it like a performance: the more you practice, the more natural and confident you’ll feel when you're actually doing it.

You’ll usually go through three main steps:

  • Technical screening: a short 15–30 minute call to check your basics and interest in the role.

  • Coding challenge: you’ll solve problems either through a take-home project or a live coding test. This shows how you write, structure, and test your code.

  • Whiteboard interview: you solve problems on a shared screen while explaining your thinking out loud. It’s less about being perfect and more about how you approach problems.

During these stages, interviewers focus on a few key areas:

  • Data structures: Ways to organize data (like folders in a filing system).

  • Algorithms: Step-by-step methods to solve problems.

  • System design (for senior roles): Planning how large systems work, similar to designing a building that supports many users at once.

Overall, they’re looking at how you think, not just what you know.

The Secret That Will Increase Your Interview Performance By 53% (at Least It Did For Me)

The secret is: narrow your focus.

Before you spend even one minute preparing, specify exactly what type of company you want to work for.

Why?

Because this choice will reveal what exactly you'll have study and practice before your technical interview.

Let's go over the main categories of companies so you can work on narrowing your focus.

1. Big Tech / FAANG-level Companies

(Google, Amazon, Meta, Apple, Microsoft)

Core skills:

  • Data structures & algorithms

  • System design (scalability, distributed systems)

  • Computer science fundamentals (OS, networking)

2. Mid-size Product Companies / SaaS

(Shopify, Stripe, Notion)

Core skills:

  • Strong stack knowledge (React, Next.js, Node.js)

  • API design & integrations

  • Database design (SQL/NoSQL)

3. Startups (Early-stage)

Core skills:

  • Full-stack development

  • Rapid prototyping

  • Shipping features end-to-end

4. Design Agencies / Creative Studios

Core skills:

  • Advanced HTML, CSS, JavaScript

  • Animation (GSAP, Framer Motion)

  • Pixel-perfect implementation

5. Enterprise / Corporate Companies

Core skills:

  • Backend development (Java, .NET, and so on)

  • Databases (SQL, enterprise systems)

  • APIs & microservices

6. E-commerce & Marketing Agencies

Core skills:

  • Shopify / WordPress

  • Frontend development

  • SEO & performance optimization

7. AI-first / Modern Tech Companies

(OpenAI, Anthropic)

Core skills:

  • AI API integration (LLMs, embeddings)

  • Prompt engineering

  • Backend & data handling

8. Freelance / Indie / Micro-SaaS

Core skills:

  • Full-stack development (Next.js)

  • Payments & authentication systems

  • Deployment & basic marketing

Keep in mind that these are just high-level recommendations. There are, of course, other skills you'll need to focus on depending on the role you're hoping to get. This is just a general guideline to get you started.

Also, fun fact: if you ask a top FAANG developer to code an Awwwards-style landing page, they'll most likely fail. And similarly, an award-winning web designer from a top notch agency will probably perform poorly at an algorithm assignment. Why? Each field requires its own skillset. So make sure you choose and focus on yours.

Step 1: Building a Strong Foundation in Core Web Development Concepts

So, now I assume that you've decided on the type of company you want to work for.

The next step is check whether you have or need to work on the basic fundamentals. Most candidates fail not because they lack experience, but because their basics are shaky.

A solid foundation makes everything else easier: coding challenges, system design, and even real-world tasks.

Focus on learning the core building blocks:

  • HTML & CSS

  • JavaScript fundamentals

  • One solid framework: Get really good at one stack (like React + Next.js).

  • APIs & backend basics: Learn how data flows. Understand REST APIs, authentication, and how frontend connects to backend.

  • Databases: Know the difference between SQL and NoSQL. Be comfortable with basic queries and data modeling.

  • Git & workflows: You should be confident with version control, branching, and collaborating on code.

The goal is not to know everything. The goal is to be clear, confident, and consistent in the fundamentals.

If your basics are strong, you’ll solve problems faster, explain your thinking better, and stand out naturally in interviews.

One of the most effective ways to get better at fundamentals is by practicing with flashcards. I've created a system called the 99cards app that can help with this if you want to check it out.

Step 2: Going Deeper Into Subject Matter

By this step, you've chosen the type of company you want to work for and you're confident that you know core web development skills.

Next, you'll need to practice specific skills related to your company and preferred job type (for example algorithms or building features in live mode).

Hint: In about 80% of cases, the first step is an HR interview. This happens before the technical round. Use this opportunity to your advantage.

When I get invited to a technical interview, the first thing I do is ask the HR manager what I should prepare. Just a simple question – and surprisingly, I almost always get a clear answer concerning:

  • What topics to focus on

  • What kind of tasks to expect

  • Sometimes even tools or formats they’ll use

This gives you a huge advantage. Instead of guessing, you can prepare with intention.

Interview Preparation Guide

1. Answer Technical Questions (1-on-1 / Many-to-1)

This is usually a conversation with a CTO or a full dev team. They'll want to understand how you think, not just what you know. Stay calm and treat it like a discussion, not an exam.

Keep your answers simple and structured:

  • Explain your thought process step by step

  • Use real examples from your experience

  • If you don’t know something, say it and think out loud

In many-to-one interviews, don’t get overwhelmed. Focus on one question at a time and engage with the person speaking.

For example, when I was looking to hire a web developer for my micro SaaS, I didn't care about algorithms, but I cared deeply that they have thorough Next JS skills.

For that, I tested candidates via flashcards in live mode.

How to effectively prepare

Practice explaining concepts out loud, not just in your head. Pretend you’re teaching someone.

Do mock interviews with a friend or record yourself. Focus on clarity and structure.

  • Prepare stories from past projects

  • Review core concepts (JS, React, APIs)

  • Practice saying “I don’t know” confidently

2. Go Through Quizzes with a Timer

Timed quizzes test your speed and basics. These are often multiple-choice or short coding questions. The goal is accuracy under pressure.

A few tips:

  • Don’t spend too long on one question. Skip and come back if needed.

  • Practice common patterns beforehand.

Speed improves with repetition. Train like it’s a game.

How to effectively prepare

Use platforms with timed tests to simulate pressure. Track your speed and accuracy.

Focus on common topics that appear often.

  • JavaScript fundamentals

  • Basic algorithms

  • Output-based questions

Practice daily in short sessions. Consistency beats long study sessions.

3. Build Features into Existing Apps (Live Mode)

During technical interviews, you’ll often work on a real or mock project. This tests how you read code, understand structure, and make changes safely.

Focus on:

  • Understanding the codebase first

  • Asking clarifying questions

  • Writing clean, simple solutions

Talk while you work. Explain what you’re doing and why.

How to effectively prepare

Practice working with someone else's codebase (not your own). Clone open-source projects and explore them, for example.

Train your ability to navigate and understand code quickly.

  • Read files before coding

  • Trace data flow

  • Make small, safe changes

Also practice explaining your actions while coding.

4. Live Code Algorithms

This is where many developers struggle. You’ll solve problems in real time while explaining your thinking.

Don’t rush to code. First:

  • Clarify the problem

  • Talk through your approach

  • Start with a simple solution, then improve it

Interviewers care more about your thinking than a perfect answer.

How to effectively prepare

Practice common algorithm problems regularly. Focus on patterns, not memorization.

Solve problems out loud, as if someone is listening.

  • Arrays, strings, hash maps

  • Sorting and searching

  • Basic recursion

Time yourself and review your solutions after.

5. Take Home Assignments

These simulate real work. You get time to build something properly. This is your chance to stand out.

What matters most:

  • Clean, readable code

  • Good structure and naming

  • Clear README with your decisions

Don’t overbuild. Focus on quality, not quantity. A smaller, more focused take-home project that's done is better than an overly complex or overly ambitious one that's incomplete.

How to effectively prepare

Build small projects with real-world structure. Practice finishing, not just starting.

Pay attention to presentation and clarity.

  • Write clean commits

  • Add a clear README

  • Handle edge cases

Think like you’re submitting work to a real client.

6. System Design

This is common for mid to senior roles. You’ll design a system from scratch or improve an existing one.

Start simple, then expand:

  • Define the requirements

  • Sketch a basic architecture

  • Discuss scaling, performance, and trade-offs

Think like a builder, not just a programmer. Show how you make decisions.

How to effectively prepare

Study common system design patterns and real-world architectures. Start with simple systems.

Practice breaking problems into parts.

  • APIs and data flow

  • Databases and caching

  • Scaling basics

Watch system design interviews and practice explaining your ideas clearly.

For each of these interviews you can use my free checklists to prepare even more effectively.

A Fun Story

Once I applied to a front-end web developer job at company that focuses on building Awwwards-style websites. The tech interview was take home assignment: I had to rebuild Figma design into a modern GSAP-animated website. I failed to do that.

In 18 months, the same company had an open position. I applied. Can you guess what the tech assignment was? 😄

It was the same.

Draw your own conclusions.

Most Important Part

Here's a helpful framework to keep in mind when you're going through this process:

PDCA Framework

P - plan
D - do
C - check
A- act

It's my go to framework for every subject I want to get better at. Let me explain how to apply this to tech interviews.

Plan: in this stage, you plan your preparation routine and work on your interview performance game.

Do: in this stage, you're actually trying to do what you have planned.

Check: here, you compare your Plan and Do stages. Analyze the difference and see what you can improve.

Act: finally, make adjustments that will help improve Plan 2.0.

Repeat until you get the desired result.

Conclusion

Technical interviews are not about being perfect. They’re about showing how you think, communicate, and solve problems under pressure. The more you practice the right way, the more confident and natural you’ll feel.

Focus on the basics, prepare for your target company, and train in real interview conditions. If you do that, you’ll already be ahead of most candidates.

P.S.

If you want to speed up your prep and stop guessing, I put together a complete toolkit for you.

It contains:

  • Interview Checklists

  • CV Template

  • Cover Letter Template

  • List of Top 50 Remote-First Companies

  • Job Application Tracker Spreadsheet

You can find it here: 99cards.dev/toolkit