Contacto: 881 94 19 61 - info@openinnova.es

Qué es un Desarrollador Senior? Funciones

Qué es un Desarrollador Senior? Funciones

Que es un Desarrollador Senior? Funciones. Os hablaremos de la definición y del valor que aporta a un equipo de desarrollo de software. Para impulsar a los negocios al éxito.

Trabajamos en una industria extraña. Existe una necesidad mucho mayor de desarrolladores de la que pueden satisfacer los nuevos desarrolladores que entran en juego. Esto es un problema que ha existido por años. Y está empeorando a medida que pasa el tiempo.

Qué es un Desarrollador Senior? El Papel de un Desarrollador Senior

Tenemos una seria escasez de talento para satisfacer la demanda. Pero nuestra industria es realmente bastante joven. La mayoría de los proyectos de software fallan. Casi todos ellos vienen por encima del presupuesto. La mejor orientación que tenemos sobre este tema de los líderes de pensamiento se reduce a “Estas son algunas formas comunes en que resolvemos estos problemas. Pero nuestras soluciones con frecuencia no funcionan. Por lo que lo único que puedes hacer es probarlo y ver si funciona para ti”.

La realidad en la que vivimos es que un “desarrollador sénior” significa una persona que ha estado programando durante más de 3 años. Estas personas se colocan en puestos de liderazgo. Y normalmente las cosas se desarrollan como es de esperar. Bastante mal.

Esta es una opinión sobre los términos que usamos en la industria. Realmente. Poner a las personas en 3 categorías es una gran simplificación. El conocimiento y la experiencia a través de esta profesión, es lo que es. Si vamos a clasificar a las personas de esta manera. Entonces tenemos que tomar tiempo para analizarlo correctamente. Una persona con 10 años de experiencia es bastante diferente a alguien que ha experimentado el mismo año 10 veces. Qué es un Desarrollador Senior?

Las Etapas de Crecimiento del Desarrollador de Software

Como programadores. Vivimos en un mundo de sistemas y variables complejas. Es increíblemente difícil simplemente ejecutar una tarea bien definida y enfocada. Especialmente si no tiene mucha experiencia con las herramientas a su disposición, o la base de código en la que está trabajando.

Esta es la vida del desarrollador juniorEstás recién salido de la escuela y piensas que lo sabes todo. De repente, te enfrentas al hecho de que lo que aprendiste en la escuela fue en realidad una preparación bastante pobre para los tipos de problemas que estás enfrentando. Las cosas son más desordenadas Menos teóricamente puras. Estas en un ámbito muy exigente de compromisos, y nunca puedes hacer suposiciones sobre nada.

Foco en el Objetivo

Lidiar con esto es realmente todo en lo que puedes concentrarte. Y es lo que realmente deberías hacer. Haz lo mejor que puedas para aprender. Los desarrolladores júnior necesitan mucha dirección, supervisión y tutoría debido a esto, o pueden permanecer en este lugar por mucho, mucho tiempo (recientemente encontré a un compañero que había estado construyendo software durante casi una década a quien yo diría y todavía es un junior). Puedo decir que este período es realmente acerca de la adquisición de técnicas y tácticas cotidianas.

Un desarrollador junior está enfocado en el código. No enfocado en el desarrollo, y no entiende la distinción. Cuando un programador habla de cómo “les encantaría programas más, si no fuera por todos los usuarios”, asumo que estoy hablando con un desarrollador junior. Qué es un Desarrollador Senior?

Un Buen Desarrollador Junior puede Recibir una Tarea Conocida y se Espera que la Ejecute Rápidamente y Bien.

Un desarrollador senior es aquel que comienza a ver patrones de error (generalmente su propio error). Y reconoce que se necesita mucho más que ejecutar tareas enfocadas para construir algo que realmente funcione, y no se caerá por completo la primera vez que alguien necesita cambiarlo. También han pasado por la experiencia única de ver algo de lo que estaban orgullosos de haberlo creado hace un año, y darse cuenta de que en realidad era pura basura.

Un desarrollador senior es alguien que está buscando respuestas sobre cómo construir cosas de la manera correcta. Y encontrarlas a través de la experimentación. La literatura y la discusión con otros programadores. Este nivel se trata realmente de aprender la teoría de la construcción de software. En lugar de la teoría del código de construcción (que se aprende en la escuela).

Los sistemas construidos por desarrolladores senior no supervisados ​​van a fallar por razones completamente diferentes que los sistemas construidos por juniors. Un junior construirá una gran pila de algoritmos para ese tipo de trabajo. Un buen senior creará páginas a partir de “Patrones de diseño” y “Diseño impulsado por el dominio”.

La Confianza es la Clave

Puede confiar en que un desarrollador senior construirá sistemas que funcionarán por mucho más tiempo que un junior, pero conducirá a un tipo diferente de desastre en el futuro. La triste realidad es que la gran mayoría de los desarrolladores senior, no solo los líderes de equipo, son de hecho desarrolladores senior. La mayoría no se da cuenta de esto. Y tiene las mejores intenciones, pero simplemente nunca han trabajado con nadie que esté en un nivel superior.

