La escalera de la carrera de desarrollo necesita una nueva evaluación: no todos los desarrolladores senior deberían ser gerentes


Esta artículo fue publicado originalmente en .culto por Nadya Primak. .cult es una plataforma de medios para historias de desarrolladores no contadas, donde los desarrolladores pueden leer contenido en el lado más suave del desarrollo y ver documentales sobre la tecnología que aman. Puedes leer esta pieza original aquí.

La carrera profesional de los ingenieros de software a menudo es confusa e inconsistente. Muchas personas que se dedican al desarrollo de software tienden a entrar con visión de túnel: ni siquiera piensan en la escala profesional porque están tan concentrados en el próximo aumento de sueldo o la próxima versión. Además, saben que hay al menos dos pasos en la escalera de los que preocuparse antes de que ocurra algo dramático: los desarrolladores junior se convierten en desarrolladores de nivel medio y los desarrolladores de nivel medio se convierten en desarrolladores senior. ¿Pero qué pasa después de eso?

Muchos de los problemas de los que los desarrolladores se quejan en la industria tecnológica están anidados dentro de esa pregunta. Si ha estado codificando durante los últimos cuatro o cinco años de su vida, pasando más tiempo frente a la computadora que frente a otras personas, es probable que sus habilidades sociales se hayan visto afectadas. Si eres extrovertido o incluso moderadamente extrovertido, esto probablemente no sería un gran problema. Pero si siempre ha sido del tipo que prefiere quedarse en casa o, peor aún, prefiere la compañía de computadoras en lugar de las personas, un gerente es probablemente lo último que desea ser.

El problema con la promoción de todos los desarrolladores senior a gerentes

Desafortunadamente, muchas organizaciones promueven a los desarrolladores senior a roles gerenciales. Existe una suposición errónea entre las personas en el liderazgo de que aquellos que desarrollan un alto nivel de experiencia en su campo naturalmente serán buenos en la gestión. No consideran que lo que hace a un buen ingeniero de software y lo que hace a un buen gerente a menudo puede estar en desacuerdo entre sí. Los buenos desarrolladores son pensadores profundos y orientados a los detalles que prosperan en la resolución de desafíos técnicos que, al final del día, están resueltos o no resueltos. Los buenos gerentes pueden ver el panorama general y prosperar resolviendo problemas a nivel organizacional que requieren negociar, comprometer y, a veces, confrontar a otras personas. Este tipo de problemas rara vez tiene un resultado en blanco y negro, y generalmente no hay una recompensa tangible además de la relativa felicidad de los empleados.

He experimentado esto de primera mano con uno de mis gerentes anteriores. Tenía un currículum vitae impresionante, después de haber trabajado en la base de muchas nuevas empresas como CTO y fundador, pero parecía estar mucho más orgulloso del hecho de que había estado codificando durante tres décadas. En la superficie, parecía que sería un buen gerente, probablemente porque exudaba mucha confianza.

Lamentablemente terminó siendo todo lo contrario. A los líderes les tomó meses tomar medidas a pesar de las quejas de muchos empleados. Lo que fue especialmente incómodo fue la forma en que el gerente respondió cuando descubrió que estaba bajo fuego. En cada 1: 1 me pedía directamente comentarios negativos que tenía sobre él, como si simplemente le dijera a la cara. Fue increíblemente incómodo y demostró un completo fracaso en la comprensión de las normas sociales. Sin mencionar la empatía por la otra persona en la sala y cómo se sentirían si se les hicieran esas preguntas. También parecía creer que si nadie les daba la retroalimentación negativa en su cara, eso debía significar que en realidad estaba funcionando bien.

En última instancia, este gerente en particular se adaptaba mucho mejor a la programación como colaborador individual en lugar de liderar un equipo.

Vías alternativas para desarrolladores senior

Afortunadamente, algunas compañías han dejado de promocionar a todos sus ingenieros de software a gerentes. Un enfoque alternativo es dar a los desarrolladores de software tres «pistas» diferentes para elegir. Los desarrolladores pueden asumir una variedad de responsabilidades de liderazgo dependiendo de la pista. Por ejemplo, existe la pista principal del equipo donde los ingenieros superiores se convierten en desarrolladores principales que toman algunas de las decisiones técnicas más difíciles y difíciles para el equipo. También ayudan a guiar a sus compañeros de equipo, pero no asumen tantas tareas administrativas como un gerente de ingeniería.

Para los desarrolladores que no tienen interés en asumir tareas de liderazgo, existe la opción de convertirse en un arquitecto de software. Estos desarrolladores pueden tomar decisiones técnicas que generalmente afectan el futuro de la empresa y a menudo se les confía las llaves del reino. Estos desarrolladores son los que entienden cómo encaja todo el software y tienen un modelo mental que incluye cada pequeño rincón y grieta del código.

