Skip to content
tezvyn:

Architecture

376 bites tagged Architecture — interview questions with model answers, and 60-second explainers.

Android & Kotlin2 min read

Describe state hoisting in Jetpack Compose.

Tests your grasp of unidirectional data flow. Explain state hoisting is moving state up to make composables stateless. This improves reusability, testability, and creates a single source of truth. A red flag is defining it without explaining the benefits.

Android & Kotlin2 min read

Bound Service Lifecycle: Config Changes and Multiple Clients

Tests deep knowledge of bound service lifecycles. A config change causes an unbind/rebind cycle, recreating the service. With multiple clients, the service isn't destroyed until the last one unbinds. Red flag: assuming the service survives the config change.

Android & Kotlin2 min read

Hot vs. Cold Streams: StateFlow vs. Flow in Android

This tests your grasp of stream lifecycles. A great answer defines cold `Flow` (lazy, per-collector) vs. hot `StateFlow` (active, shared state) and uses a ViewModel UI state scenario. A red flag is mischaracterizing a `Flow` as a one-time operation.

Android & Kotlin2 min read

When to use a sealed class instead of an enum?

Tests your grasp of Kotlin's type hierarchies. Use `sealed class` for states with associated data (e.g., `Success(data)`), as subclasses can have unique properties. Use `enum` for simple, constant states. A red flag is treating them as interchangeable.

Analytics & Metrics2 min read

Design a self-service analytics platform for non-technical users

Tests your ability to design a layered system for non-technical users. A great answer outlines a semantic layer for data modeling, a no-code UI for exploration, and a query generation engine.

Analytics & Metrics2 min read

Build a pipeline to load CSVs into a database

Tests your grasp of event-driven architecture and basic ETL. A good answer outlines a trigger (storage event), a processing function (serverless), and a destination (database), mentioning error handling. A red flag is describing a manual or cron-based process.

Analytics & Metrics2 min read

Build vs. Buy: Third-Party vs. In-House Analytics

Tests your grasp of the time-vs-control trade-off. A great answer weighs speed vs. customization and total cost of ownership. Advocating for 'build' without considering the massive, ongoing maintenance cost is a major red flag.

Agile & Scrum1 min read

Atlassian Details its ML Studio Platform Design

Atlassian's ML Studio platform powers thousands of daily workflows for millions of Rovo users. It solves enterprise scaling issues with reusable modules, column-level data governance, and unified orchestration, offering a blueprint for building compliant…

Agile & Scrum2 min read

How would you design an architecture for rapid product iteration?

Tests your grasp of evolutionary architecture for uncertain markets. A great answer outlines incremental change via modularity and CI/CD, fitness functions to guard qualities like security, and evolving across multiple dimensions (tech, data).

Agile & Scrum2 min read

What is an Architectural Runway and how do you maintain it?

Tests balancing intentional architecture with emergent design in SAFe. Define it as the tech foundation for near-term features, built via Enabler stories. You contribute by identifying and implementing these enablers.

Agile & Scrum2 min read

How to apply Conway's Law to design team structures?

Tests if you can use Conway's Law proactively (the 'Inverse Conway Maneuver'). Outline: define the target architecture, then align small, autonomous teams to its components. A red flag is seeing the law only as a constraint, not a tool for intentional design.

Agile & Scrum2 min read

Decomposing a monolith for scaled agile teams

Tests your grasp of domain-driven design and data consistency in a microservice migration. A good answer identifies bounded contexts, defines versioned APIs, and uses event-based patterns for data.

Agile & Scrum2 min read

Differentiating an MVP from a throwaway prototype

Tests your grasp of strategic technical investment. Differentiate by intent: an MVP is the first version, a prototype is disposable. A great answer introduces Minimum Viable Architecture (MVA) to support future needs.

Agile & Scrum2 min read

Shared Solution vs. Duplication for Cross-Cutting Concerns

Tests your judgment on trade-offs between duplication, coupling, and velocity. A good answer weighs the cost of premature abstraction against future refactoring, using triggers like the 'Rule of Three' and evaluating the concern's volatility.

Agile & Scrum2 min read

The Strangler Fig Pattern for Legacy System Refactoring

Tests your understanding of gradual legacy modernization and risk management. A great answer defines the pattern (new system grows over old), outlines the process (identify seams, build new, redirect traffic), and contrasts it with risky "big bang" rewrites.

Agile & Scrum2 min read

Balancing Emergent Design with Long-Term Architectural Vision

This tests your grasp of scaling Agile. A strong answer defines emergent design and intentional architecture, explaining how an 'Architectural Runway' provides the technical foundation to balance them. A red flag is treating this as an 'either/or' choice.

Agile & Scrum2 min read

Explain the Test Pyramid and its strategic use

Tests your grasp of balanced testing trade-offs. A good answer defines the Unit, Service, and UI layers, explains the cost/speed rationale, and applies it to a feature strategy. A red flag is describing the pyramid but not its strategic 'why'.

Agile & Scrum2 min read

How does Agile's 'welcoming change' differ from chaos?

Tests if you know Agile flexibility requires engineering discipline. Answer by defining the difference (discipline vs. chaos), listing technical practices (TDD, CI/CD), and naming architectural patterns (modular design).

Vue, Angular & Svelte2 min read

Container vs. Presentational: A Component Separation Pattern

Split components into 'smart' containers that handle data and logic, and 'dumb' presentational components that just render UI. This lets you reuse state across different views, like showing a product list in a grid or a table.

Vue, Angular & Svelte1 min read

Vue Plugins: Add App-Wide Functionality

A Vue plugin packages reusable logic to add features across your entire app, like a global toolbox. Use them for routing, state management, or making custom functions globally available.

Vue, Angular & Svelte2 min read

Angular Services: Your App's Shared Toolbox

An Angular service is a shared toolbox for your app. Instead of components building their own tools (like an HTTP client), they request a single instance from the dependency injector.

Vue, Angular & Svelte2 min read

Vue Dynamic Components: Swap Components on the Fly

Use Vue's `<component :is="...">` element to render different components based on a state variable, like swapping views in a tabbed interface. The footgun: components are destroyed on switch; use `<KeepAlive>` to preserve their state and avoid losing user…

Vue, Angular & Svelte2 min read

Angular's Hierarchical Dependency Injection

Angular's DI is a tree of injectors mirroring your components. When a component needs a service, Angular walks up the tree to find the first provider. Use it to scope services to UI branches, but beware: providing at a component level creates a new instance.

UI Design & Figma2 min read

Real-time Collaboration: Figma's 'Multiplayer' Model

Real-time collaboration uses a central server as the single source of truth for a file. Instead of passing copies, users connect to the same live document, enabling simultaneous editing in tools like Figma.

Get Architecture bites daily.

Five a day, five minutes, offline. With quizzes so it sticks.

Open testing — you’ll join as an early tester.