Tiendo a estar de acuerdo con las respuestas de Jeff Darcy y Abhishek Chanda: puedes hacer un trabajo significativo en un sistema existente, pero desarrollar una comprensión de cómo funcionan los sistemas a escala requiere, bueno, escala. Es difícil, si no totalmente imposible, juzgar el rendimiento, la carga y las características de falla de un sistema a escala hasta que ya haya estado allí y haya lidiado con muchas fallas.
Hablando de fallas, una de las cosas más importantes cuando se construye un sistema distribuido es un buen monitoreo y alerta, razón por la cual empresas como PagerDuty han tenido tanto éxito en los últimos tiempos. La peor falla posible en un sistema es de tipo silencioso, y a menos que preste mucha atención a la construcción de buenos controles de salud, es muy posible que un sistema permanezca en mal estado durante horas o incluso días. Supongo que simular ese tipo de comportamiento en una computadora portátil no es imposible con el uso inteligente de redes y contenedores virtualizados, pero si alguien ha construido un sistema de este tipo, nunca he oído hablar de él.
- Si usted es un desarrollador de software, si trabajó en un lugar donde no se siguieron los rigurosos estándares de software, los requisitos estaban mal escritos, las pruebas estaban mal hechas, ¿se iría automáticamente? ¿Qué pasa si la paga, el viaje y otros factores fueron muy buenos?
- ¿Para qué lenguaje de programación hay más trabajos de desarrollador o programador junior en la costa este de Estados Unidos?
- Estoy buscando comenzar una carrera como desarrollador de software, ¿qué habilidades necesito para ingresar al sector de TI y conseguir mi primer trabajo?
- ¿Cuántos desarrolladores de software se necesitan para abrir una lata de atún?
- Preguntas de la entrevista técnica: ¿Cómo diseñaría un sistema para almacenar el historial de búsqueda de sus usuarios?