No es un Tech Lead cualquiera: ¿Qué significa ser TL en una empresa de software Lean?

Rate this content
Bookmark

La experiencia de ser un Tech Lead puede variar de una organización a otra, desde ser un arquitecto en una torre de marfil hasta quedarse atrapado en los detalles con desafíos técnicos complejos. Una empresa de software Lean es aquella cuyo enfoque está profundamente arraigado en optimizar el valor para el cliente a través del estudio de las técnicas utilizadas en el Sistema de Producción de Toyota.

El Agile de la vieja escuela también tiene muchas raíces en los principios Lean: Kanban, por ejemplo, es una herramienta utilizada en la línea de producción de Toyota. Pero, ¿qué nos puede enseñar la fabricación de automóviles sobre el desarrollo de software?

Únete a mí en esta exploración a través del mundo de un TL tal como se experimenta en una empresa de software Lean, mientras revelo algunos de los secretos que permiten a estas empresas entregar software de mayor calidad a mayor velocidad.

This talk has been presented at C3 Dev Festival 2024, check out the latest edition of this Tech Conference.

James Haworth Wheatman
James Haworth Wheatman
20 min
15 Jun, 2024

Comments

Sign in or register to post your comment.
Video Summary and Transcription
La charla analiza el papel de un Tech Lead en una empresa de software Lean y los desafíos a los que se enfrentan. Se enfatiza la importancia de la resolución de problemas y la mejora continua en el desarrollo de software. El orador comparte sus luchas personales como Tech Lead y la necesidad de priorizar entre ser un creador y un gestor. La charla también destaca la importancia de identificar las causas raíz y resolver problemas para prevenir futuros problemas. En general, proporciona información sobre el papel de un Tech Lead y el papel que desempeña la resolución de problemas en la creación de condiciones óptimas para los desarrolladores.

1. Introducción al Rol de Tech Lead

Short description:

Hoy quiero hablarles sobre el rol de tech lead. Quiero compartir una perspectiva poco representada sobre lo que significa ser un tech lead en una empresa de software ágil. Como tech lead, veía el rol como un desarrollador senior que podía resolver cualquier problema técnico, pero estaba equivocado. Esta idea errónea tuvo consecuencias costosas en mi primer proyecto como tech lead.

Hoy quiero hablarles sobre el rol de tech lead. Es posible que ya tengan algunas impresiones sobre el rol, tanto positivas como negativas. Tal vez sean desarrolladores que aspiran a dar el siguiente paso, o que recientemente han sido ascendidos y están encontrando su lugar en el rol, o tal vez han sido tech leads durante años.

Quiero compartir lo que considero una perspectiva poco representada en la industria, y espero que puedan obtener algún valor de ello. Eso es lo que significa ser un tech lead en una empresa de software ágil. Mi nombre es James y he estado trabajando como tech lead durante los últimos dos años, construyendo aplicaciones web y móviles de pila completa en Theodo UK, que es una consultoría de software ágil. Pero en realidad, me uní a Theodo como desarrollador, así que esto era yo, no esto. Y como resultado, construí una imagen de lo que significaba ser tech lead prestando atención a los tech leads que había tenido a lo largo de los años. Había algunas cosas que los veía hacer. Ellos definían la arquitectura del proyecto y aclaraban cualquier incertidumbre técnica difícil. Me ayudaban cuando estaba atascado. Ellos siempre eran la persona que me sacaba de una situación complicada. Lograban construir una muy buena confianza con nuestros clientes, y también eran capaces de impulsar el proyecto en su conjunto hacia el éxito. Así que, básicamente, veía al tech lead como un desarrollador senior, una persona con la experiencia técnica para resolver cualquier problema técnico que pudiera surgir, en lugar de un rol completamente diferente dentro del equipo. Y esta fue una comprensión fundamental errónea del rol que fue muy costosa para mí personalmente. En mi primer proyecto como tech lead novato, estaba trabajando internacionalmente con una gran consultora de gestión, y viajábamos para ver a nuestros clientes cada dos semanas aproximadamente en el lugar, construyendo una plataforma de e-commerce desde cero para vender células fotovoltaicas para instalaciones en propiedades privadas. Entonces, veamos cómo esta idea errónea, de que los tech leads son básicamente desarrolladores senior, afectó mi trabajo diario. Tomaba un ticket y comenzaba a codificar.

2. Desafíos como Tech Lead

Short description:

