Para ser un buen ingeniero de software, debe tener curiosidad sobre los sistemas y las máquinas y tener pasión por aprender sobre ellos. Muchos desarrolladores tienen pasatiempos que giran en torno a las máquinas, ya sean bicicletas, automóviles, guitarras, cámaras, legos, barcos, motocicletas, cocina o juegos.
Para responder la pregunta más directamente si está desarrollando una consola de juegos o sistemas integrados, necesitará saber cómo explotar cada parte de ella para obtener rendimiento: usar coprocesadores matemáticos cuando están inactivos, etc.
Para ser un desarrollador web de propósito general, debe comprender las partes de una PC lo suficientemente bien como para poder especificar las partes de New Egg y ensamblarlas. Comprenderá el rendimiento y las limitaciones y las compensaciones que deben realizarse. También debe comprender los conceptos de subprocesamiento, paralelismo, virtualización y almacenamiento. Debes saber lo que hace un compilador. Debe saber sobre el monitoreo y el registro y las responsabilidades del sistema operativo.
- ¿Qué deben saber todos los ingenieros de software sobre R?
- ¿Cómo afectará el aprendizaje automático al ingeniero de software promedio?
- ¿Cuál es el salario y las oportunidades profesionales para un estudiante de comercio en el mundo de la codificación y cómo ser desarrollador de aplicaciones o ingeniero de software?
- Si tuviera una entrevista de ingeniero de software con Google mañana, ¿qué haría hoy?
- ¿Los ingenieros de software felices realmente disfrutan de la programación? Soy estudiante de CS en una universidad estadounidense de élite. No me gusta programar. Si logro convertirme en ingeniero de software, estaré programando 8 horas al día (en promedio). ¿Estoy condenado?
A medida que expanda su carrera, puede trabajar en aplicaciones que ejecutan diferentes funciones en diferentes motores informáticos: diferentes “cajas” en la “nube” que realizan funciones similares a la CPU, RAM, disco duro, sistema operativo y buses de la PC.
Estamos en transición hacia un mundo “posterior a la PC”, pero la forma básica en que una PC funciona hoy es un modelo para el futuro de la informática distribuida.