Que se necesita para ser un Senior.
Published: 2022-03-08 20:55:46

En mi corto camino como desarrollador me ha tocado interactuar con varios desarrolladores con experiencia y en mis búsquedas de nuevos trabajo he visto el título de Senior. Cada empresa pide cosas diferentes acerca del mismo puesto. Pero como sabemos también hay vacantes mal redactadas y puestos creados que parecen que están erróneos.
¿Qué habilidades debe de tener un Sr?

- Años de experiencia
No necesariamente muchos, ya que conocí un par que decían tener más de 10 años, pero la forma de codificar decía lo contrario y a pesar de tanto tiempo no eran los expertos en el lenguaje. Puedo decir que un año ya cuenta como un requisito para ser Sr.

- Buenas practicas
Me he encontrado con proyectos legados de desarrolladores Sr, pero parecen de prepa, código espagueti, clases dioses, practicas golden hammer. No es necesario conocer e implementar patrones de diseño, con buenas practicas llegas a poco a poco a patrones de diseño, a un código escalable y mantenible.

- Refactorización
En muchos casos es necesario que el código crezca, pero no por eso vamos a hacer malas practicas. En el papel de Sr en algún momento tendrá que ser mentor y hacer revisión de código. En esas correcciones de bugs es necesario hacer refactorización, para hacer el código legible, mantenible, escalable.

- Probar nuevas herramientas
Hacer pruebas con nuevas framework, nuevas herramientas, ya que nos facilita la vida y reduce el tiempo de desarrollo, esto va con los anteriores puntos, como vas a saber de buenas practicas y refactorizar si no pruebas nuevas cosas. Por ejemplo hace tiempo los pdf lo hacia con rdlc lo cual el mantenimiento era complicado un día encontré rotativa hice el pdf con mjor presentación y en menos tiempo.

- Capacidad de entrenar un Jr
Si no puede explicarle a una persona del mismo giro, deja mucho que desear en la comunicación con otra áreas, directores, gerentes, clientes. Debe de contar con la paciencia, organización, planeación para que capacite y adiestre a un Jr.

- Comunicación, negociación y riesgos
Como sabemos todo urge y es para ayer, pero en realidad no es así. Aquí es donde todo juega la comunicación, negociación y la medición del riesgo.

- Bases de datos
Me llegue a encontrar con devs que ya llevaban un par de años desarrollando que se les dificultaba mucho hacer consultas y reportes de la base de datos.

- Al menos un par de caída en producción o error grave
Nadie quiere que esto le pase o que vuelva a ocurrir, recuerdo cuando me paso, se publico la app con pocas pruebas y todo fallo. Sonaba el teléfono, la notificaciones del correo y mensajes, los directores, los dueños querían que se arreglara enseguida. La adrenalina del momento, la ansiedad de los días siguientes. Ya después con más calma pensé en lo que se podía y no resolver, la delegación de tareas. Le ocurrió algo similar un Jr, se le fue el color, se asustaba con las notificaciones en su cel. Revisamos con tranquilidad y vimos que no había sido nada grave, se le pido al área correspondiente que contactara al cliente y le explicara que habían sido pruebas, que nos disculpara.

Considero estos requisitos mínimos para considerar a un dev como Sr, de lo contrario es un Jr con muchos años de experiencia.