La mejor parte de tener este sistema de tres pistas para promover ingenieros de software es que hay margen de maniobra para cambiar entre pistas si un desarrollador decide que quiere probar algo diferente o si resulta que no son adecuadas para la pista en la que se encuentran. Reduce el riesgo de crear gerentes terribles que terminan causando que otros desarrolladores abandonen o pierdan la motivación. La personalidad y la actitud de los gerentes en una organización a menudo influyen en la cultura. Es importante que el liderazgo se comunique con sus informes directos y pueda identificar y solucionar problemas cuando surjan.

Desafortunadamente, incluso este sistema de tres pistas no es a prueba de balas. El favoritismo, la lentitud para mover a las personas a un camino diferente y las métricas de promoción deficientes pueden hacer que incluso el mejor sistema se desmorone. Las nuevas empresas pueden ser especialmente vulnerables a los desarrolladores que pueden absorber al CEO y evitar los procesos formales. Si bien las grandes empresas tienden a tener menos de ese problema, a menudo adoptan sistemas de clasificación que pueden o no ser efectivos para identificar a los mejores empleados, dependiendo de lo fácil que sea jugar el sistema y cuántas personas caigan entre las grietas.

Confundir aún más las aguas es el hecho de que los desarrolladores a menudo cambian de trabajo cuando no ven un camino a seguir en su empresa actual. Mi primer título oficial cuando entré en el campo fue «Ingeniero de software». Cuando me mudé a DC se convirtió en «Desarrollador UI / UX» y negocié un aumento salarial bastante considerable a la luz de la diferencia en el costo de vida de Missouri. El siguiente trabajo terminó dándome un título senior a pesar del hecho de que tenía menos de 2 años de experiencia en la industria. Otorgaron antigüedad a los desarrolladores no solo por años de experiencia, sino por el salario de ese desarrollador.

Esto me llevó a una situación extraña y algo incómoda cuando, dos trabajos después, me encontré nuevamente en un título de nivel medio. Desde la perspectiva de un extraño, parecía una degradación. No sabía si eliminar «senior» en mis puestos anteriores en LinkedIn o si eso terminaría lastimándome más. Ocurre porque no hay un estándar para calificar el nivel de habilidad de un desarrollador en toda la industria, y ciertamente no hay un estándar de pago según ese nivel.

¿Una posible solución?

Es por eso que algunos desarrolladores han estado pidiendo la creación de una organización responsable de estandarizar los requisitos y habilidades que los desarrolladores necesitan en los Estados Unidos para crear un campo de juego más nivelado y también un sistema que permita a los desarrolladores abogar por ellos mismos y figurar si están siendo mal pagados. A diferencia de estos sistemas de tres pistas que aún permiten a los gerentes tomar decisiones basadas en su propia opinión sobre un desarrollador, una organización comercial para desarrolladores crearía un tercero que responsabilizaría a los gerentes.

Ciertamente, existen problemas potenciales que podría presentar una organización comercial, pero en este momento la industria de la ingeniería de software es básicamente el salvaje oeste cuando se trata de promociones. Tienes desarrolladores con 10 años de experiencia que pagan 45K junto con desarrolladores junior en start-ups que hacen más de 100K.

La gente subrepresentada en tecnología todavía está viendo una brecha entre sus cheques de pago y los de sus homólogos blancos. Cada vez que conseguía un nuevo trabajo, una parte de mí sentía que volvía a estar en el punto de partida. A medida que la tecnología se vuelve cada vez más compleja y los humanos dependen de ella a diario, parece que la falta de una industria comercial no solo puede ser problemática sino incluso catastrófica.

Los estándares de la industria tecnológica impactan a millones

Al no tener un estándar de codificación para, por ejemplo, una empresa de redes sociales, puede parecer intrascendente, pero cuando tienes un software que opera aviones y automóviles y seguridad, hay vidas en juego. No se trata solo de hacer que la vida de los desarrolladores sea más fácil y justa, se trata de crear un sistema en el que la tecnología pueda ser confiable y no estar sujeta a los caprichos de un CEO de la compañía que quiera ahorrar algo de dinero diciéndole a los desarrolladores que reduzcan las esquinas. Los desarrolladores y, francamente, la raza humana, merece algo mejor.

Publicado el 5 de julio de 2020-17: 00 UTC





Fuente: TNW

Compartir:

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Esta web utiliza cookies, puedes ver aquí la Política de Cookies