Para el rol de ingeniero de back-end
Ronda cero:
Dada la lista de ciudades y la lista de teatros, diseñe y desarrolle una aplicación web de reserva de boletos.
Debe tener las siguientes características:
- Solo una persona puede reservar el asiento por espectáculo. Manejar requests concurrentes provenientes del mismo asiento.
- Si se selecciona un asiento y no se reserva, debe desbloquearse después de 10 minutos.
- Exponga la API para mostrar la lista de asientos disponibles, bloqueados y reservados para un teatro
Primera ronda:
- El entrevistador revisa el diseño, el código y pregunta a otras características.
- Problema de codificación: dado un tamaño de array grande de 10 ^ 18X10 ^ 18 y enumere las subtablas con las coordenadas superior izquierda e inferior derecha y el número completo en esas tablas. Ilustración a continuación. Encuentra las coordenadas del número ‘n’.
Segunda ronda:
- Pregunta de diseño: diseñe una aplicación en la que el cliente desee cargar millones de registros, validarlos e insertarlos en la base de datos.
Condiciones:
- No debe haber ninguna pérdida de datos.
- Manejar si DB se cae temporalmente
- Preguntas sobre patrones de diseño.
Tercera ronda:
- Diseño “Servicio Ejecutor”
- ¿Cómo se gestionan los hilos en el servidor web?
- ¿Cuáles son los desafíos técnicos que enfrentó en su empresa anterior?
- ¿Diferentes algoritmos de recolección de basura?
Publicación traducida automáticamente
Artículo escrito por Nikesh Devaki y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA