Las diferencias entre un desarrollador junior, semi senior y senior

01/09/20206 Min Read — In software development, programming, professional development

Las diferencias entre un desarrollador junior, semi senior y senior

Ser un desarrollador junior, semi senior o senior no solo tiene que ver con los años de experiencia en programación. Un desarrollador junior puede ser incluso mayor que un desarrollador senior. Todo se reduce a la habilidad. Esto no significa que un desarrollador senior deba ser un experto en todo, pero seguramente los desarrolladores senior son mucho más hábiles que los desarrolladores junior y semi senior.

Pero no solo las habilidades de desarrollo diferencian al desarrollador senior del desarrollador semi senior y junior.

Entonces Fernando, ¿cuáles son exactamente las diferencias?


Conocimiento

Obviamente, el desarrollador senior tiene mucho más conocimiento que el desarrollador junior y semi senior. Conocer los patrones de diseño, la arquitectura, la automatización de las pruebas, el rendimiento, la seguridad, etc. es una buena manera para que un desarrollador junior cierre la brecha de conocimiento con los desarrolladores semi senior y senior.

Es importante saber cómo se deben hacer las cosas en el desarrollo de software. Pero solo saber todo esto no te convierte en un desarrollador senior. El conocimiento no es la mayor diferencia entre los desarrolladores, es solo uno de los factores.


Desarrollar

A pesar de lo que piensa la mayoría, desarrollar no se trata de saber usar una computadora. La codificación se trata de comunicarse con los humanos e instruir a las computadoras. Finalmente, el código se compila y traduce a ceros y unos.

El código tiene que tener sentido para otros desarrolladores que tengan que trabajar con él en el futuro. Un nuevo equipo que nunca antes haya visto el código debería poder abrir el código y comenzar a trabajar en nuevas funciones o correcciones de errores. Aquí es donde está la gran diferencia entre los desarrolladores junior y senior.

Dejaré de lado al desarrollador semi senior en esta comparación porque el desarrollador semi senior es una especie de área gris cuando se trata de habilidades de codificación. Obviamente, está en algún lugar entre el junior y el senior. Probablemente se inclina más hacia el lado mayor. Esto tiene que ver principalmente con la experiencia, ya que los desarrolladores semi senior probablemente ya hayan pasado por todo el ciclo de desarrollo al menos una vez. Han cometido muchos de los errores más simples y han aprendido de ellos.

Cómo reconocer al desarrollador Junior?

Los desarrolladores junior son inexpertos. Algunos sólo se graduaron y están empezando su primer trabajo full time. La mentalidad de un desarrollador junior a menudo es simplemente hacer que el código funcione.

Programar código simple es difícil. Y es algo que los desarrolladores junior no hacen. Los desarrolladores junior escriben código para mostrarse. Se puede reconocer el desarrollador junior, por una sola línea que está demasiado linda, abstracciones excesivamente complejos o stack de código pegado tal cual está en una respuesta de Stackoverflow. Esta es la manera del desarrollador junior, de mostrar y dejar saber a los otros desarrolladores lo bien que pueden codificar. Y está mal.

Los desarrolladores junior tienen más en cuenta el código que el lado humano.

¿Y qué hay del desarrollador senior?

Al mirar el código de un desarrollador senior, podrías pensar: ¿y esto es todo lo que hay? ¿Dónde está el resto del código? Un desarrollador senior escribe código simple, directo y quizás incluso tonto. Esta es una de las mayores cualidades que un desarrollador puede tener cuando se trata de programación. Un desarrollador senior escribe código simple, fácil de entender.

Un desarrollador senior piensa en su código de una manera diferente que el desarrollador junior. El código escrito por un desarrollador senior se realizará teniendo en cuenta la capacidad de mantenimiento y la escalabilidad. Esta es una mentalidad totalmente diferente a la que tiene el desarrollador junior: el senior está pensando en las personas que tienen que trabajar con el código, mientras que el junior solo está pensando en hacerlo funcionar.


Más que solo habilidades de codificación

Además de las habilidades de codificación, existen otros factores que pueden indicar el tipo de desarrollador.

Los desarrolladores junior, en general, realizan las tareas más simples o tareas de bajo impacto. No hacen ningún diseño de arquitectura. Los desarrolladores semi senior tampoco están diseñando soluciones, solo realizan tareas. La diferencia con el desarrollador junior es que realizan esas tareas con menos supervisión siempre que estén asignadas a tareas relativamente rutinarias. Los desarrolladores senior pueden desarrollar una aplicación completamente por su cuenta.

No significa que el desarrollador senior no tenga ninguna pregunta o dudas o no sepan algo particular. Todos los desarrolladores tiene muchas preguntas todos los días y eso no va a cambiar. Eso no es diferente para los desarrolladores senior.

