La ingeniería de software es increíble

Hace unos días escuche en un podcast lo que probablemente fue la definición (¿filosófica?) de Ingeniería de Software que más me ha gustado:

Ingeniería de Software es ideas y matemáticas;
es una persona que imagina algo y toma acción para materializarlo.

La Ingeniería de software es única, un desarrollador de software se sienta frente a una computadora y sin ningún tipo de insumo, de materia prima, armado con solo sus ideas, conocimiento y experiencias, es capaz de crear software increíble.

Software que se pública en un servidor, se sube a una tienda de apps, que se distribuye casi instantáneamente a todo el mundo y puede cambiar las reglas de cualquier actividad de manera disruptiva.

Dado que el recurso natural que consume el software son ideas de personas, la manera de aumentar la densidad del talento en una empresa es contratar a todas las personas que puedan aportarlas.

Tres ingenieros de software de ultra alta calidad pueden hacer el trabajo de treinta ingenieros de software promedio, pero un ingeniero de software de ultra alta calidad desmotivado, puede ser simplemente un ingeniero de software promedio.

El componente humano en la ingeniería de software es lo que la hace complicada, las personas tienen vidas, tienen problemas, quieren irse de vacaciones, de fiesta y aquí es donde las empresas la tenemos difícil, mantener a un equipo motivado y rindiendo al máximo es duro.

Por ello he hecho mía la ideología de Reed Hastings, CEO de Netflix:

Promover la flexibilidad, la libertad y la innovación de nuestros colaboradores, en lugar de la prevención de errores y la adherencia a las reglas.

La ingeniería de software es una vocación, te tiene que gustar escuchar los problemas de las personas, buscar soluciones, ser creativo, debes poder concentrarte, tener un pensamiento estructurado y me vas a decir -hey, estructurado y creativo no van juntos-, y si podría parecer que se contraponen pero en la ingeniería de software es así, sabes; esa es la parte que aportan las matemáticas a los ingenieros de software.

Por lo cual el mejor equipo para trabajar es aquel donde los colegas son verdaderamente excepcionales, que confían los unos en los otros, que hacer un buen trabajo les motiva esforzarse más por hacerlo aun mejor, y mejor aún están al alcance de un clic: ITRENDS: Construye software con un equipo confiable.