Skip to content
All books

The Flutter Interview Book: 500 Flutter interview questions from junior to staff engineer

500 Flutter interview questions from junior to staff engineer, each with a direct answer and further reading, plus a staff interview lab. Second edition.

About the book

Real Flutter interviews ask why you chose an approach, where it fails, how you would test it and whether it still works at scale.

Each question has a direct answer and further reading, and the 500 questions are split by level: 125 junior, 175 mid, 125 senior and 75 staff, plus 40 Staff Interview Lab prompts.

The coverage runs from Dart and widget fundamentals to architecture, performance, native integration, mobile system design and technical leadership.

This second edition was previously published as 500 Flutter Interview Questions. It corrects technical errors and internal contradictions found in the first edition, including security guidance on API keys and client-side secrets, Dart 3 language rules, testing APIs and Firebase behaviour, and it rewrites Senior and Staff answers that did not match their level. Every code example was analysed with Flutter 3.47.7 and Dart 3.13.5.

What you get

  • 500 questions across 24 topic sections: 125 junior, 175 mid, 125 senior, 75 staff
  • Every question: a direct answer and further reading in the official documentation
  • A staff interview lab: 40 bonus prompts with reference answers
  • Three practical rounds, live and take-home, with rubrics
  • Decision frameworks for state management and local persistence, and a performance and memory checklist
  • Second edition: technical errors and contradictions corrected, and every code example analysed with Flutter 3.47.7 and Dart 3.13.5

A page from the book

Copied as printed, so you can judge the format before you buy.

Junior, State management, question 020

What is the purpose of setState()?

Question 020 · Junior

The answer

setState() tells the framework that the internal state of a State object has changed. It runs your callback synchronously (the callback must not be async) and schedules a build for that State object in the next frame. A rebuild is not the same as layout or repaint: a render object is laid out again or repainted only if its properties changed and it marked itself dirty.

The follow-up

You call setState three times in one tap handler. How many times does build run?

What a strong answer shows

Normally once, in the next frame. setState marks the State dirty and schedules a frame, so calls made before that frame are batched into one rebuild. A strong answer adds the failure case: calling setState after dispose throws, so cancel the asynchronous work or check mounted first.

Want more pages?

Free PDF, no sign-up: desktop layout, 11 pages or phone layout, 13 pages.

What is inside

  1. Junior: Flutter basics and architecture (Q1 to Q25)p. 9
  2. Junior: Dart language fundamentals (Q26 to Q60)p. 20
  3. Junior: Widgets and layout (Q61 to Q90)p. 39
  4. Junior: State management basics (Q91 to Q105)p. 54
  5. Junior: Navigation and routing basics (Q106 to Q115)p. 60
  6. Junior: Debugging and tools (Q116 to Q125)p. 65
  7. Mid: Advanced widgets and layout (Q126 to Q150)p. 71
  8. Mid: State management deep dive (Q151 to Q185)p. 82
  9. Mid: Networking and APIs (Q186 to Q210)p. 98
  10. Mid: Local storage and persistence (Q211 to Q225)p. 110
  11. Mid: Testing (Q226 to Q250)p. 118
  12. Mid: Animations (Q251 to Q265)p. 129
  13. Mid: Architecture patterns (Q266 to Q285)p. 136
  14. Mid: Platform channels and plugins (Q286 to Q300)p. 145
  15. Senior: Rendering internals and performance (Q301 to Q335)p. 153
  16. Senior: Concurrency and isolates (Q336 to Q355)p. 173
  17. Senior: Advanced architecture and design (Q356 to Q380)p. 184
  18. Senior: Firebase and backend integration (Q381 to Q395)p. 198
  19. Senior: CI/CD, security, and deployment (Q396 to Q410)p. 206
  20. Senior: Real-world scenarios (Q411 to Q425)p. 214
  21. Staff: Flutter engine and internals (Q426 to Q445)p. 227
  22. Staff: Scalable architecture and SDK design (Q446 to Q465)p. 238
  23. Staff: System design (Q466 to Q480)p. 251
  24. Staff: Technical leadership and trade-offs (Q481 to Q500)p. 263
  25. Staff interview lab, 40 bonus promptsp. 276
  26. Practical interview roundsp. 295
  27. Decision frameworksp. 296
  28. Performance and memory checklistp. 297
  29. Bonus, the night before your interviewp. 297

What readers say

  • “I've been doing Flutter for 2 years, and this is hands down the best Flutter book I've found on the market. Recommend.”

    Marko
    Gumroad verified purchase

Reader reviews from Gumroad. Review text preserved, with punctuation normalized to the site style.

Who this is for

This is for you ifyou need broad Flutter question coverage and a way to find the areas you cannot yet explain.

  • Junior Flutter Developer
  • Mid-level Flutter Engineer
  • Senior Flutter Engineer
  • Staff mobile candidate
The library pathWhere this fits
  1. 01Get foundThe Silent Rejection
  2. 02Build the record and negotiateThe iOS Engineer Playbook · Leverage
  3. 03InterviewThe iOS Interview Blueprint · The Senior Signal · Top 300 React Native Interview Questions · The Flutter Interview Book · The Senior SDET Interview HandbookYou are here
  4. 04Answer practice and live roundsThe 24-Hour iOS Interview Answer Book · The 24-Hour Android Interview Answer Book · Share Your Screen
  5. 05Architecture and qualitySwiftUI Under Load · Mobile System Design Blueprint · Security Is a Feature · The Second Pass
  6. 06Staff systems and ownershipAltitude · Ticket Taker, Outcome Owner
  7. 07Build with AIBuild With Your Brain On (coming soon) · Engineering Software with Coding Agents
  8. 08LeadBefore the Room
  9. 09ArchitectControlled Change
Portrait of Mike Salari

About the author

Mike Salari

Staff mobile engineer · 500+ technical interviews from the hiring side.

I designed this as an interview training system, not a package opinion or a list of definitions. The goal is calibrated mobile engineering judgement at every level.

15 years building production mobile software, with experience across Apple, Adobe, Cisco, Mastercard and Visa.

Read the full story

Before or after you buy

Share this book