• Qué significa ser Senior en Programación

    20 de julio de 2022

    - 2 min read

  • Mucha gente me pregunta que qué se necesita para ser senior. Lo primero que diría es paciencia, porque llegar a ese nivel es cuestión de tiempo y motivación. Lo segundo es que dependerá de la empresa, porque cada una puede entender que ese perfil requiere diferentes aptitudes (y actitudes).

    Pero te comparto algunos puntos que creo que deberían ser los esperados para una persona que llegue a considerarse Senior.

    Aceptas que el código no es de piedra

    El código cambiará. Tu framework favorito cambiará. No siempre tienes que tener la razón. Puedes hacer experimentos y que el código no sea perfecto. No necesitas revisar todo el código que se sube. Puedes seguir aprendiendo de juniors.

    Resuelve problemas

    Entiende que el código es el medio, no el fin. Sabe de la importancia del negocio. Tiene experiencia contrastada y puede trabajar de forma autónoma. Cuando hay un problema es capaz de tirar del hilo y explicar las razones al resto de las personas.

    Impacto más allá del código

    No está lanzando líneas y líneas como un héroe. No está picando. También mentoriza a personas, está en reuniones que causan un impacto en las decisiones. Ayuda a priorizar y propone soluciones para alcanzar los objetivos.

    Sabe comunicarse

    Puedes programar muy bien pero si no sabes comunicar…

    Para saber comunicar, hay que saber escuchar activamente a tu equipo. Crear un entorno seguro donde cada opinión importa, saber empatizar y acelerar al equipo.

    Empodera y trabaja para ser prescindible

    Alguien que sea Senior trabaja para ser prescindible. Ayuda a los demás a crecer, confía en sus decisiones, permite que otra gente se equivoque para que aprenda. No hace micro-reviews de código. Aconseja pero empodera.

    Domina las buenas prácticas pero concede

    Entiende la importancia del testing y las buenas prácticas. Sabe cuándo realmente hay que refactorizar y hasta qué punto. Es capaz de transmitir esos valores a los demás. Entiende la importancia de dar valor al usuario/cliente.

    Tiene datos y entiende los riesgos

    Se preocupa por la observabilidad. Sabe sacar datos para encontrar puntos de mejora técnicos. Se adelanta a posibles problemas sin caer en el YAGNI. Entiende los riesgos de las decisiones. Prioriza la mantenibilidad por delante del hype.

    {{< tweet user=“midudev” id=“1549760019775819777” >}}