CodeGym /Blog Java /Random-ES /Cómo es ser un desarrollador sénior. Una breve guía para ...
John Squirrels
Nivel 41
San Francisco

Cómo es ser un desarrollador sénior. Una breve guía para el papel

Publicado en el grupo Random-ES
Tradicionalmente, en la industria de la tecnología, los desarrolladores se dividen en cuatro grados según sus niveles de calificación: Junior, Middle, Senior y Team Lead. En dos artículos anteriores ya hemos cubierto todos los aspectos básicos de lo que es ser un desarrollador junior y de nivel medio . Ahora es el momento de pasar a la siguiente gradación. Desarrollador senior, ¿cómo es ser uno y en qué se diferencia Senior de un codificador de nivel medio? Vamos a averiguar. Cómo es ser un desarrollador sénior.  Una breve guía para el papel - 1

¿Quién es un desarrollador sénior?

En este tipo de artículos sobre profesiones y especializaciones en desarrollo de software siempre tenemos que hacer algún tipo de descargo de responsabilidad, explicando que la percepción y comprensión de un determinado puesto puede variar mucho, dependiendo de la empresa, la industria en la que opera y otros factores. . Algunas personas, en su mayoría las que tienden a ser algo conservadoras, creen que solo se le permite llamarse Senior si tiene más de 10 años de experiencia en codificación, lo cual es responsable. Es decir, solo cuentan los años en los que realmente estabas programando como empleado de tiempo completo, no puedes comenzar a contar desde que intentaste programar en Basic por primera vez a la edad de 12 años (como muchos programadores jóvenes tienden a hacer, cabreando a los verdaderos programadores senior). ). Siendo menos conservador, muchas personas creen que más de cinco años de trabajo a tiempo completo como desarrollador de software le permiten llamarse Senior. Por otro lado, los años de experiencia son solo un número, lo que realmente importa son los conocimientos, las habilidades y la experiencia aplicable. Aquí es donde realmente tiene que cumplir para merecer el título Senior, porque el desarrollador senior a menudo se ve como un mago de la codificación todopoderoso y que todo lo sabe. En la percepción de la gerencia, Senior es normalmente quien sabe cómo resolver cualquier tarea relacionada con el proyecto o cómo escribir el código requerido. Pero una de las funciones más importantes de un desarrollador senior en un proyecto de desarrollo de software específico es el conocimiento del proyecto en sí mismo con todos sus problemas, necesidades, matices, etc. Ser capaz de trabajar de forma autónoma es una cualidad importante de un Senior. Esto significa que el Senior sabe qué y cuándo hacer, y no necesita supervisión para realizar el trabajo que se espera que haga. Y esta es una cualidad bastante valiosa a los ojos de cualquier empleador, ya que significa que puedes darle a este desarrollador una tarea relacionada con el proyecto y dejarle todo el resto. Con "todo lo demás" siendo: averiguar las necesidades, los requisitos y las limitaciones para completar la tarea, idear el enfoque correcto, encontrar los instrumentos adecuados, dividir la tarea grande en tareas más pequeñas y dárselas a nivel medio y junior. Desarrolladores, etc. Hay otro aspecto importante que diferencia a los programadores senior de los de nivel medio y junior. Está en el código que escriben y en la forma en que lo hacen. Senior normalmente es y debe ser quien escribe el código más claro, simple y conciso. A veces, en la medida en que este código parece demasiado sencillo y primitivamente básico. Esto se debe a que Senior debe considerar no solo la finalización de la tarea como el resultado final, sino también el efecto general del nuevo código en la base de código del proyecto. Los desarrolladores senior escriben su código teniendo en cuenta la mantenibilidad y la escalabilidad, y esta es su mayor fortaleza, que solo puede venir con experiencia y nada más.

¿Cuáles son las responsabilidades de un Desarrollador Senior?

Ahora hablemos con más detalle sobre algunas de las responsabilidades más estándar y comunes de un desarrollador sénior, centrándonos naturalmente en las responsabilidades típicas de los programadores de Java.
  • Identificar y analizar los requisitos de los usuarios;
  • Priorizar, asignar y ejecutar tareas de codificación;
  • Desarrollo de aplicaciones Java;
  • Revisar el trabajo del código para verificar su precisión y funcionalidad;
  • Analizar segmentos de código con regularidad;
  • Mantenerse actualizado con la nueva tecnología y enseñar a los desarrolladores junior cómo usarla;
  • Generar ideas y soluciones relacionadas con el ciclo de desarrollo con otros miembros del equipo;
  • Asumir la responsabilidad general de todo el trabajo de desarrollo y el código del proyecto.

Requisitos para un desarrollador senior

Aquí hay una lista de los requisitos más comunes y típicos para un desarrollador senior que debe cumplir para obtener este trabajo. Por supuesto, los requisitos variarán según las políticas de contratación de la empresa, las tecnologías utilizadas en el proyecto y su lenguaje de programación.
  • Amplio conocimiento general del desarrollo de software y sus tecnologías;
  • Fuerte conocimiento de Java;
  • Experiencia en diseño, construcción y prueba de aplicaciones empresariales;
  • Conocimiento profundo de marcos populares de Java como Spring, Spring Boot o Java EE, JSF y otros;
  • Experiencia en Diseño Orientado a Objetos (OOD).
