A menos que esté trabajando en un problema comercial particularmente matemáticamente intenso o esté empujando los límites de lo que es computacionalmente posible, en su mayoría solo usará las matemáticas básicas. Y cuando te encuentres usando matemáticas un poco más complejas, con la suficiente frecuencia solo usarás funciones de biblioteca para reescribir ecuaciones proporcionadas por otros de una manera que haga que las ecuaciones sean ejecutables. Si desea trabajar en un área de software matemática, apunte a una empresa y equipo que trabaje en sistemas de bases de datos, sistemas operativos, sistemas distribuidos principales, o en convertir la teoría de la informática en herramientas de software utilizables.
Hay muchas personas en software que se dan aires e insisten en que todos los que quieran ser alguien en software deberían haber dominado toda la pila desde el silicio hasta la interfaz de usuario, o al menos todas las partes de esa pila que la persona de software elitista considera importante (a menudo no la interfaz de usuario, y a veces no las instrucciones de la máquina). Es tonto y pretencioso, pero no indica un desarrollador de baja calidad a menos que insistan en reescribir todo donde quiera que vayan. Si bien hay lugares en el software que requieren el rigor de la ingeniería, la mayoría del software está más cerca de trabajar en los oficios calificados donde dominar las habilidades básicas y las herramientas con las que trabaja son más importantes que la ciencia y la ingeniería que se utilizaron para crear esas herramientas.
- Durante la programación independiente, ¿debo seguir las mejores prácticas de programación, como usar la arquitectura MVC? ¿Qué sucede si no lo uso y aún se ejecuta mi código?
- ¿Cómo se organizan las bases de código en GitHub?
- ¿Qué es Selenium RC y para qué se utiliza?
- ¿Cómo pueden los programadores rastrear quién tiene su software cuando / si distribuyen versiones beta?
- ¿Cómo comercializo mi equipo de ingeniería a otros desarrolladores?