ByteDance Frontend Engineer interview questions

10 Frontend Engineers have shared notes from their ByteDance interviews, with the questions they were asked in each round. That is 3% of the 289 ByteDance interview notes on Screna AI.

10 Frontend Engineer interview notes

ByteDance·Frontend Engineer·Technical Phone Screen

Jul 2026
Frontend phone screen at Bytedance that basically came down to one classic JavaScript closure question. Nothing crazy, but it's the kind of thing that trips you up if you haven't thought about it recently.
  • Given a for loop that uses setTimeout to log the loop counter, predict the output and explain why it behaves differently with var versus let. Walk through how you'd fix it.

“The var vs let thing I knew, but I fumbled a bit explaining the event loop part.”

View Post

ByteDance·Frontend Engineer·Technical Phone Screen

Jul 2026
Bytedance frontend screen, one technical question on JavaScript fundamentals. Pretty standard stuff but they went deeper than I expected on the nuances.
  • Can you explain what the rest parameter is in JavaScript, how it works, and how it compares to the arguments object?

“Started okay, got the syntax right (...args as the last parameter), but then I fumbled a bit explaining why you'd use it over arguments.”

View Post

ByteDance·Frontend Engineer·Technical Phone Screen

Jun 2026
Bytedance frontend interview that's basically a resume walkthrough with teeth. They go project by project and expect you to actually know the details, not just summarize.
  • Walk us through your background and introduce yourself.
  • For each major project on your resume, explain what you built, your specific role, and the decisions you made.
  • Describe the most technically or organizationally challenging project you've worked on. What made it hard, what did you personally contribute, what trade-offs did you make, and what was the result?

“Pretty standard opener but they didn't let it stay standard for long.”

View Post

ByteDance·Frontend Engineer·Technical Phone Screen

Jun 2026
Bytedance frontend round that was heavier on algorithms than I expected. One coding problem, sliding window style, and it went okay but I definitely fumbled some of the edge case handling under pressure.
  • Given two strings, determine whether one string contains any permutation of the other as a contiguous substring.

“I knew the sliding window approach going in, but fumbled the implementation of the match counter.”

View Post

ByteDance·Frontend Engineer·Technical Phone Screen

May 2026
CSS fundamentals trivia round for a frontend role at Bytedance. Pretty fast-paced, lots of quick follow-ups, felt more like a quiz than a conversation.
  • Can you explain how CSS specificity works and how conflicts between rules get resolved?
  • Walk me through the CSS box model. What's the difference between content-box and border-box sizing?
  • What are the different CSS positioning modes and when would you use each one?
  • What's the difference between block, inline, inline-block, flex, and grid display modes?
  • How do stacking contexts work in CSS, and what affects z-index behavior?

“I got the ordering right (inline beats id beats class beats element) but fumbled a bit explaining !important and when it actually overrides things.”

View Post

ByteDance·Frontend Engineer·Technical Phone Screen

May 2026
Bytedance frontend interview that went heavier on algorithms than I expected. They gave me a classic array problem but the follow-up on time complexity tradeoffs is where things got interesting.
  • Given an integer array and a number k, find the kth largest element in the array.

“I jumped straight to sorting and they let me finish, then asked if I could do better.”

View Post

ByteDance·Frontend Engineer·Technical Phone Screen

Apr 2026
Bytedance frontend round, just one coding question the whole time. The problem looked familiar but the trailing-call requirement tripped me up a bit.
  • Implement a throttle function that executes a callback once per time window, but if additional calls happen within that window, it remembers the most recent arguments and fires the callback with those arguments at the end of the window.

“I knew the basic throttle pattern but the 'remember latest args and re-execute at window end' part is where I fumbled.”

View Post

ByteDance·Frontend Engineer·Technical Phone Screen

Apr 2026
Bytedance frontend interview that was basically a deep dive on the JavaScript event loop. Not a broad interview at all, just one topic but they went pretty far into it.
  • Walk me through how JavaScript's single-threaded execution model works, including the call stack, macrotask queue, and microtask queue.
  • Given a code snippet mixing synchronous code, setTimeout, and Promise.then, what is the execution order and why?
  • How does async/await relate to Promises under the hood? What does the runtime actually do when it hits an await expression?

“I knew the broad strokes but stumbled a bit on the ordering rules.”

View Post

ByteDance·Frontend Engineer·Technical Phone Screen

Apr 2026
Bytedance frontend engineer interview with two distinct phases: a project deep-dive where you walk through past work in detail, followed by AI/LLM follow-ups that can go pretty deep into transformer internals, RAG vs fine-tuning, and agent trends. The AI portion felt like a separate interview almost, so don't go in thinking your project stories alone will carry you.
  • Walk me through a past project you're most proud of: your specific role, the technical decisions you made, trade-offs you considered, and what the actual impact was.
  • How do you decide between fine-tuning a model versus using a retrieval-augmented generation approach for a given problem?
  • Can you explain how transformers work at a fundamental level, specifically the attention mechanism?
  • What are your thoughts on recent trends in LLM agents and how would you apply agent-based approaches to one of the projects you described?
  • How would you approach prompt engineering for a production feature, and what does iteration look like in practice?

“This is the backbone of the whole interview so you really can't wing it.”

View Post

ByteDance·Frontend Engineer·Technical Phone Screen

Apr 2026
Bytedance frontend screen, pretty JS-heavy. They threw a classic var/let loop question at me and wanted a full breakdown of what prints and why, not just the answer.
  • Given a for loop using `var` with a `setTimeout` inside, what does the code print and in what order? Then explain what changes if you swap `var` for `let`, covering scope differences, closure behavior, and sync vs async execution order.

“I knew the punchline (all 5s with var, 0 through 4 with let) but fumbled explaining why the console.log after the loop fires before any of the timeouts.”

View Post