Primero voy a responder la pregunta, luego le daré mi opinión sobre los profesionales del software, el progreso profesional, la gestión y el liderazgo.
Trayectorias de carrera típicas de ingeniería de software
Los ingenieros o desarrolladores de software generalmente se promocionan en función de sus habilidades técnicas. A medida que mejora y aumenta sus habilidades, es promovido a través de los “rangos” técnicos típicos, que generalmente son Jr. SW Developer, Intermediate SW Developer y Sr. SW Developer. Las diferentes organizaciones pueden tener diferentes nombres y diferentes calificaciones para cada función, pero en general, tienen aproximadamente las mismas pautas.
Opciones de antigüedad
A medida que avanza hacia los roles de Senior, generalmente tiene un par de opciones:
- Cómo cambiar de redacción técnica (3 años de experiencia) a desarrollador de software (PG en informática)
- ¿Qué hace un desarrollador de software en principio? Mi designación es esa también, pero solo puedo hacer desarrollo web en el trabajo.
- ¿Cuál es la diferencia entre un desarrollador de software junior y uno intermedio?
- ¿Puede escuchar audiolibros mientras programa?
- Cómo prepararme para posibles entrevistas de pasantía para desarrolladores de software
- La mayoría de las organizaciones (Google es un ejemplo) ofrecen una función de liderazgo técnico, que es una combinación de aspectos técnicos con algunos de gestión. Esto generalmente se considera la mejor manera de probar el trabajo de tipo gerencial sin estar completamente comprometido. A partir de este rol, la mayoría de las organizaciones permiten el avance a un rol de gerente completo o un rol técnico superior (ver # 2 a continuación). Personalmente, encontré este uno de los roles más difíciles en mi carrera porque los roles técnicos y de gestión son muy diferentes y requieren muchos cambios de opinión (más sobre eso más adelante)
- Los profesionales de software senior también pueden convertirse en gurús técnicos. Las diferentes organizaciones tienen diferentes nombres para este título que van desde “Arquitecto” hasta “Desarrollador de software Sr.” y “Director técnico”. Básicamente es una designación senior para roles técnicos. Este rol generalmente no tiene ningún informe directo, pero tiene la propiedad técnica de un producto o pieza de software. El rol es un rol de liderazgo técnico donde se espera la tutoría y el apoyo de más profesionales de software junior.
Ahora que describí las opciones, permítanme decir mis dos centavos sobre los profesionales y la administración de software.
Los grandes desarrolladores de software no son iguales a los grandes gerentes
La administración requiere un conjunto de habilidades completamente diferente a la creación de productos de software. Si está interesado en las diferencias, puedo compartirlas con usted; no hace falta decir que las habilidades son diferentes. Es peligroso asumir que un gran desarrollador de software puede ser un gran administrador, porque las habilidades que los convierten en un gran profesional del software no los convierten automáticamente en grandes administradores. Para completar el argumento, los grandes gerentes tampoco son necesariamente grandes desarrolladores de software, por la misma razón.
La gestión y el liderazgo no son lo mismo
Uno de los errores más grandes que la mayoría de las personas jóvenes (y algunas personas mayores) piensan, es que el liderazgo viene con la administración. Eso es completamente falso. Liderazgo no es lo mismo que gestión. La administración se trata de administrar recursos, ya sean personas, productos, finanzas, programas, etc. El liderazgo se trata de inspirar, apoyar, desarrollar y sacar lo mejor de las personas. Según esa definición, no es necesario administrar a las personas para liderarlas. Entonces, mientras considera la progresión y el crecimiento de su carrera, piense en lo que quiere hacer como una persona mayor. Puede liderar a su equipo sin administrarlos (consulte la opción 2 más arriba).