Los senior son muy conscientes de su papel en su organización y del valor que aportan. Un buen desarrollador senior entiende cómo usar el código para resolver un problema. Esto es un medio para un fin. No el fin en sí mismo. Sin embargo, todavía están enamorados del diseño de la torre de marfil, y todavía están en busca de “El camino correcto” para desarrollar software. Qué es un Desarrollador Senior?

Un buen Desarrollador Senior Necesita Menos Supervisión.

Se puede confiar en ellos para plantear cuestiones de diseño de códigos y desempeñar un papel valioso en las discusiones de diseño. También son los “caballos de batalla” del equipo de desarrollo. Sin embargo. Una mayor tutoría y una supervisión de mayor nivel sigue siendo vital.

  • Un desarrollador senior está íntimamente familiarizado con su propio fracaso. Han escrito el código tanto debajo como sobre diseñado. Y han visto que ambos fallan. Son reflexivos sobre las cosas que hacen, evaluando sus éxitos y fracasos al abordar los problemas con honestidad intelectual. Un desarrollador sénior se ha despreocupado de la complejidad que domina al senior y está obsesionado con la simplicidad. Qué es un Desarrollador Senior?
  • Deja de clasificar a los desarrolladores según su conocimiento. Y en su lugar comprende que existe un espectro de fortalezas y debilidades. Son más íntimamente conscientes de sus propias fortalezas y debilidades que cualquier otra persona. Y se esfuerzan por aprovechar sus fortalezas siempre que sea posible.
  • Piensa en términos de “contexto” al aplicar la teoría. Entienden que no existe una “Manera Correcta” para construir software, y que la única forma de desarrollar un buen software es adaptando la teoría para que se ajuste a las necesidades del cliente, la base de código, el equipo, las herramientas y la organización.
  • Entiende que todo en nuestro campo implica una compensación. Y buscará lo que es para los patrones de diseño, bibliotecas, marcos y procesos.

Las Ventajas de un Desarrollador Senior

  • Piensa en algo más que ellos mismos. Son conscientes de cómo funcionan su organización y sus clientes, cuáles son sus valores y qué es importante y no importante para el éxito. Cuando se tira una pelota, un desarrollador sénior hará lo que pueda para recogerla. La frase “este no es mi trabajo” nunca se dice en esas situaciones.
  • Un desarrollador experimentado entenderá que este trabajo es para proporcionar soluciones a problemas. No para programar. Por eso, un desarrollador sénior siempre pensará en lo que están haciendo en términos de cuánto valor aporta a su organización y a sus clientes frente a cuánto esfuerzo están poniendo.
  • Mientras que un junior atravesará días de trabajo aburrido. Un desarrollador senior dará un paso atrás y cuestionará qué se está desmoronando para comenzar todo ese trabajo aburrido. Evaluarán el costo de solucionar problemas de raíz. Y los arreglarán directamente o pondrán en marcha las cosas para que se solucionen eventualmente.
  • Comprende que usted no puede hacer todo usted mismo y que su función principal es ayudar a su equipo a mejorar. En muchas de las mismas maneras en que ellos mismos se esfuerzan por lograr una mejoría personal.
  • Un desarrollador experimentado entiende que el liderazgo no se trata de poder. Se trata de empoderamiento. No se trata de dirección. Se trata de servir.

Proyectos de Éxito

Si no tiene al menos un desarrollador sénior en un rol de liderazgo en su equipo. Su proyecto está condenado al fracaso. Un equipo de grandes desarrolladores junior lo llevará muy lejos, pero los días del software que está construyendo están contados. Y el resultado final es un cierre o refactorizaciones costosas / arriesgadas. Un desarrollador senior es la única persona totalmente calificada para elegir la tecnología y las plataformas. Por lo que no tener uno desde el primer día le dolerá. Qué es un Desarrollador Senior?

Conclusión. Esta es una Simplificación Enorme

La realidad es que nadie encaja perfectamente en estos puestos. Estoy cansado de la clasificación basada en “años de experiencia”. ¿Los años de experiencia te dicen algo? Es casi información inútil sin mucho más contexto.

Más que eso. Nuestra industria valora a los jóvenes inteligentes recién salidos de la universidad. Esas personas son valiosas y necesarias. Pero también lo son las personas que tienen 15-20 años de experiencia en el sector. Tenemos que dejar de contratar según los estereotipos y comenzar a pensar realmente en la composición del talento del equipo y la organización. Si todos en tu equipo piensan lo mismo. Estás haciendo un flaco favor a tu producto y a tu organización.

¿Y tu que opinas de todo esto? Comenta. Y contacta con nosotros si crees que te podemos ayudar… Qué es un Desarrollador Senior?

Openinnova
Soluciones Software Libre para Empresas. Nuestro Trabajo. Tu Éxito. Somos Artesanos del Software.

0 Comentarios

Dejar una respuesta

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

*