Discover
TechLecturas

TechLecturas
Author: TechLecturas
Subscribed: 1Played: 52Subscribe
Share
© TechLecturas
Description
Club de lectura sobre software y tecnología donde charlamos sobre algunos de los libros más importantes de nuestro sector. Formado por Alex Gascón (@AlexGasconB) y José Noguera (@joselkan), dos apasionados de la tecnología con experiencia en compañías como AWS, Red Hat o Stripe.
Actualmente leyendo: The Software Engineer's Guidebook, de Gergely Orosz
Actualmente leyendo: The Software Engineer's Guidebook, de Gergely Orosz
41 Episodes
Reverse
¡Casi último capítulo! Esta vez estamos hablaremos de Arquitectura Software:Simplicidad ante todo: Por qué en Uber no usaban UML ni herramientas complicadas - solo pizarra, cajas y flechas. La buena arquitectura no viene de herramientas "fancy" sino de decisiones pragmáticas1-way doors vs 2-way doors: El framework de Amazon para categorizar decisiones - desde cambios reversibles (A/B tests, linters) hasta compromisos mayores (cloud provider, arquitectura completa)Deuda de arquitectura y radio de explosión: Los costes ocultos de las malas decisiones arquitectónicas y cómo medir el impacto real de tus cambios (spoiler: deprecar APIs públicas no es lo mismo que refactorizar código interno)Arquitectura alineada con negocio: Por qué la arquitectura existe para servir al negocio, no al revés. Cuándo una arquitectura "mala" puede estar bien y cómo aprovechar cambios de negocio para mejorar la técnica"Bueno" mejor que "perfecto": La obsesión por la arquitectura perfecta puede cerrarte puertas futuras. Better done than perfect, pero sabiendo qué es "suficientemente bueno"Tipos de arquitectos: Desde el teórico en su "torre de marfil" hasta la "máquina de programar" - por qué los mejores equipos combinan ambos perfiles con respeto mutuoEnlaces:https://www.oreilly.com/library/view/foundations-of-scalable/9781098106058/https://www.oreilly.com/library/view/designing-data-intensive-applications/9781491903063/
¡Hola hola hola una vez más! No se nos ocurre mejor forma de afrontar la vuelta de Septiembre que aprendiendo más con GergelyHoy nos toca hablar de sistemas resilientes y todo lo que les rodea. Podréis encontrar perlas como:De qué te preocupas cuando te preocupas por la resilienciaBuenas prácticas para monitorizar mediante logs y métricasPor qué son tan problemáticas las alertas silenciosas como las ruidosas (y cómo evaluar cómo es la nuestra)Cómo gestionar oncall e incidentes para que no os fastidien la vidaAdemás, los enlaces que os prometemos durante el capítulo:Core Web Vitals: https://support.google.com/webmasters/answer/9205520?hl=enF-score https://en.wikipedia.org/wiki/F-score SLI SLO SLA: https://cloud.google.com/blog/products/devops-sre/sre-fundamentals-slis-slas-and-slosLittle Bobby Tables https://xkcd.com/327/Como siempre, ¡no dudéis en hacernos llegar vuestros comentarios y sugerencias! ¡Y recordad que estamos buscando el próximo libro, avisadnos si tenéis alguna petición!
¡Aquí estamos otra vez! Hoy comentamos el capítulo 22 del libro, "Colaboración"En este episodio hablamos de lo único más difícil que escribir código cuando eres Staff+ Engineer: trabajar con gente. Tendremos algunos temas tan interesantes como:La diferencia entre politiqueo e influenciaTrabajar con managers y con otros Staff+La importancia de ayudar a los demásOs dejamos también algunos de los enlaces que hemos comentado a lo largo del capítulo5-15s: https://lethain.com/weekly-updates/ y https://eugeneyan.com/writing/15-5/"You can't sit out of office politics": https://hbr.org/2021/07/you-cant-sit-out-office-politics¡Esperamos que lo disfrutéis! ¡Y recordad que estamos buscando candidatos para el siguiente libro a leer, no dudéis en mandarnos vuestras sugerencias!
¡Hola hola! Volvemos con el capítulo 20, esta vez para explorar cómo crear y mantener equipos saludables desde nuestra posición de Tech Lead.En el episodio de hoy hablaremos sobre:Las características clave de un equipo saludableSeñales de alerta cuando un equipo se está yendo al garete (y cómo romper esos círculos viciosos)El temido "brillante gilipollas" y cómo lidiar con manzanas podridas en el equipoTécnicas para mejorar las dinámicas de equipo y fortalecer relaciones con otros teamsAdemás, tendremos anécdotas sobre managers desbordados y sobre por qué debes documentar comportamientos problemáticos.¡Hay también una pregunta bonus! Estamos llegando al final del libro y queremos saber qué os gustaría que leyéramos después. ¿Más contenido técnico? ¿Management? ¡Dejadnos vuestras sugerencias!
Volvemos!En este episodio hablamos de cómo, como tech lead, puedes influir directamente en la estructura de tu equipo o, al menos entender bien qué está pasando.Exploramos la diferencia entre roles y títulos, y por qué es clave identificar los roles explícitos e implícitos dentro del equipo.Hablamos de procesos: cuándo ponerlos, cuándo quitarlos, y cómo usarlos como herramienta (y no como fin).Por último, profundizamos en una de las grandes responsabilidades del tech lead: proteger el foco del equipo. Cómo priorizar, evitar distracciones innecesarias y gestionar cambios de dirección sin perder el rumbo.Bonus: la charla de Alex https://www.youtube.com/watch?v=WquuMkebeH4&pp=ygUZYWxleCBnYXNjb24gdDNjaGZlc3QgMjAyNQ%3D%3D
¡Hola hola de nuevo! Volvemos una semana más a la sección del Tech Lead, esta vez para hablar de la gestión de stakeholders (o "partes interesadas" en castellano)Veremos cosas tan interesantes como:Por qué no tienes que ver la gestión de stakeholders como burocraciaTipos de stakeholders y cómo identificarlosUn tip increíble para conocer stakeholders nuevos de la mejor manera posibleComo siempre, ¡esperemos que disfrutéis el capítulo! ¡No dudéis en hacernos llegar vuestros comentarios!
¡Muy buenas una semana más! Hoy nuestra lectura nos lleva a hablar de desplegar a producción: procesos, herramientas, cosas a tener en cuenta...Más concretamente, hoy Gergely (y nuestras anécdotas) hablan sobre:Los dos extremos (cambiar el código directamente vía SSH; o tener un proceso con entornos de test, QA, etc), y todas las posibilidades que hay en medioCómo son los procesos de deploy en Facebook (y por qué no son tan complejos como imaginas)Historias exclusivas sobre los procesos de despliegue en Amazon, contados desde la perspectiva de Alex desde dentroHerramientas para protegernos y detectar errores a tiempoCómo elegir el approach que más nos conviene
¡Muy buenas! Capítulo 16 ya, esta vez hablaremos de algo no tan técnico pero no por menos necesario: la gestión de proyectos.Por qué es necesariaReuniones que pueden catalizar un proyectoDiferentes etapas de un proyectoGestión de expectativasY mucho más. ¡Esperemos que os guste!
Volvemos una semana más, y esta vez con el ÚLTIMO capítulo de la sección del Senior Engineer: Software Architecture.En el capítulo de hoy encontraréis:Discusiones sobre distintos tipos de documentos de arquitectura, como Design Documents o RFCsUna pequeña introducción a DDD (Domain-Driven Design) y por qué es útil para nuestra carreraSúperconsejos para conseguir que tu proyecto no se quede en el papel y llegue a producciónY como bonus, os dejamos un artículo del propio Gergely sobre RFCs: https://blog.pragmaticengineer.com/rfcs-and-design-docs/.¡Esperamos que disfrutéis el capítulo!
¡Hola hola de nuevo! Vuelve TechLecturas una semana más, y hoy lo hacemos con el penúltimo capítulo de la sección sobre el Senior Engineer.
En esta ocasión hablaremos de una de las herramientas más importantes para un desarrollador: el testing. Y es que aunque es una habilidad muy útil tengas el nivel que tengas, se vuelve crítica cuando eres Senior, porque además de aplicarla tu tienes que liderar con el ejemplo
Para hacerte el camino más fácil, hoy hablaremos de:
Los distintos tipos de tests (unit tests, de integración, end to end...)
Modelos mentales para ayudarte a escribir tests
Tests especializados (tests de carga, chaos testing...)
Testear (bien) en producción
Os dejamos también los enlaces que hemos comentado en el capítulo:
Modelos mentales: Test pyramid y Test trophy
Load testing: https://github.com/hatoo/oha y https://github.com/newsapps/beeswithmachineguns
Chaos testing: https://netflix.github.io/chaosmonkey/ y https://pragmaticurl.com/netflix-chaos-monkey
Tests de seguridad: https://www.zaproxy.org/
Testear en producción - Environments multi-tenant en Uber: https://www.uber.com/en-ES/blog/multitenancy-microservice-architecture/
¡Hola hola! Capítulo 13 ya, madre mía. Esta vez, en vez de desarrollo software, como buenos seniors que somos ahora, hablaremos de ingeniería del software.
Hablaremos de ejercicios teóricos de incidentes, de flujos de requests, de release notes chorras, de Álex y su enamoramiento con Elixir y de mucho más. ¡Os esperamos!
¡Volvemos! Capítulo 12 titulado "Colaboración y trabajo en equipo" y en el que hablaremos de
Influencia
Hacer pair puede ser difícil
Cómo colaborar con gente
Salir de la burbuja de ingeniería
No ser un mamón en las PRs
La maestría de Alex para el naming
¡Nos vemos!
No, no nos hemos equivocado. Sí, es el mismo título que el capítulo 7 PERO con un girito: esta vez desde el punto de vista de un ingeniero senior.
Hablaremos de:
Expectativas ahora que eres senior
Desbloquearte tú, pero también desbloquear el proyecto y al equipo
Under-promise, over-deliver, over-communicate
Aprender a delegar
Trabajar en ciclos cortos
Encontrar enfoques distintos
Y mucho más. ¡Esperemos que os guste!
¡Muy buenas una vez más! Seguimos un capítulo más hablando de cómo ser un mejor developer, y hoy nos centramos en las herramientas que lo hacen posible. Esas grandes amigas que siempre están ahí y nos acompañan en las buenas y en las malas, como son:
- La terminal
- Un buen IDE
- Herramientas como Git o Regex
Además, hoy tenemos un capítulo en el que Jose y Alex aportan especialmente su experiencia y su punto de vista, lleno de recomendaciones como:
- El esquema de colores de Alex: el tema es Dracula y la fuente es Fira Code
- Buenos playgrounds online para probar tu código, como este de Python, el oficial de Ruby o ya si buscas algo más completo, Replit
- Las recomendaciones de Jose para aprender Git: la charla "So you think you know Git" y la web Learn Git branching
- Más playgrounds, pero esta vez para probar tus Regex: https://regexr.com/
- Las soluciones del GOAT Mitchell Hashimoto al Advent of Code 2021, en SQL: https://github.com/mitchellh/advent-2021-sql
- La charla sobre probar en producción: "From DevTestOops to DevOps"
¡Aquí estamos de nuevo! Hoy profundizamos en el proceso de desarrollar software, hablando de temas como:
Cómo dominar un lenguaje de programación, y por qué ser un junior puede darte ventaja
Las entrevistas técnicas de Stripe y la importancia de debuggear bien
Refactorizar y cómo hacerlo fácil
¡Testear, testear, y volver a testear!
¡Esperamos que os guste el capítulo, y recordad que podéis encontrarnos en Twitter en @TechLecturas!
Después de un parón relacionado con uno de nosotros acabando en el hospital y la época estival, ¡seguimos con la parte 2 de The Software Engineer's Guidebook!
Nos adentraremos en lo que, según Gergely, dedicarás mínimo el 50% de tu tiempo como Software Engineer: programar.
Cosicas de las que hablaremos hoy:
Programar es como un músculo y por tanto requiere entreno. De esto sabe Bojack Horseman un poco.
Code reviews. De humanos, de LLMs, de tus abuelos si hace falta pero feedback, feedback, feedback.
Los 10 mandamientos de cómo lidiar con code reviews.
Código legible.
La checklist definitiva para subir una PR.
Código de calidad.
Sitios para practicar/aprender: katas de Codurance, FreeCodeCamp, HackerRank...
Errores desconocidos.
Partners cabrones con mensajes raros en payloads.
Uber Eats regalando comida.
¡Nos vemos en el próximo!
¡Empezamos con la parte 2 de The Software Engineer's Guidebook!
Con este capítulo dejamos atrás la perspectiva general de nuestra carrera y empezamos a entrar en detalle en las habilidades que nos harán mejorar como ingenieros de software.
Algunas de las cosas que aprenderéis hoy son:
La importancia de saber en qué tarea centrarnos
Patitos de goma, paseos, y otras tácticas de debugging
Cómo eliminar bloqueos nosotros mismos y cómo escalar cuando esto no es posible
Estimar tareas (efectivamente: abrimos melón)
Me Llamo Earl aplicado al software
Además, encontraréis menciones a:
El manual de Gitlab para trabajar en remoto (aunque el manual entero es una fantasía)
La tribu tech de mentores
Los consejos de Julia Evans para hacer buenas preguntas
¡Bienvenidos y bienvenidas una semana más a TechLecturas!
Hoy ponemos fin a la parte 1 de The Software Engineer's Guidebook con un tema que pone la guinda a lo que hemos hablado en capítulos anteriores:
Entre los temas que trataremos hoy podéis encontrar:
Ventajas de cambiar de trabajo y ventajas de quedarte donde estás
Cómo preparar entrevistas técnicas
Qué hacer si nos hacen una oferta de un nivel más bajo que el que tenemos (o de un nivel más alto)
Consejitos para bordar el onboarding en una empresa nueva
Además, hablamos brevemente sobre el libro "The first 90 days", cuya ficha de Goodreads podéis encontrar aquí: https://www.goodreads.com/book/show/15824358-the-first-90-days
Por último, mencionar que en este capítulo hemos tenido algunos problemas con el audio, así que sobre todo al principio notaréis que la calidad es un poco peor que lo habitual. Os pedimos disculpas por ello, y os aseguramos que para el próximo capítulo ya estará solucionado 🙏🏻
¿Había ganas de Techlecturas? !Nosotros un montón! Os compartimos este capítulo, titulado "Thriving In Different Environments"
Un pequeño vistazo a lo que te vas a encontrar en lo que parece un podcast de Jon Sistiaga con tanta guerra ¡pero no! Hablaremos de:
- Ingenieros con mentalidad de producto
- Equipos de plataforma
- Los dramas y cómo mejorar la comunicación entre ambos
- Tiempos de paz, tiempos de guerra https://a16z.com/peacetime-ceo-wartime-ceo/
- Los eventos canónicos del podcast
¡Vuelve TechLecturas una semana más! Esta vez con un tema muy relacionado con el episodio anterior: y es que si en el episodio 3 hablábamos de Performance Reviews, ¡hoy toca recoger los frutos y hablar de ascensos, de Promotions!
Un sneak peak de lo que os encontraréis hoy:
- Cómo funcionan estos procesos en compañías como Amazon y Red Hat
- Por qué es importantísimo saber venderse bien (y por qué esto no es lo mismo que ser un vendehumos)
- "Produce, Organize, Publish", un framework para saber en qué enfocar nuestro impacto (fuente)
- Una pequeña discusión sobre ser VP de Ingeniería en JPMorgan
- El mindset "que nos quiten lo bailao"