En esta nota te traemos las últimas tendencias y mejores prácticas en tecnología de la mano de los que más saben.
Estuvimos conversando con 3 grandes referentes del mundo del desarrollo de productos y soluciones y tecnológicas, entérate cómo trabajan y qué están haciendo las empresas más disruptivas del sector.
Pregunta: “Dada tu trayectoria profesional y en tu rol actual de CTO, ¿cuáles consideran que son las tendencias tecnológicas más significativas en la actualidad? ¿Cómo están impactando estas tendencias en el desarrollo de productos y soluciones?
Sebastian Rosenbolt, el actual CTO de Modo sostiene que una de las tendencias que se viene masificando hace unos años es el uso de LLMs (Large Language Models) e IA para diferentes propósitos: “Más allá de ofrecer algo completamente diferente en el campo de customers experience, el uso de herramientas como Chat GPT y Github Copilot están potenciando y facilitando las tareas de los equipos de desarrollo.”
En la misma línea Mercedes Basavilbaso CEO de Wolke agrega: “sin duda que lo más relevante hoy por hoy es el avance de la inteligencia artificial. Creo que aún no tenemos noción de cuánto nos va a transformar nuestras vidas. Estamos frente a un cambio radical de la manera de ver las cosas. La robótica va a avanzar mucho y también las predicciones.”
Pregunta: ¿Cómo evalúan y deciden la adopción de nuevas tecnologías en el desarrollo de software en tu equipo? ¿Hay alguna tecnología emergente que estés particularmente entusiasmado por integrar?
Sebastian Rosenbolt CTO de Modo “Desde hace ya varios años existe un partido súper interesante que se juega en el terreno de los datos, en donde varias herramientas y productos permiten que cualquier organización sin la necesidad de grandes recuerdos pueda hacer análisis y obtener insights de su negocio manejando cada vez más información y con mayor nivel de detalle.”
Mercedes de Wolke sin dudarlo asevera que quiere incorporar más IA. “Sobre todo para no quedarnos retrasados. En algunos casos está ayudando a programar y desarrollar mejores productos. Pienso que quien no se sube a esa nueva ola se va a quedar atrás.”
En cuanto a la gestión de Ciclo de vida del desarrollo y prácticas que han encontrado más eficaces para garantizar entregas de alta calidad y eficiencia, Sebastián Kaiser CTO de Strike y ex VP de Ingeniería de Despegar enfatiza “Nosotros evitamos encasillarnos en timeboxes. Entendemos el flujo de desarrollo como un continuo y vamos sacando fotos semanales de cómo venimos a nivel stakeholder y a nivel general por quarter. A su vez cada stakeholder presenta una planificación muy general por quarter que se va detallando con el avance del mismo. Entendemos a las estimaciones como estimaciones, no como contratos que no se pueden mover, por lo que si atrasan los proyectos no hay problema, pero tratamos de dar claridad a tiempo y explicaciones al resto sobre el retraso. Cada dev es responsable de que la tarea que toma cumpla con las especificaciones del stakeholder y con la calidad esperada en producción, no tenemos equipos de QA por fuera de los equipos de desarrollo. En cuanto a la calidad nuestro foco está en monitoreo + facilidad de deploy. El problema no es romper producción, el problema es no tener la agilidad suficiente para darse cuenta y resolverlo en cuestión de segundos”.
Mercedes cuenta que ellos utilizan una práctica que se llama “Adaptativa”. Es metodología ágil en su corazón. Pero como sus clientes aún quieren comprar un alcance finito, tienen que ajustarse a determinado alcance y agrega “Entonces hacemos una etapa inicial de relevamiento y nos sirve para 'poner el título de la canción' en cada sprint. Luego hacemos sprints pero con un alcance bastante definido. Y finalmente cerramos con una etapa de validación por parte del cliente, migración de datos, capacitaciones y deploy a producción”
En cuanto a la eficiencia y ciclo de vida del desarrollo en Modo, Sebastian Rosenbolt considera que el principal desafío es cultural, y se trata de que todo el equipo tenga el ownership y sean los principales interesados en la calidad. Siguiendo con eso y de la mano de la filosofía de devops de eficientar el trabajo y bajar la manualidad, la clave está en poder tener baterías de test automatizadas en varios niveles, desde test unitarios, de integración, end to end y carga, entre otros. y Agrega, “Los equipos deben poder tener las herramientas a su alcance para poder desarrollar, correr y monitorear todo tipo de test de una forma costo efectiva y simple”.
Avanzando con la conversación y metiéndonos de lleno en los desafíos de los equipos, ¿cuáles son los desafíos más comunes que enfrenta tu equipo en el desarrollo de software en la actualidad? ¿Cómo los abordan y qué estrategias han resultado exitosas?
Sebastian Rosenbolt cuenta que un desafío que ha encontrado en varias organizaciones es la evolución del negocio a la par de la evolución técnica. Y que gestionar esos dos backlogs siempre es un tema importante. Por eso cree que la mejor estrategia es acercar, desde el área de ingeniería, los motivos de negocio por los que creemos que hay que invertir en cuestiones técnicas, y luego, tomar decisiones en conjunto con el resto de los stakeholders y destaca “desde mi nuevo rol como CTO en MODO y en un contexto donde el ecosistema está en constante movimiento con la tecnología como protagonista, tengo el desafío de acompañar el negocio para poder impulsar la evolución en el manejo del dinero.
Sebastian Kaiser nos complementa con su visión de negocio de startup “Como toda startup nos movemos rápido y muchas iniciativas van quedando obsoletas al poco tiempo. El desafío está en ir ordenando la plataforma para que no quede código legacy después de intentos de negocio fallidos y no se vuelva cada vez más difícil desarrollar algo nuevo. En relación a esto lo difícil es encontrar un momento oportuno para alternar mejoras en eficiencias internas de tecnología e historias de negocio. Nuestra estrategia es entendernos nosotros mismos como un stakeholder más y rendirle cuentas a la compañía sobre nuestros refactors y como estos traerán beneficios.”
Para ir finalizando la entrevista,
¿Cómo fomentas la cultura de innovación y aprendizaje continuo dentro de tu equipo técnico? ¿Qué iniciativas has implementado para impulsar el desarrollo profesional y la colaboración?
Sebastian Kaiser nos cuenta que una vez por mes tienen una especie de “architecture board” donde todo el equipo de tech (son pocos y pueden hacerlo) se junta a debatir sobre dónde están sus principales desafíos como área y entre todos deciden cuales abordar y por qué. y agrega “En esa interacción la gente sabe que si quiere avanzar con algo se lo tiene que poder explicar al resto y ahí uno se va empapando de diferentes problemas que en la cotidianidad quizás no ve. También funciona como herramienta de consenso y unificación de criterios sobre donde está bueno poner nuestro esfuerzo y donde no.
Y para finalizar agrega, “Por otro lado, a nivel individual tenemos un career path donde dejamos claro lo esperado para cada seniority y cada manager tienen reuniones de feedback periódicas con cada uno de su equipo para charlar sobre qué cosas vienen bien y que cosas tiene por delante para mejorar según su rol.”
Sebastian Rosenbolt CTO de Modo destaca que es importante tener una cultura de reconocimiento que permita incentivar y destacar a aquellas personas que se animan y llevan adelante los valores que proponemos y que son ejemplo no sólo para sus pares, sino para sus líderes y toda la organización. Y agrega, “por otro lado, el uso de OKRs y de los objetivos a nivel compañía para generar una cultura de colaboración y transmitir que no hay ni una persona ni un equipo que pueda ser exitoso por sí mismo, si no es mediante el éxito de toda la compañía como fin último y único.”
Mercedes Basavilbaso concluye “Los incentivo a que estudien y rindan exámenes. Lo que ayuda el examen es a poder tener conocimientos más estructurados y completos de determinados temas. Algunos temas que quizás en el día a día no te tocan por la naturaleza de cada proyecto.
Read "Technology Trends 2024" in English