A menudo, como tech lead, me enfrentaba a problemas complejos que interrumpían mi flujo de trabajo. Un problema fue causado por un cambio en el tipo de datos sin actualizar los tipos de TypeScript, lo que provocaba un error recurrente. A pesar de parecer un equipo altamente funcional, me estaba agotando debido al ciclo de apagar incendios. Fue una interacción crucial con la CEO la que cambió mi comprensión del rol de tech lead. Me di cuenta de que estaba tratando de hacer dos trabajos: desarrollador y tech lead, lo que causaba dificultades con las interrupciones y descuidaba las responsabilidades del tech lead.

Después de todo, soy un desarrollador, así que debería estar trabajando en tickets. A menudo, esto podía ser algo bastante complejo. Por ejemplo, estábamos trabajando en algunos componentes de React bastante únicos que permitían a un usuario seleccionar su techo en un mapa y ver una representación visual de los paneles solares que se instalarían en su techo. Luego, un problema interrumpía mi flujo. Y esto generalmente era un desarrollador pidiendo ayuda con algo. Tal vez uno de los desarrolladores estaba teniendo dificultades para manejar datos que venían directamente de nuestro CMS. Después de algún tiempo de depurar, al final, resultaba que alguien había realizado un cambio en el tipo de datos en Contentful sin actualizar los tipos de TypeScript en el frontend, y esto había causado un error. Entonces, actualizamos TypeScript y solucionamos el error. Pero ahora estoy atrasado con mi propio trabajo. Entonces, los componentes que estoy construyendo son fundamentales para nuestro flujo. Así que vuelvo rápidamente a codificar e intento volver a concentrarme después de cambiar de contexto. Sin embargo, debido a que solo abordé los síntomas, el problema vuelve a ocurrir y, dos semanas después, tenemos otro error porque alguien más hizo un cambio en Contentful sin actualizar TypeScript. El resultado, después de aproximadamente seis meses en el proyecto, me di cuenta de que estaba empezando a agotarme. A esto lo llamamos el ciclo de apagar incendios. Claro, desde el exterior, parecía que éramos un equipo altamente funcional y nuestros clientes estaban muy contentos. Estábamos implementando nuevas funciones a diario y yo mantenía a los desarrolladores a flote. Pero el esfuerzo era mucho y definitivamente estaba trabajando más duro y no más inteligentemente.

