“How would you design a rate limiter for our public API?”
Empieza por las suposiciones, no por la arquitectura: «Let me state a few assumptions and you can correct me. I'm assuming we're limiting per API key, not per IP…». Pon una cifra sin comprometerte con «let's say around a thousand requests per second» y cierra pidiendo confirmación: «does that match what you had in mind?».
Before I design anything, let me state a few assumptions and you can correct me. I'm assuming we're limiting per API key, not per IP, and that we care more about protecting the backend than about being perfectly fair. Let's say around a thousand requests per second. With that, I'd go for a token bucket in Redis. Does that match what you had in mind?
Nivel B1-B2: pensada para que la adaptes a tu experiencia, no para memorizarla palabra por palabra. Cambia el stack, los años y el contexto por los tuyos.
Un enunciado de system design está incompleto a propósito: faltan la escala, los usuarios y las garantías. El entrevistador mide si pides ese contexto o si te inventas un sistema para un problema que nadie te ha planteado. En inglés hay un premio extra: enunciar suposiciones en voz alta te da tiempo para pensar sin quedarte callado, que es lo que de verdad hunde estas rondas cuando el idioma no es el tuyo.
En resumen: En system design, las suposiciones son la respuesta. «Let me state a few assumptions» te compra treinta segundos para pensar y convierte un monólogo en una conversación. Y «let's say around…» sirve para poner una cifra sin comprometerte.
Esta pregunta se responde en voz alta y bajo presión. En DevLingo la ensayas con un tutor IA que hace de entrevistador y te corrige la frase concreta que dijiste mal, no un listado genérico de errores.
Ensayar esta pregunta gratisTodas las preguntas de entrevista·Glosario de inglés técnico