Design scenario-based speaking feature
SpeakSoftware Engineer · OnsiteLast updated
This question evaluates system-design competency in building scalable, real-time, multilingual audio-driven learning features, including product modeling, session orchestration, audio pipelines (ASR/TTS), personalization, localization, telemetry, and privacy/security considerations.
Design a scenario-based speaking practice feature for a multilingual learning app that lets users pick any scenario (e.g., ordering food, job interview) and practice spoken dialogs. Describe the user flows, content modeling (scenarios, roles, prompts), session orchestration, and how you would handle audio capture, latency, and offline fallback. Explain personalization (level selection, adaptive difficulty), progress tracking, and content localization for multiple languages. Detail the service architecture, storage choices, APIs, rate limiting, and how you'd scale to millions of sessions while keeping cost low. Identify key privacy/security considerations and how you'd experiment and roll out new scenarios.
Solution walkthrough is for members
Get the full walkthrough with reference code and complexity analysis, plus Kitty Coach at 300 messages a day. Hints, the code runner and community answers stay free.