
Hola mundo y bienvenidos a este post. Los desarrolladores senior tienen características en común. En el código que escriben y también en su conducta. Hoy hablaremos sobre estas características, y si eres desarrollador senior y hay algo con lo que estés de acuerdo o con lo que no estés de acuerdo, déjalo en los comentarios para que podamos conversar entre todos.
Hoy hablaremos sobre cómo escribir código como un programador senior, puedes leer este post ó ver y escuchar esta información en formato de video en nuestro canal de youtube, te dejamos el link por si prefieres este formato. 😃 👍
El código que escriben es fácil de entender
Esto podría sonar contra intuitivo, los más jóvenes seguro que piensan que el código de un senior debe ser algo superabstracto que muy pocos son capaces de entender y que hace cosas inimaginables y todas con un excelente rendimiento. Pero la verdad es que el desarrollador senior puede tomar problemas complejos y crear soluciones que son fáciles de leer y entender por cualquiera.
Verás, un senior está muy consciente que este está trabajando en equipo, y que en ese equipo hay juniors, trainees o futuros desarrolladores que podrían tener experiencias distintas, o menos experiencia, por lo que se esfuerza en escribir código simple. Así que si ves un código que es fácil de leer y se entiende clarito lo que se está intentando hacer. Ya sabes quién lo escribió.
Valora el tiempo que tiene y valora el tiempo de los otros desarrolladores
Un senior también valora el tiempo que tiene y valora el tiempo de los otros desarrolladores. Voy a poner varios ejemplos, si tiene que realizar modificaciones al código y ve que el código no se encuentra formateado, no incluye un formateo del código en el mismo pull request que su funcionalidad, eso solo va a hacer que su pull request sea muy difícil de revisar, ya que los desarrolladores que revisen su pull request tendrán que estar viendo, línea por línea, si el cambio es de formateo o de funcionalidad.
Además, que todo el código que el desarrollador modifica este tiene que pasar por pruebas, todo código que se toca involucra un riesgo, toda funcionalidad que se agrega involucra un riesgo, con esto no te digo que no escribas código, con esto te digo que el código debe ser probado, por lo que debes agregar el código suficiente y necesario para agregar nuevas funcionalidades o corregirlas. Y no más. Entonces te preguntarás acerca del refactor. Y ya hablaremos de eso.
Se preocupa que se respeten los estándares de código
No todas las empresas tienen estándares de código, y en ese caso sencillamente puedes dedicarte a ver cómo otros desarrolladores que llevan más tiempo se dedican a implementar el código. Y tratar de copiar los patrones y formas que tienen de implementar las funcionalidades. Pero en estos casos es bueno de empezar a hablar sobre estándares de código, si no existen estándares de código pueden utilizar algunos ya existentes y que son open source, de esta manera cuando lleguen nuevos desarrolladores les puedes compartir la documentación de estos estándares sin tener que mantener uno existente.
Y estos siempre puedes extenderlos, una muy popular es la guía de airbnb, te dejamos el link de esta guía. Un ejemplo de esto, siempre que se pueda usar métodos nativos en lugar de iteraciones con for. Por ejemplo, con map, filter, reduce y find. O almacenar los datos en el estado de la aplicación utilizando diccionarios y no arreglos, o usar algún patrón en específico para almacenar los datos. La lista es grande, pero lo importante es ser consistente en cómo se trabaja. Y resistir la tentación de escribir código que sea mejor al ya existente, ya que en un futuro si permites esto tendrás una base de código con muchas opiniones distintas en cuanto a cómo implementar algo. Y finalmente es la labor de los arquitectos o ingenieros que llevan más tiempo, decidir si se cambia o no un patrón.
No hacen micro optimizaciones
Algunos devs podrían cambiar el nombre de la variable, de userId a idUser, o de un map a un while, y en realidad eso no es refactoring y tampoco es una optimización. de hecho, eso no es nada. Se está introduciendo riesgo al modificar código, el cual debe ser probado, y un refactor necesariamente incluye una reestructuración interna del código con el objetivo de mejorarla sin cambiar el comportamiento externo. Pero cambiar variables de nombre o un map por un for no es una mejora. Un buen desarrollador senior se preocupa no solo de la calidad de su código, sino también de la calidad de sus pull request.
Mientras más líneas se modifiquen, más grande se va a ver tu pull request y más tiempo le va a tomar a otro desarrollador revisar tus cambios. Si realmente quieres optimizar el código, entonces el algoritmo que ejecutes tiene que disminuir su complejidad, y con esto no me refiero a que sea más fácil, me refiero a su complejidad de espacio-tiempo, en cuanto a big O notation. Solo de esa manera tendrás una mejora significativa en rendimiento, pero si estás peleando por milisegundos no tiene sentido. Y solo le estás dando más trabajo al resto de manera gratuita. Una excelente forma para que tus compañeros empiecen a odiarte.
Siempre pasa por un pull request