Estos son solo requisitos básicos relacionados con la programación, pero tener conocimientos técnicos a menudo no es suficiente para obtener el trabajo de un desarrollador sénior, ya que hay muchas otras habilidades importantes que conforman a un sénior fuerte. Estos son algunos de los requisitos no tecnológicos comúnmente mencionados para el desarrollador sénior.
  • Buenas habilidades de delegación y gestión del tiempo;
  • Habilidades para resolver problemas;
  • Buena capacidad de comunicación;
  • Fuertes habilidades de comunicación escrita y verbal;
  • La capacidad de cumplir con los plazos y pensar estratégicamente.

¿Cuánto ganan los desarrolladores senior?

Como sabrá, cuando se trata de salarios para trabajos de codificación en los EE. UU., para un desarrollador senior experimentado, el cielo es un límite, ya que gigantes como Google, Facebook, Amazon, Apple y Microsoft están pagando MUCHO a los ingenieros de software . Por ejemplo, en Google, un ingeniero de software en el Nivel 7, que se considera el más alto que puede obtener como desarrollador, puede ganar un total de $ 608,000 al año. Pero pasemos a las cifras promedio. Según Glassdoor , el programador Senior promedio en los EE. UU. gana alrededor de $ 121,000 por año, que es considerablemente más alto en comparación con el salario de un codificador de nivel medio de $ 71,000 al año y el salario promedio de $ 63,502 al año que ganan los desarrolladores Junior en los EE. UU. Según un informepor PayScale, un desarrollador sénior con 10 a 19 años de experiencia gana una compensación total promedio de $109,122 en base a 5,523 salarios. Al final de su carrera (20 años o más), los empleados ganan una compensación total promedio de $111,432. En Alemania , según PayScale, un desarrollador de software sénior con más de 10 años de experiencia gana una compensación media total de 63.638 €. En Francia, el salario medio de un Senior es de 54.982 €. Como de costumbre, cuando se trata puramente de números, los programadores estadounidenses están por delante de sus colegas en Europa y otros lugares. Otro punto interesante a tener en cuenta es que los programadores senior en Estados Unidos ganan significativamente más que los programadores de nivel medio. Tal vez, esto se explicaría mejor con la suposición de que la mayoría de los codificadores senior realmente profesionales y experimentados en los EE. UU. trabajan para los gigantes tecnológicos estadounidenses, que son los principales gastadores de mano de obra de software en el mundo.

Perspectivas de carrera

Cuando se trata de perspectivas profesionales, los desarrolladores sénior definitivamente las tienen. Pero lo gracioso es que la mayoría de ellos realmente no están buscando ninguno. Los puestos como líder de equipo y líder técnico estarían entre las principales opciones para alcanzar el nivel sénior. Así como diversas opciones en la gestión tecnológica. Con probablemente los puestos de CTO y CEO de una empresa de tecnología como los logros más altos posibles en la carrera de un desarrollador senior. El CTO es más realista, por supuesto, ya que incluso en la industria de la tecnología, la mayoría de los directores ejecutivos, de hecho, no tienen experiencia técnica o la tienen muy limitada.

Cómo es ser un desarrollador sénior. Opiniones

Naturalmente, cuando se trata del puesto de Desarrollador sénior en general, la mayoría de las discusiones tienden a centrarse en dos temas clave que los desarrolladores están ansiosos por debatir: qué lo convierte realmente en un Desarrollador sénior y cuándo puede comenzar a llamarse sénior. “Eso puede sorprender a algunas personas, pero los trabajos de nivel sénior constantemente pedían que los solicitantes tuvieran entre 5 y 8 años de experiencia. Hubo algunos que pidieron 10 años o más, pero no muchos. Como desarrollador sénior, una empresa esperará que pueda tomar una idea vaga, especificarla, planificar el desarrollo, involucrar a un equipo y seguirla hasta su finalización. Considerando que, por lo general, se espera que un desarrollador intermedio realice, sin supervisión, las tareas individuales que se le asignan, trabaje dentro de un equipo y realice alguna tutoría.comparte su punto de vista. “Con un desarrollador sénior, puedo dar un objetivo de alto nivel/más vago y pueden especificarlo, crear un plan de ejecución, ejecutarlo por mí y luego implementarlo con una cantidad mínima de apoyo. Entonces, cuando se sienta seguro de que puede tomar una idea vaga y llevarla a cabo, es un desarrollador senior. Tenga en cuenta que eso no significa que nunca pida ayuda, porque todos lo hacen de vez en cuando, pero puede impulsar el proceso sin que yo tenga que cuidarlo”, dice Eric Wise, cofundador y director ejecutivo de Wise Telemetry. Y terminemos con esta cita bastante buena.por Pablo Oliva, un desarrollador de software experimentado de Alemania: “Los desarrolladores senior con los que he trabajado parecían tener un enorme cinturón de herramientas, por así decirlo. Cada vez que surgían problemas, tenían muchos recursos a los que acudir. Conocían bastante bien las herramientas y los lenguajes que usamos a diario, y sabían dónde buscar cuando no sabían algo (hay una diferencia entre buscar en Google sin rumbo e ir a la página correcta del manual en el primer intento). Este conocimiento de viejas soluciones y la habilidad para buscar nuevas soluciones los hizo muy respetados por sus pares, quienes a menudo acudían a ellos en busca de sugerencias. También sabrían, a su vez, cuándo dejar de buscar por sí mismos y pedir ayuda a un colega. Algunos tenían certificaciones, otros no. Algunos se habían graduado, otros no. Pero siempre fueron un referente para sus equipos (e incluso para gente de otros equipos, para algunos senior devs especialmente espectaculares). Entonces, ¿cuántas personas piensan en pedirte ayuda cuando se atascan?
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION