¿Qué define a un programador senior?

Manu Pijierro
7 min readDec 2, 2017

--

“La experiencia es un grado”, reza uno de nuestros refranes más populares. En cualquier trabajo que realicemos, la práctica y experiencia que vayamos adquiriendo nos añaden poco a poco y con el paso del tiempo valor añadido a nuestras capacidades que nos hacen ser cada vez mejores profesionales.

En el desarrollo de software no iba a ser menos. La informática es un campo en el que los avances, las tecnologías y los conocimientos necesarios para desenvolverse con eficacia y diligencia se actualizan muy rápido. ¿Estamos preparados para tolerar, digerir y asumir esos cambios? Para ser buenos profesionales, ¿nos bastan únicamente los conocimientos técnicos o necesitamos aportar algo más? ¿Es el tiempo dedicado a una tecnología una medida fiable y suficiente de lo capaces que somos en ella?

Disclaimer: Si acaso no te apetece mucho leer, al final del todo, en el apartado referente a la bibliografía utilizada, te dejo un vídeo con una charla del pasado Codemotion en el que se hablaba sobre este tema y con el que comparto todo lo que dice.

¿Qué es ser un programador senior?

He dedicado unos minutos a buscar por diversas páginas de empleos tecnológicos las diferencias entre programador junior y senior y en la mayoría de las veces la medida básica y casi única utilizada para diferenciar ambos puestos es el tiempo dedicado en un desempeño laboral. Como si hubiera un límite temporal muy definido y estricto entre ser considerado dentro de una categoría profesional u otra. El típico ejemplo: “de cero a seis meses junior y de seis meses a dos años senior”. ¿Podemos construir escalas profesionales en base a esta simpleza? Yo creo que no pero sigamos haciendo preguntas.

Tenemos categorías juniors por un lado y seniors por el otro, pero ¿qué las separa realmente?, ¿qué podemos esperar de un programador senior y no de un junior? pues, en mi opinión, básicamente, responsabilidad , honestidad, madurez y disciplina.

No es lo mismo tener diez años de experiencia en una tecnología que un año de experiencia repetido diez veces. Si no hemos tenido un avance cuantitativo y cualitativo en nuestro desempeño como profesional nos encontraremos claramente en el segundo caso.

Pero aún hay más…

Un programador senior debe ser fiable. El equipo de desarrollo en el que se encuentre debe tener confianza en él y en el desempeño de su labor. La pérdida de la confianza puede hacer que poco a poco todo se vaya desmoronando y que un proyecto no sea un éxito. Un programador senior tiene un compromiso firme con terminar una tarea para un momento dado y si cree que no va a ser así, avisará con el tiempo suficiente para poder replanificar el trabajo. Compromiso no implica promesa sino gestionar correctamente las expectativas, su trabajo y el de los demás de la forma más eficientemente posible para evitar sorpresas de última hora.

Debe ser responsable. Cometer errores nos pasa a todos, pero un programador senior debe afrontarlos de manera que los reconozca pidiendo ayuda a sus compañeros si fuera necesario para solucionarlos de la mejor forma posible. La madurez no se demuestra no cometiendo errores sino como se afronta la solución de dichos errores y ocultarlos para ‘cubrirse las propias espaldas’ ni es maduro, ni es lo más responsable ni es lo más profesional. El desarrollo de software es demasiado complejo como para no cometer ningún error pero, el programador senior es responsable de sus imperfecciones y además debe saber disculparse cuando lo haga. Las disculpas son necesarias pero insuficientes. Un programador senior a medida que madurando debe tender a no cometer errores para lo cual debe preocuparse al máximo de entregar código correcto y testado.

Además, no solo debe ser responsable con su trabajo, sino responsable en general con toda la organización.

Debe mantenerse actualizado en su campo. Un programador senior no es el que más conocimiento técnico pueda tener pero no deja de tener una actitud de mejora continua. Sabe que su carrera es su responsabilidad y no responsabilidad de la empresa para la que trabaje. La asistencia a conferencias, compra de libros…etc., dependen de él y no le importa ni espera el apoyo de la empresa ya que esa espera es solo la espera de su propia obsolescencia. El programador senior debe coger las riendas de su propia carrera profesional leyendo, estudiando, practicando y aprendiendo nuevas herramientas y técnicas que mejoren sus capacidades. Sabe que no es suficiente con el trabajo diario ya que este es simplemente un desempeño y se preocupa por mejorar en su tiempo libre las habilidades y conocimientos que van más allá del propósito de su actividad diaria.

Pragmático. Un programador senior sabe que ningún software es perfecto y que por ello debe ir refinando el producto o la aplicación en la que trabaje. Su trabajo no debe ser únicamente escribir código sino que además sabe que debe resolver problemas y eso significa que quizás no entregue la solución más perfecta pero si una que funcione y lo haga de acuerdo a lo que se necesite en cada momento. Un programador senior no renuncia a hacer las cosas bien o a los estándares, sabe que hay que entregar cosas pero no a cualquier precio. Además, sabe que tiene que conocer las herramientas que utiliza, desarrollar y mejorar sus habilidades y conocer el contexto del problema y las soluciones para crear el mejor producto posible.

En la organización…

Un programador senior, como se ha comentado anteriormente, es alguien maduro y responsable en su forma de trabajar pero que además debe actuar dentro de una organización en base a una ética personal y profesional correctas y alineadas con las personas y el negocio.

Además, un programador senior…

  • Tiene influencia y ayuda a mejorar a la empresa y las personas que le rodean. No solo aplica en su contexto sino que se implica en otras áreas de interés de su empresa en las cuáles cree que puede aportar un valor positivo.
  • Escucha y aprende de los demás. Los buenos programadores llegan a serlo precisamente por esto. Preguntar a los compañeros dudas, sugerencias, consejos…se cuestiona las prácticas y metodologías con las cuáles se trabajan para intentar mejorarlas todo lo posible. No le importa lo bueno que sea porque sabe que siempre habrá quién sepa más, pero no lo importa, ya que le motiva para seguir mejorando sabiendo además que lo más importante es aportar valor a la empresa.
  • Lidera dando ejemplo. No se sienta a esperar que hacer. El programador senior es proactivo en la realización de tareas, crea tickets con bugs que se encuentre…etc., tomando la iniciativa en su trabajo.
  • Enseñar a los demás: Esta característica es una de las más comúnmente aceptadas para considerar a un programador como senior. Procura enseñar y ayudar a crecer a los demás mejorando la cultura de empresa. Además, sabe que la mejor forma de aprender es enseñando.
  • Cuestiona los procesos: Todas las empresas tienen procesos susceptibles de ser mejorados. Está enfocado en no proponer quejas vacías, sino aportando ideas o posibles soluciones.
  • Conoce su dominio. El programador senior sabe que una de sus obligaciones es conocer y comprender el domino de las soluciones que está programando. No se trata de ser un experto en la materia sino tener interés en conocer y comprender de la manera más amplia posible el problema y las soluciones planteadas y ser consciente de que estas deben estar alineadas con el negocio. Además, debe saber reconocer errores y cambios en las especificaciones demostrando solvencia e interés en el producto a desarrollar.
  • Ayuda a mejorar la cultura de empresa: valores, ética, ambiente…etc. El programador senior se esfuerza en crear un ambiente de trabajo en el que todos sean libres de opinar y se sientan a gusto. Una de sus responsabilidades es no tolerar discriminaciones. Hay que alzar la voz cuando pensemos que algo moleste a nuestros compañeros o los haga sentir incómodos.
  • Formación. Nadie duda de que es necesario tener conocimientos técnicos. El programador senior debe planificar su carrera de forma consciente, como un camino continuo de aprendizaje, como una escalera de la que no podemos ver el final y en el que cada experiencia laboral es un peldaño. La relación con la empresa tiene que ser un win-win y aportar valor en sentido bidireccional. Debe pensar si la empresa es un escalón hacia arriba en su escalera y asegurarse si se ajusta a su plan profesional. Debe ser dueño de su carrera y su educación y sabe que no puede depender de la empresa si paga o da tiempos para formación o no. Además, debe leer libros sobre buenas prácticas. Las herramientas son necesarias pero terminan quedando desfasadas, las buenas prácticas no. Leer los clásicos del desarrollo de software ayudan a tener un conocimiento general y no perecedero.
  • Compartir: El programador senior comparte conocimiento y ayuda a los que le rodean. A todo el mundo le gusta aprender cosas nuevas por lo que el senior tiene que preocuparse por ello y motivar de la mejor manera posible los compañeros de los equipos en los que trabaje.
  • Justifica de manera objetiva sus respuestas. Desde el punto de vista técnico, económico, empresarial…el criterio que debe tener para aportar valor ante cualquier situación debe tener una justificación correcta y coherente, en base a datos y hechos objetivos. Para ello, busca y estudia las razones y las causas de los problemas que encuentra.
  • Humildad. Un programador senior debe sentirse orgulloso de su trabajo, confiar en sus habilidades y tomar riesgos y decisiones calculadas basadas en esa confianza. Pero, también, sabe que esos cálculos pueden ser erróneos y fallar, por lo que debe saber ser humilde y no hacer ostentación de sus cualidades. Y jamás, jamás debe ridiculizar a un compañero porque sabe que él puede ser el siguiente en fallar.

En definitiva, un programador senior debe convertirse en la mejor versión de si mismo.

Bibliografía

  • Este artículo ha sido ampliamente inspirado en la charla que Luis González Valle presentó en Codemotion 2017 y la cual podéis ver en el siguiente vídeo y por supuesto recomiendo ver al menos dos veces.

Si no se visualiza correctamente, se puede ver en el canal de vídeo de Youtube de Codemotion.

Chimpún.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Responses (2)

Write a response