Paremos un poco aquí, si no te ha sonado esto de «pull request», se trata de un proceso que hacemos con la herramienta git, que es un controlador de versiones de nuestro código, en github, la cual es una red donde subimos nuestros repositorios, y para aprender git tenemos un curso en la Academia de Hola Mundo, con el que aprenderás a usar esta herramienta has click aquí para ver el contenido del curso git: sin fronteras, ahora si, ¡continuamos!
Un senior de verdad siempre pasa por un pull request y no actúa como autoridad máxima. Algunos desarrolladores hacen merge de sus códigos sin pasar por un pull request porque creen que no necesitan ser revisados por otros desarrolladores. Y la verdad es que el pull request tiene muchos beneficios:
Le permite a otros desarrolladores aprender de lo que estás haciendo, pueden hacerte preguntas y tú como senior contestarles para que vayan aprendiendo sobre el código fuente de la aplicación y por si no lo sabías, es una práctica requerida para ser aprobado con estándares de seguridad. Y así, por ejemplo, puedas implementar pagos con tarjeta de crédito con PCI compliance. Por lo que si eres de esos desarrolladores que su código no lo revisa nadie porque crees que eres autoridad máxima, la verdad es que estás perdiendo un montón de beneficios que tiene que te revisen tu código, quién sabe, capaz que te des cuenta de que estás haciendo trabajo innecesario o quizá otros desarrolladores previenen que introduzcas un error.
Las estimaciones de tiempo de desarrollo tienen tiempo extra para reuniones
Y un último punto, las estimaciones de tiempo de desarrollo tienen tiempo extra para reuniones, corrección de errores, revisión de código, etc. Acá puedes estimar lo que quieras, pero para que te hagas una idea, en las empresas grandes que trabajé, un 50% del tiempo que estimabas era tiempo enfocado en programar. El resto del tiempo era para corrección de errores, reuniones y documentación. Entonces, si piensas que una funcionalidad te va a tomar 2 días, estima 4, para que no tengas que estar trabajando tiempo extra. Un senior se va a la hora a su casa, los desarrolladores trabajamos con nuestra mente, y si estamos estresados o con exceso de carga laboral nuestro rendimiento baja en el largo plazo y eso es algo que nosotros tenemos que cuidar. Además, que tenemos vida fuera de la oficina. Así que al final del día, cierra el computador y sal a vivir.
Y este fue el post de hoy, para los senior que están afuera me interesa escuchar su opinión, en sus empresas ¿cómo discriminan a un senior de un junior o semi senior? Yo he visto hasta tablas con checks que los ingenieros deben cumplir para poder ser considerados en algún cargo en particular.
¿Cómo ser programador senior?
Hemos visto ya, consejos a seguir si queremos ser senior , esto por supuesto se lograra con práctica y constacnia. Pero si quieres comenzar, o mejorar en tus habilidades técnicas para alcanzar a ser un desarrollador senior, te recomendamos la Academia de Hola Mundo donde podrás formarte como un excelente desarrollador has click aquí donde podrás ver todos los cursos.
Y esto ha sido todo de este post, si te ha encantado, ¡golpea al botón de me gusta!, no olvides suscribirte a este blog, seguirnos en todas las redes como Youtube, Twitter e Instagram, y por último, te invitamos a escuchar nuestra música «Hola Beats» diseñada para ayudarte a concentrarte y acompañarte en tu aprendizaje o trabajo, estamos en Spotify y en Apple Music.
¡Hasta la próxima!, y chao mundo
Comments (2)
¿Tu perfil GitHub importa para conseguir trabajo? – Hola Mundosays:
marzo 2, 2023 at 4:14 pm[…] ¿Cómo escribir código como un programador senior? […]
7 antipatrones del desarrollo de software y como prevenirlos – Hola Mundosays:
marzo 7, 2023 at 11:53 am[…] de diseño más utilizados en la industria y si quieres otro post mas por si te interesa saber ¿Cómo escribir código como un programador senior? con consejos que debes de tomar en cuenta para […]