La diferencia es que los desarrolladores senior saben cómo hacer las preguntas correctas y cómo se manejan estas preguntas. Los desarrolladores semi senior pueden hacer las preguntas correctas cuando se trata de sus tareas relativamente rutinarias, pero necesitan ayuda en tareas más complejas.

El desarrollador senior nunca se pierde y sabe cómo seguir la pregunta con la acción correcta. Esto no significa que un desarrollador senior no pueda pedir ayuda a otros desarrolladores. A veces, la mejor manera es pedir ayuda a otros desarrolladores con experiencia en esa área.

El desarrollador semi senior también debería poder hacer las preguntas correctas, siempre que no se le asignen tareas altamente complicadas que requieren un nivel de conocimiento profundo.

No debe esperar que un desarrollador junior haga las preguntas correctas de inmediato. Como los desarrolladores junior no tienen experiencia, necesitan orientación de un desarrollador más experimentado. El desarrollador junior debe contar con los recursos necesarios o un gran impulso en la dirección correcta.


Llegando al siguiente nivel

Todos queremos mejorar, ser mejores desarrolladores. ¿Pero cuáles son los pasos que podemos seguir para pasar al siguiente nivel?

Junior a semi senior

Dado que los desarrolladores junior no tienen experiencia, es importante pasar por todo el ciclo de desarrollo al menos un par de veces. De esta manera, se cae en muchas trampas y se aprende a evitarlas en el futuro.

Cuando se trata de codificación, debes aprender a escribir código simple. Pensar en la próxima persona que podría trabajar en ese código. También debes aprender a debuggear, ya que esto te va a dar una mejor comprensión de lo que está sucediendo en el proceso.

Además, debes familiarizarte con las mejores prácticas y aprender sobre arquitectura, rendimiento, seguridad, etc. Cerrar la brecha de conocimiento que se necesita para llegar al nivel medio.

Semi senior a senior

Pasar de semi senior a senior puede ser bastante difícil. Algunos desarrolladores permanecen en ese nivel durante toda su carrera.

Los desarrolladores senior saben qué se puede sacar y qué no. Estas son lecciones aprendidas por cometer errores en el pasado.

Si queres llegar al nivel superior, debes estar preparado para asumir las tareas que nadie sabe cómo solucionar. Debes saber más que solo saber cómo hacer tu trabajo.

Como desarrollador senior, nuestro trabajo también es ayudar a los desarrolladores con menos experiencia. Nosotros somos el respaldo de otros desarrolladores cuando no saben cómo hacer algo.

Los desarrolladores senior dominamos nuestro stack tecnológico. Hay más que solo habilidades de codificación. Conozcamos todas las herramientas y aplicaciones que se utilizan en la empresa para la que trabajamos.

Resumen

La diferencia entre un desa junior, semi senior y senior no se trata de años de experiencia. Es fácil decir que los desarrolladores senior son más hábiles que los desarrolladores junior y semi senior. Pero el conocimiento no es el factor más importante.

Los desarrolladores senior escriben código más simple y tienen una mentalidad diferente a la de los desarrolladores junior. Pero se trata de algo más que habilidades de codificación. Saber qué preguntas hacer y cómo hacer un seguimiento de esas preguntas es esencial. Y es algo que solo el desarrollador senior, con su gran experiencia, sabe cómo hacer en todas las situaciones.

Para crecer como desarrollador junior, debes concentrarte en escribir código simple y pasar por múltiples ciclos de desarrollo. Para pasar de un desarrollador semi senior a un desarrollador senior, debes concentrarte en aprender más que solo arreglar tareas rutinarias. Deberías estar dispuesto a asumir las tareas más difíciles y ser un experto de tu stack tecnológico. Otra responsabilidad de un desarrollador senior es ser la alternativa para los desarrolladores menos experimentados.


Muchas cosas de las que leíste en este artículo ya las sabés. La mayoría de este conocimiento que te compartí ya lo sabés. Sabemos lo que tenemos que hacer, sabemos lo que tenemos que evitar, todo esto ya lo sabemos. El único problema es que no lo ponemos en práctica, por esto es que necesito que te comprometas conmigo, en que si una de las ideas que mencioné resuena en vos, te interesa ponerla en práctica, que te comprometas a que vas a empezar hoy mismo con el paso más pequeño posible, el gesto más mínimo a hacerlo.

Solo pensar en poner en práctica no sirve, tenés que ponerte en práctica para tu crecimiento exponencial.


Antes de que te vayas…

¿Encontraste interesante el artículo? ¿Te gustaría que escriba sobre algún tema en particular? Escribime o contactame a través de Medium o GitHub o LinkedIn.