Como ingeniero de software experimentado, ¿qué tipo de conocimiento debo obtener, que no será obsoleto para 2031?

  1. Documentos de diseño: UML, listado de requisitos, casos de uso, etc. etc. Éstos tienden a ser independientes de la tecnología y el lenguaje, aunque los cambios en las metodologías (Agile vs. Waterfall) podrían requerir ajustes de formato.
  2. Anti-patrones de diseño: los patrones de diseño se promocionan como herramientas de comunicación entre ingenieros de software. Los antipatrones pueden cumplir funciones similares, pero al reconocerlos en su propio trabajo, puede reparar las cosas antes. Lo que significa un poco menos. . .
  3. . . . Lidiando bien con las críticas: esto nunca será obsoleto y puede llevarse a cualquier campo.
  4. Gestión de reuniones: mantener las reuniones en marcha significa mucho más que limitar las tangentes. Asegurarse de que todos se sientan escuchados, realizar un seguimiento de las tangentes que se discutirán fuera de línea, mantener informados a quienes no pudieron asistir.
  5. MATLAB, IDL, Fortran – Porque simplemente. no lo haré morir.
  6. Mantenerse al día: mi lector de RSS es la pieza de tecnología de la que menos me gustaría prescindir. Cultivar una lista de sitios o autores de noticias de tecnología y poder elegir de manera eficiente lo que es relevante y lo que no le permite saber a dónde ir si necesita una pieza de tecnología.

Para habilidades técnicas específicas (lenguajes de programación, marcos, plataformas y demás), es literalmente imposible de decir. La tecnología avanza rápidamente y a un ritmo difícil de predecir. Probablemente ni siquiera podamos predecir qué estará en uso dentro de 5 años, y mucho menos 15 años.

Concéntrese en habilidades blandas y principios técnicos que serán los mismos sin importar la tecnología que se utilice:

1. Aprende a comunicarte bien. Eso significa escuchar y leer y escribir y hablar y una buena gramática y transmitir sus ideas claramente

2. Comprensión de los patrones de diseño en software. Dichos patrones de diseño prevalecen independientemente de la tecnología en uso (aunque pueden verse ligeramente diferentes en cada plataforma)

3. Diseño de interfaz de usuario: que incluye presentación, facilidad de uso, etc.

4. Análisis de negocio / requisitos: desarrollo de requisitos de clientes, etc.

5. Trabajando bien con otras personas. Eso significa manejar el conflicto, saber cómo ayudar a las personas que lo están haciendo mal, y aprender de las personas que lo están haciendo bien, y poder trabajar bien con equipos y horarios

6. Un sesgo hacia el aprendizaje y la superación personal: debe explicarse por sí mismo. Siempre busca avanzar y mejorarte

Si eres un ingeniero de software experimentado, tienes mucha experiencia que no será obsoleta en 15 años. Se trata de cosas abstractas: habilidades de comunicación, trabajo en equipo, análisis de sistemas y procesos, diseño de soluciones, interacción con usuarios / clientes.
Todas las tecnologías que utiliza en un momento dado son candidatas para ser historia en los próximos cinco años.

More Interesting

¿Es socialmente inaceptable conducir un Porsche en Silicon Valley como ingeniero de software?

¿Cuál es el mejor consejo que puede dar a un programador junior?

Como ingeniera de software femenina, ¿cómo puedo saber si soy discriminada por mi género (por equipos exclusivamente masculinos) o si simplemente no tengo habilidades de comunicación?

Cómo aprender rápidamente a convertirse en un ingeniero de software senior con experiencia limitada

¿Cuál es un título más práctico y / o más fácil de obtener, seguridad cibernética o ingeniería de software? ¿Por qué?

Me contrataron como ingeniero de software, pero cuando me uní hace 2 meses, me pusieron en un equipo de control de calidad. ¿Está bien cambiar de trabajo ahora ya que no me gusta el trabajo?

¿Qué habilidades debo probar al contratar a un ingeniero de software?

¿Qué tan malos son los peores ingenieros de software en las principales compañías como Google y Facebook?

Me pregunto si un ultrabook Intel i3 1.4 ghz es lo suficientemente rápido para mí ... soy ingeniero de software, así que solo necesito ejecutar algunas herramientas de software ... también tener un RAM más grande lo hace más rápido o no ...

¿Qué debe hacer un ingeniero de software si su experiencia aumenta, ya que más experiencia significa más presión?

¿Vale la pena que un ingeniero de software practique matemáticas en Khan Academy?

No estoy satisfecho con mi trabajo en este momento. ¿Debo cambiar a un trabajo diferente o continuar con mi trabajo actual?

¿Por qué exactamente Google contrató a un sorprendente 8% de los graduados de MS en ingeniería mecánica como ingenieros de software de Carnegie Mellon en 2016?

¿Puede un ingeniero de software convertirse en ingeniero de datos?

Como ingeniero de software, ¿cómo lidias con un gerente egoísta, corrupto, astuto y barato que promueve a su miembro favorito del equipo a pesar de su falta de habilidades, en lugar de personas trabajadoras en su equipo?