Flutter
Preparation for Flutter developer interviews: the widget tree and layout, state management compared (Provider, Riverpod, BLoC), navigation and architecture, networking and caching, performance and testing, platform integration and release.
Stages
Flutter fundamentals
The widget tree, layout and constraints, core widgets, theming and user input — the foundation of building UI in Flutter.
State management
From setState to BLoC: the lifecycle, the InheritedWidget mechanism, Provider, Riverpod, BLoC, and how to choose between them.
🔓 Recommended after: Flutter fundamentals
Navigation and architecture
Navigator, go_router and deep linking; splitting a project into layers, dependency injection, and handling error and loading states.
🔓 Recommended after: State management
Data and networking
The HTTP layer, JSON serialization, FutureBuilder/StreamBuilder patterns, and local storage with caching strategies.
🔓 Recommended after: Navigation and architecture
Performance and testing
Optimising rebuilds, profiling with DevTools, widget/unit/golden tests, and running integration tests in CI.
🔓 Recommended after: Data and networking
Production and interview
Platform channels, permissions, the build/flavour/release flow, rapid-fire questions, and live coding with architecture discussion.
🔓 Recommended after: Performance and testing
📚 Sources and documentation
- Flutter documentationofficialdocs.flutter.dev
The official starting point for widgets, layout and building UI.
- Flutter API referenceofficialapi.flutter.dev
- App architecture guideofficialdocs.flutter.dev
The Flutter team’s official architecture recommendations: layers and responsibilities.