Afortunadamente, tengo varios mentores en el trabajo que me ayudan a crecer en el rol de tech lead, y me ayudan a aclarar un modelo mental de lo que debería estar buscando. Así que, después de este punto bajo, tuve una interacción crucial que cambió mi comprensión de lo que significa ser tech lead. Durante una capacitación en toda la empresa, la CEO preguntó casualmente a los gerentes que levantaran la mano, y estaba haciendo un punto dirigido a ellos, y yo no levanté la mano. Entonces, ella miró alrededor de la sala, un poco confundida, y me notó. Dijo: vamos, James, ¿por qué no tienes la mano levantada? Claro que eres un gerente. Eres un tech lead. El problema era que yo no me veía a mí mismo como un gerente. Para mí, eso parecía una palabra sucia. Pensaba que un gerente era alguien que coordinaba el trabajo dentro de su equipo, pero en realidad no hacía el trabajo ellos mismos, y resulta que nuestra CEO tenía una comprensión completamente diferente de lo que debería ser la palabra gerente. Después de esa capacitación, a través de discusiones con ella y otros, aprendí sobre el modelo mental de gestión que usamos en nuestro grupo. La razón por la que estaba luchando con el ciclo de apagar incendios y el agotamiento era porque estaba tratando de hacer dos trabajos. Por un lado, estaba luchando por ser un desarrollador que completaba mis tickets porque podía ser interrumpido en cualquier momento del día, teniendo que intervenir y ayudar con los tickets de los desarrolladores, lo que interrumpía mi propio flujo de desarrollo. Por otro lado, debido a que siempre estaba atrasado con mi desarrollo, descuidaba algunas de las responsabilidades del tech lead para ponerme al día con mis tickets. Y esto significaba que el equipo se encontraba con problemas una y otra vez, y era una batalla constante para

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Un Marco para Gestionar la Deuda Técnica
TechLead Conference 2023TechLead Conference 2023
35 min
Un Marco para Gestionar la Deuda Técnica
Top Content
Today's Talk discusses the importance of managing technical debt through refactoring practices, prioritization, and planning. Successful refactoring requires establishing guidelines, maintaining an inventory, and implementing a process. Celebrating success and ensuring resilience are key to building a strong refactoring culture. Visibility, support, and transparent communication are crucial for addressing technical debt effectively. The team's responsibilities, operating style, and availability should be transparent to product managers.
Remix Flat Routes – Una Evolución en el Enrutamiento
Remix Conf Europe 2022Remix Conf Europe 2022
16 min
Remix Flat Routes – Una Evolución en el Enrutamiento
Top Content
Remix Flat Routes is a new convention that aims to make it easier to see and organize the routes in your app. It allows for the co-location of support files with routes, decreases refactor and redesign friction, and helps apps migrate to Remix. Flat Folders convention supports co-location and allows importing assets as relative imports. To migrate existing apps to Flat Routes, use the Remix Flat Routes package's migration tool.
Principios para Escalar el Desarrollo de Aplicaciones Frontend
React Summit 2023React Summit 2023
26 min
Principios para Escalar el Desarrollo de Aplicaciones Frontend
Top Content
This Talk discusses scaling front-end applications through principles such as tearing down barriers, sharing code in a monorepo, and making it easy to delete code. It also emphasizes incremental migration, embracing lack of knowledge, and eliminating systematic complexity. The Talk highlights the use of automation in code migration and the importance of removing barriers to enable smoother code migration.
Luchando contra la Deuda Técnica con la Refactorización Continua
React Day Berlin 2022React Day Berlin 2022
29 min
Luchando contra la Deuda Técnica con la Refactorización Continua
Top Content
This Talk discusses the importance of refactoring in software development and engineering. It introduces a framework called the three pillars of refactoring: practices, inventory, and process. The Talk emphasizes the need for clear practices, understanding of technical debt, and a well-defined process for successful refactoring. It also highlights the importance of visibility, reward, and resilience in the refactoring process. The Talk concludes by discussing the role of ownership, management, and prioritization in managing technical debt and refactoring efforts.
Construyendo equipos interculturales de alto rendimiento
React Day Berlin 2022React Day Berlin 2022
25 min
Construyendo equipos interculturales de alto rendimiento
The Talk discusses the importance of effective communication and collaboration in cross-cultural teams. It emphasizes the impact of culture on communication and performance evaluation. The speaker highlights the differences between low-context and high-context communication styles and the need to understand cultural nuances. It also explores the challenges of giving feedback in multicultural teams and suggests ways to improve communication and create a feedback culture. The influence of language on communication and the importance of transparency and honesty in feedback are also discussed.
Cómo hacer un juego web tú solo
JS GameDev Summit 2023JS GameDev Summit 2023
27 min
Cómo hacer un juego web tú solo
This talk guides you on how to make a web game by yourself, emphasizing the importance of focusing on tasks that interest you and outsourcing the rest. It suggests choosing a game engine that allows distribution on the web and aligns with your understanding and enjoyment. The talk also highlights the significance of finding fun in the creative process, managing scope, cutting features that don't align with the game's direction, and iterating to the finish line. It concludes by discussing the options for publishing the game on the web and leveraging unique web features.

Workshops on related topic

