ESC

Type to search the knowledge base.

Explaining Projects in Interviews

How to walk through a frontend project in 3–8 minutes — problem, architecture, tradeoffs, and your personal impact.

beginner4 min read
  • interview
  • explaining-projects

“Tell me about a project” is not a tour of your folder structure. Interviewers want problem → constraints → design → tradeoffs → outcome, with clear ownership.

What interviewers score

  1. Clarity — can they restate your product in one sentence?
  2. Technical depth on demand — you go deeper when asked
  3. Tradeoffs — what you rejected and why
  4. Your role — not the team’s resume
  5. Production maturity — testing, a11y, perf, failure modes

The 3-layer explanation

Layer Duration Content
Elevator 45–60s User problem, your role, headline result
Architecture 2–4 min Major components, data flow, key decisions
Deep dive on demand One hard problem you solved

Never start in layer 3. Let them pull you there.

Elevator template

[Product] helps [users] do [job].
I owned [surface / system].
Biggest constraint was [X].
We shipped [result]; I specifically [contribution].

Example:
“B2B analytics dashboard for ops managers. I owned the filterable table + export path. Constraint: 100k-row datasets without freezing the tab. We virtualized the grid and moved exports server-side; p75 interaction time dropped under 200ms on the filter path.”

Architecture sketch (draw or verbal)

Cover these boxes, even without a whiteboard:

  1. Clients — web app routes / major views
  2. State — server cache vs UI state
  3. APIs — REST/GraphQL; auth
  4. Perf/a11y hotspots — lists, modals, forms
  5. Observability — errors, RUM

FE system design practice: System design interview framework FE.

Data flow one-liner

“User changes filters → debounced query key → cached fetch → derived table rows → virtualized window.”

Link concepts: Optimistic UI, list virtualization, debounce.

Decision log (prepare 3–5)

Decision Options Chose Why
Table full DOM vs virtual virtual 100k rows
State Redux vs RQ + local RQ + local server state dominated
Styling CSS modules vs utility tokens + modules design system alignment
Auth localStorage JWT vs cookie httpOnly cookie XSS surface

Tradeoff language: Tradeoff language in interviews.

Deep-dive stories inside the project

Pick one technical boss fight:

  • Race conditions on slow filters
  • Accessibility of custom dropdown
  • Bundle split for admin-only routes
  • CSRF + cookie auth
  • Design system migration mid-feature

Structure with STAR if behavioral: Behavioral stories.

What to avoid

Avoid Do instead
Listing every library Name 2–3 that constrained design
“I did everything” Precise ownership boundaries
NDA oversharing Abstract domain; still concrete tech
15-minute monologue Pause: “Want architecture or a deep dive?”
No metrics Qualitative outcome if no numbers

Resume ↔ interview alignment

Every project bullet on your resume should have:

  1. Elevator paragraph
  2. Architecture bullets
  3. One deep-dive story
  4. One “what I’d redo”

If you can’t explain a bullet for 3 minutes, remove or rewrite it.

Live coding connected to projects

Sometimes they say “build a simplified version of X from your resume.” Prepare a stripped component:

Don’t rebuild the company monorepo. Rebuild the interesting algorithm/UX.

Questions to invite (signal)

End with:

  • “Happy to go deeper on caching or on the a11y work — which is more useful?”
  • “We also hit a gnarly auth edge case if that’s relevant to your stack.”

You’re steering to your strengths without dodging.

Further reading

Projects are proof. Practice the elevator until it’s crisp; depth only matters if they still care after minute one.