¿Cuáles son TODAS las ramas separadas de los programadores de software (frontend, back-end, sistema, paralelo, cuántico, webdev, etc.)?

Hay tres:

  • Desarrolladores junior (que saben exactamente una cosa, como front end o back end)
  • Desarrolladores experimentados que conocen dos o más dominios (en el mundo del desarrollo web, este podría ser un desarrollador de pila completa)
  • Desarrolladores senior / líderes que conocen tantos dominios que no hay un punto para las etiquetas.

Sí, estoy siendo tonto aquí, pero el punto es que las etiquetas no son realmente relevantes. La habilidad general como desarrollador de software es la distinción interesante.

Por ejemplo, pasé de ser un programador generalista de desarrollo de juegos y motor de juegos a escribir controladores de sistema en OCR para el desarrollo de aplicaciones móviles y luego al desarrollo web completo. Cada uno de los campos tardó unos días en ser productivo, y algunas semanas para estar a la par con un “experto” que solo conocía ese campo.

Algunos dominios requieren más matemáticas. Mencionas cuántica. Esa es un área donde no he mirado alrededor, principalmente porque todavía es muy teórico. Ni siquiera sé si requiere matemáticas, pero lo poco que sé implica que podría hacerlo. Algunos aspectos del aprendizaje automático (como el desarrollo de nuevos algoritmos) ciertamente lo hacen.

Pero eso se reduce a la experiencia de dominio, que es algo ortogonal a las disciplinas de ingeniería de software. Incluso el desarrollo web puede subdividirse en experiencia en la materia. Alguien que esté familiarizado con los requisitos legales de registros médicos, por ejemplo, puede ser necesario para trabajar en un sitio médico. Y la mayoría de los sitios apuntan a COPPA en lugar de tratar de cumplir.

Hay demasiados para enumerar … cada lista extrañaría docenas de ellos.

Además, estos campos tienden a dividirse aún más en subcampos y sub-sub-especializaciones, lo que haría las cosas aún más difíciles.

Considere mi campo … “Aplicaciones” … “Aplicaciones / Juegos” … “Aplicaciones / Juegos / Videojuegos” … “Aplicaciones / Juegos / Videojuegos / Gráficos” … “Aplicaciones / Juegos / Videojuegos / Gráficos / EngineDesign”

¿Dónde te detienes?