Masterclass: Integrando LangChain con JavaScript para Desarrolladores Web
React Summit 2024React Summit 2024
92 min
Masterclass: Integrando LangChain con JavaScript para Desarrolladores Web
Featured Workshop
Vivek Nayyar
Vivek Nayyar
Sumérgete en el mundo de la IA con nuestro masterclass interactivo diseñado específicamente para desarrolladores web. "Masterclass: Integrando LangChain con JavaScript para Desarrolladores Web" ofrece una oportunidad única para cerrar la brecha entre la IA y el desarrollo web. A pesar de la prominencia de Python en el desarrollo de IA, el vasto potencial de JavaScript sigue siendo en gran medida inexplorado. Este masterclass tiene como objetivo cambiar eso.A lo largo de esta sesión práctica, los participantes aprenderán cómo aprovechar LangChain, una herramienta diseñada para hacer que los modelos de lenguaje grandes sean más accesibles y útiles, para construir agentes de IA dinámicos directamente dentro de entornos JavaScript. Este enfoque abre nuevas posibilidades para mejorar las aplicaciones web con funciones inteligentes, desde el soporte al cliente automatizado hasta la generación de contenido y más.Comenzaremos con los conceptos básicos de LangChain y los modelos de IA, asegurando una base sólida incluso para aquellos nuevos en IA. A partir de ahí, nos sumergiremos en ejercicios prácticos que demuestran cómo integrar estas tecnologías en proyectos reales de JavaScript. Los participantes trabajarán en ejemplos, enfrentando y superando los desafíos de hacer que la IA funcione sin problemas en la web.Este masterclass es más que una experiencia de aprendizaje; es una oportunidad de estar a la vanguardia de un campo emergente. Al final, los asistentes no solo habrán adquirido habilidades valiosas, sino que también habrán creado funciones mejoradas con IA que podrán llevar a sus proyectos o lugares de trabajo.Ya seas un desarrollador web experimentado curioso acerca de la IA o estés buscando expandir tus habilidades en áreas nuevas y emocionantes, "Masterclass: Integrando LangChain con JavaScript para Desarrolladores Web" es tu puerta de entrada al futuro del desarrollo web. Únete a nosotros para desbloquear el potencial de la IA en tus proyectos web, haciéndolos más inteligentes, interactivos y atractivos para los usuarios.
De Ingeniero a Líder: Un Masterclass para Líderes Tecnológicos Primerizos
TechLead Conference 2024TechLead Conference 2024
144 min
De Ingeniero a Líder: Un Masterclass para Líderes Tecnológicos Primerizos
Workshop
Andrew Murphy
Andrew Murphy
Transicionar de un rol de contribuidor individual a una posición de liderazgo, especialmente en la industria tecnológica de ritmo acelerado, es enormemente desafiante. La mayoría de los nuevos líderes no reciben ningún tipo de capacitación en los primeros 10 años de sus nuevas responsabilidades.Nuestro completo masterclass está diseñado para ayudar a los nuevos y emergentes líderes tecnológicos a comprender sus nuevos roles y adquirir las habilidades para convertirse en líderes seguros, felices y efectivos.
Managers Are From Mars, Devs Are From Venus
TechLead Conference 2024TechLead Conference 2024
111 min
Managers Are From Mars, Devs Are From Venus
Workshop
Mo Khazali
Mo Khazali
Una Guía para Desarrolladores sobre Cómo Comunicar, Convencer y Colaborar Efectivamente con los Stakeholders
Es una historia tan antigua como el tiempo: la colaboración entre desarrolladores y stakeholders de negocios ha sido durante mucho tiempo un desafío, con una falta de comunicación clara que a menudo deja a ambas partes frustradas. Los mejores desarrolladores pueden comprender profundamente las necesidades de sus contrapartes de negocios, comunicar efectivamente la estrategia técnica sin perder a la audiencia no técnica y convencer al negocio de tomar las decisiones correctas. Trabajando en una consultoría, he fallado y tenido éxito en arquitectar y “vender” visiones técnicas, aprendiendo muchas lecciones en el camino.Ya sea que trabajes en una empresa de productos, seas consultor/freelancer, o quieras aventurarte más allá de ser solo un desarrollador, la capacidad de convencer y comunicar claramente con los stakeholders puede diferenciarte en la industria tecnológica. Esto se vuelve aún más importante con el auge de GenAI y el mercado de desarrolladores cada vez más competitivo, ya que la resolución de problemas y la comunicación efectiva son clave para posicionarte.En esta masterclass, compartiré ejemplos del mundo real, tanto buenos como malos, y te guiaré a través de poner la teoría en práctica mediante dojos.
Fuera de la sartén, al fuego: Guía para gerentes sobre cómo ayudar a los nuevos desarrolladores a prosperar
TechLead Conference 2024TechLead Conference 2024
35 min
Fuera de la sartén, al fuego: Guía para gerentes sobre cómo ayudar a los nuevos desarrolladores a prosperar
Workshop
Andrew Coleburn
Andrew Coleburn
Integrarse a un nuevo proyecto puede ser difícil, sin importar tu experiencia y antecedentes. Pero puede ser especialmente desafiante para los nuevos desarrolladores recién salidos de la escuela o de un bootcamp de programación. Basándose en su experiencia personal como graduado de un bootcamp y consultor de JavaScript, esta charla discutirá consejos y estrategias para que los gerentes ayuden a los nuevos desarrolladores de sus equipos a familiarizarse con un código desconocido, para que puedan tener un impacto más rápido y efectivo.
Cómo crear experiencias de edición que tu equipo amará
React Advanced 2021React Advanced 2021
168 min
Cómo crear experiencias de edición que tu equipo amará
Workshop
Lauren Etheridge
Knut Melvær
2 authors
El contenido es una parte crucial de lo que construyes en la web. Las tecnologías web modernas aportan mucho a la experiencia del desarrollador en términos de construir sitios impulsados por contenido, pero ¿cómo podemos mejorar las cosas para los editores y creadores de contenido? En este masterclass aprenderás cómo usar Sanity.io para abordar la modelización de contenido estructurado, y cómo construir, iterar y configurar tu propio CMS para unificar los modelos de datos con experiencias de edición eficientes y agradables. Está dirigido a desarrolladores web que desean ofrecer mejores experiencias de contenido para sus equipos de contenido y clientes.