¿Un ingeniero de software necesita estar aprendiendo constantemente a lo largo de su carrera? ¿Cómo se puede comparar este aprendizaje constante con la ingeniería mecánica?

El problema de comparar software con ingeniería mecánica es que son muy diferentes, y no solo en términos de materia. Puede que me esté metiendo en problemas aquí, pero describiré mi punto de vista.

Dos de las grandes diferencias entre los campos son: la cantidad de dominios específicos de conocimiento y la rapidez con que una persona puede llegar a dominarlos. La ingeniería mecánica tiene comparativamente pocos campos de estudio, pero son tan profundos que generalmente se necesitan años para ser competentes en la aplicación de ese conocimiento. Por ejemplo, al salir de la universidad, muy pocos ingenieros pueden ser analistas de estrés efectivos. Por lo general, se requieren varios años de análisis para ser capaz de modelar con precisión una estructura e interpretar los resultados del comportamiento. Por otro lado, los ingenieros de software generalmente son expertos en escribir un buen software (¿quizás?) Al salir de la universidad. Ni siquiera necesariamente necesitas un título universitario para ser un buen ingeniero de software. Sin embargo, la cantidad de cosas con las que un buen ingeniero de software tiene que estar familiarizado es mucho mayor. La cinemática como campo no está cambiando tan rápidamente como el diseño del lenguaje de programación o la programación web. Los cambios de software son tan rápidos que tienes que estar constantemente al tanto de los cambios. Por lo general, no puede estar al día con cada tecnología que se está creando, pero puede mantenerse actualizado dentro de un tema o área determinada.

Dicho esto, los estudios continuados para cada campo son diferentes. La ingeniería requiere una comprensión más profunda de los principios físicos. Si bien el conocimiento profundo es una forma de continuar con el dominio del software, otra forma es ampliando el estudio de las tecnologías emergentes.

T

Todos los ingenieros necesitan estar aprendiendo constantemente a lo largo de sus carreras. No importa si es mecánico o software. Si temes el desafío o el trabajo requerido para aprender constantemente en ingeniería, debes cambiar a una carrera que requiera muy poco aprendizaje continuo, como enseñar latín.

Soy ingeniero porque me gusta aprender cosas nuevas. En EE, he pasado de las puertas PMOS NAN a Karnaugh Maps y Quine-McClusky a Verilog a SystemC. En software, he pasado de BASIC a FORTRAN a C a ANSI C a lenguajes orientados a objetos a Schlaer-Mellor a síntesis a UML a Java y HTML y viceversa. Esto es bueno, y es divertido.

El software y la ingeniería mecánica son diferentes en el contexto de esta pregunta, porque existe una tasa de cambio más alta en la tecnología predominante en el software que en la ingeniería mecánica. Por lo tanto, tiene que hacer un aprendizaje más constante en Software para mantenerse actualizado, mientras que en ME lo que aprende permanece fresco y relevante por más tiempo.