Cómo lograr un desarrollo eficiente en entornos ágiles: La perspectiva de Nicolás Martínez de Pepiln
- Pepiln
- 24 sept 2024
- 5 Min. de lectura

Conversamos con Nicolás Martínez, uno de los desarrolladores clave de nuestro equipo en Pepiln. Actualmente, Nico forma parte de la Célula Ágil de Aza, donde se dedica al desarrollo de aplicaciones tanto para web como para dispositivos móviles.
A lo largo de esta entrevista, Nico nos comparte su experiencia en la gestión de prioridades cambiantes, superación de desafíos técnicos, y destaca la importancia de mantener una comunicación clara y efectiva en un entorno ágil. También profundiza en las herramientas que emplea en su trabajo diario, las prácticas ágiles que considera fundamentales y su enfoque para lograr un equilibrio entre la calidad del producto y la velocidad de entrega.
1. ¿Podrías describir tu rol dentro de la célula ágil de Aza y cómo contribuyes al equipo?
Mi rol principal en la célula ágil de Aza es como desarrollador mobile, enfocado en el Front-end. Trabajo con Flutter, lo que nos permite desarrollar la aplicación tanto para web como para dispositivos móviles, en iOS y Android. Mi responsabilidad principal es implementar las interfaces y diseños que recibimos del equipo funcional y del área de diseño, como también resolver incidentes de la aplicación.
2. ¿Qué herramientas utilizas regularmente en tu trabajo?
Como desarrollador, utilizo varias herramientas esenciales para mi día a día. Una de las que más uso es Jira, que me ayuda a gestionar todas las tareas, tablas y listados en el backlog. Es una herramienta clave para mantenerme organizado y al tanto del progreso del proyecto.
Otra herramienta importante es Copilot, que nos ahorra mucho tiempo en tareas repetitivas o al enfrentar desafíos donde necesitamos una solución rápida. Aunque no siempre proporciona la respuesta exacta, sus sugerencias son muy útiles. Es como tener un asistente de desarrollo: puedes pedirle que cree un componente con ciertas especificaciones, y te dará una base para trabajar.
También uso GitHub, una interfaz gráfica para visualizar los repositorios donde almacenamos nuestros proyectos. Nos permite controlar las versiones de nuestro trabajo y comparar fácilmente los cambios realizados.
3. ¿Cómo manejas las prioridades cambiantes y las interrupciones en el entorno ágil?
A veces puede ser un poco estresante tener que cambiar de tarea por una nueva prioridad del proyecto. Cuando esto sucede, suele llevar un tiempo adaptarse al ritmo de una nueva funcionalidad o a la corrección de errores. Si es algo en lo que ya he trabajado, es más sencillo, porque ya conozco el contexto y puedo resolverlo rápidamente. Pero si se trata de algo en lo que trabajó otra persona, puede volverse más complicado y tedioso.
En general, tratamos de mantenernos enfocados en una tarea a la vez y resolver lo que sea necesario, a menos que haya algo realmente urgente que requiera nuestra atención. Este tipo de interrupciones ocurren menos en la etapa actual del proyecto de AZA, pero antes del lanzamiento a producción, eran más frecuentes.
4. ¿Podrías compartir un ejemplo de un desafío que enfrentaste en el último proyecto de AZA y cómo lo superaste?
Uno de los desafíos más grandes que enfrenté cuando me uní al proyecto fue técnico, más que del proyecto en sí. Aunque el trabajo en equipo siempre estuvo bien organizado, incluso ante situaciones urgentes, en el aspecto técnico tuve que aprender nuevas tecnologías rápidamente. Por ejemplo, dentro del mismo entorno de Flutter, tuve que familiarizarme con un nuevo manejador de estado. Esto se complicó porque el proyecto no utilizaba este manejador de manera consistente: algunas partes lo implementaban y otras no, y no todo el proyecto estaba funcionando de la misma manera de forma interna.
Además, había exceso de código, con funcionalidades grandes donde la lógica de negocio y la interfaz de usuario estaban mezcladas, lo cual hacía que corregir errores fuera más tedioso y tomara más tiempo. Otro reto fue implementar los reportes descargables y replicarlos en PDF, pero finalmente se logró.
5. ¿Qué prácticas o rituales ágiles consideras más importantes para el éxito del equipo?
Para mí, el ritual más importante son las dailys. Tenerlas todos los días es clave para saber en qué estamos, cuánto falta para cumplir con los requerimientos y si hay algún obstáculo que resolver. Estas reuniones fomentan una buena comunicación, que va más allá de llevarse bien con el equipo; se trata de tener la disposición de comunicar todo lo necesario: si falta algo, si te equivocaste o si algo necesita más claridad. Por ello, para mi es una de las más importantes y también sumaría la retroalimentación en retrospectivas.
6. ¿Cómo manejas los feedbacks durante las revisiones de sprint?
En lo personal soy fan del feedback, siempre estoy consultando o pidiendo retroalimentación, incluso en proyectos personales. Valoro mucho recibir comentarios, aunque a veces puedan ser incómodos, pero prefiero saber lo que puedo mejorar a sentirme mal después porque algo no funcionó como debía. Aunque últimamente no he solicitado tanto feedback, ya que estoy en una etapa con menos variación en el trabajo, siempre estoy abierto a recibirlo para seguir mejorando.
7. ¿Cómo equilibras la calidad del producto con la necesidad de entregar rápidamente?
Para mí, lo primero es cumplir con el requerimiento solicitado, pero siempre priorizando la estabilidad del producto. Es fundamental asegurar que la aplicación no se caiga, que no aparezcan pantallas de error inesperadas o problemas que impidan al usuario utilizarla correctamente. Siempre estoy atento a prevenir estos problemas, y si tengo tiempo adicional, me enfoco en detalles que mejoran la experiencia del usuario, como transiciones suaves entre componentes o pequeños ajustes que hacen que la aplicación se sienta más fluida y agradable de usar.
8. ¿Cuál ha sido tu mayor aprendizaje trabajando en una célula ágil y cómo lo has aplicado en tu trabajo diario?
Mi mayor aprendizaje ha sido manejar la urgencia y aprender a priorizar sin desviarme en cosas que, aunque puedan agregar valor, no son las más importantes en ese momento. He aprendido a enfocarme en lo esencial, lo que realmente necesita el proyecto para avanzar, y dejar para después aquello que puede esperar.
9. Tres reglas de oro para llevar a cabo el desarrollo de un sistema desde 0 como célula ágil
Entender a fondo la lógica del negocio: Es crucial tener claro el contexto del proyecto y cómo cada funcionalidad se conecte con otra. Esto asegura que el desarrollo tenga un propósito claro y esté preparado para escalar con el tiempo.
La documentación: La documentación debe ser sólida tanto en el diseño como en el desarrollo.
La arquitectura del proyecto: La arquitectura del sistema debe estar bien definida desde el principio y alineada con los requisitos del proyecto.
Y, en cuanto al trabajo en equipo, una buena comunicación y revisiones constantes son esenciales para garantizar que todos estén alineados.
¿Cómo te mantienes vigente con los últimos upgrades de plataformas?
Me mantengo actualizado siguiendo de cerca las novedades en el mundo de Flutter, principalmente a través de los contenidos que publica Google o YouTube, donde enseñan a usar nuevas tecnologías. También sigo a programadores reconocidos en Desarrollo y veo las novedades que salen en LinkedIn y Google. Sigo comunidades de Facebook y Discord donde también se comparten actualizaciones y novedades.
Además, tomo cursos específicos y técnicos, como los que cubren la estructuración de proyectos o la implementación de patrones de diseño. Siempre estoy leyendo noticias enfocadas en las áreas en las que trabajo.
Comments