Dominando DDD: una experiencia de taller integral
noviembre 10, 2023 2023-11-10 13:09Dominando DDD: una experiencia de taller integral
En el panorama en constante evolución del desarrollo de software, es fundamental mantenerse a la vanguardia. El diseño orientado al dominio (DDD) ha surgido como un poderoso paradigma para crear sistemas complejos que se ajusten perfectamente a los requisitos empresariales.
Para dotar a desarrolladores y arquitectos de las habilidades necesarias para destacar en este ámbito, presentamos un taller intensivo de 4 días, con un total de 11,5 horas de aprendizaje inmersivo.
Estructura y temas del taller DDD
Fase 0: Visión general de la DDD (1 hora)
El viaje comienza con una rápida pero exhaustiva visión general de una hora de los principios fundamentales del Diseño Orientado a Dominios. Los participantes profundizarán en la teoría de los patrones tácticos cruciales de DDD, preparando el terreno para una inmersión profunda en las aplicaciones prácticas en las fases posteriores.
Fase 1: Modelización de un dominio (2 horas)
– Introducción: Establecimiento del contexto para el modelado de dominios y su importancia.
– Ejercicio práctico: Compromiso práctico para modelar un dominio, poniendo en práctica los conocimientos teóricos.
– Solución y justificación: Un análisis crítico de la solución desarrollada durante el ejercicio práctico, dilucidando la justificación subyacente.
Fase 2 y Fase 3: Kata sobre Arquitectura Hexagonal y Conceptos DDD en JAVA (3,5 horas)
Los participantes se embarcarán en un viaje a través de las complejidades de la Arquitectura Hexagonal y la Arquitectura por Capas DDD. Esta sección práctica cubre:
– Arquitectura hexagonal
– DDD Arquitectura en capas
– Capa de aplicación
– Servicios de aplicación
– Capa de dominio
– Agregados
– Entidades
– Objetos con valor
– Servicios de dominio
– Capa de infraestructura
– Servicios de infraestructura
Esta fase sirve como exploración exhaustiva de los principios arquitectónicos que forman la columna vertebral de los sistemas de software robustos.
Fase 4: Kata de Outbox/Inbox Pattern en JAVA (2,5 horas)
Esta sección se centra en la arquitectura basada en eventos:
– Conceptos básicos de la arquitectura basada en eventos
– Mantener el orden de los acontecimientos
– Garantizar la coherencia de los datos
– Implementación de un patrón de bandeja de salida transaccional
Los participantes adquirirán experiencia práctica en el tratamiento de las complejidades de los sistemas basados en eventos.
Fase 5: Microservicios (2,5 horas)
La fase final está dedicada a las complejidades de Microservicios, cubriendo:
– Antipatrones de microservicios
– Estrategias básicas para dividir microservicios
– Comunicación adecuada en arquitecturas de microservicios
El taller concluye con una sesión de preguntas y respuestas, que permite a los participantes pedir aclaraciones y profundizar en sus conocimientos.
Participantes en el taller
Estamos orgullosos de haber impartido este taller para líderes del sector como Grifols, MANGO, Data Color y Roche. Estas organizaciones reconocen la importancia de mantenerse a la vanguardia de la tecnología, y este taller dota a sus equipos de los conocimientos y habilidades necesarios para navegar por las complejidades del desarrollo de software moderno.
“Los formadores son muy buenos; se nota que conocen muy bien el tema. El material didáctico es muy claro. Toda la parte práctica y ejemplos de patrones del mundo real, en general, el contenido del curso ha sido muy bueno y se adapta a nuestras necesidades y es totalmente aplicable a un futuro proyecto.”
Stefano Assardo – Director de Ingeniería de Equipo en Roche
“La formación abarcó temas pertinentes con un instructor dinámico que respondió hábilmente a nuestras preguntas. El método y el plan de estudios del curso estaban bien estructurados y proporcionaban ideas prácticas. El estilo atractivo del formador hizo que las sesiones fueran amenas, y aprecié la flexibilidad para modificar la trayectoria del curso en función de las preguntas que iban surgiendo. En general, una experiencia de aprendizaje muy valiosa y adaptable”.
Adrià Rauret – Director de Ingeniería de MANGO
Conoce a los formadores
Christian Ciceri
Christian Ciceri es arquitecto de software y cofundador de Apiumhub, una empresa de desarrollo de software conocida por su excelencia en arquitectura de software. Comenzó su carrera profesional con un interés específico en temas de diseño orientado a objetos, con profundos estudios en patrones y técnicas de diseño a nivel de código y a nivel arquitectónico. Christian es un antiguo practicante de metodologías ágiles, en particular de programación eXtreme, con experiencia en prácticas como TDD, integración continua, construcción de pipelines y diseño evolutivo.
Es conferenciante público y autor del libro “Software Architecture Metrics”, del que es coautor con expertos del sector. En sus propias palabras “Un arquitecto de software debe crear un ecosistema de trabajo que permita a los equipos tener una producción escalable, predecible y más barata”.
Oscar López
Oscar López es un experimentado desarrollador de software con más de 15 años de experiencia, centrado principalmente en el backend. Su experiencia se extiende a la gestión de equipos de ingeniería y tutoría en arquitectura de software, mejores prácticas, patrones de diseño, pruebas y fomento de una cultura DevOps. Oscar es un apasionado de la implementación de las mejores prácticas para construir aplicaciones seguras y escalables, con un énfasis particular en el diseño impulsado por dominios y la arquitectura hexagonal.
Con un compromiso con la excelencia, Oscar aporta una gran cantidad de conocimientos en la creación de soluciones de software robustas y eficientes. Su dedicación a compartir las mejores prácticas y a inculcar la pasión por el desarrollo de aplicaciones seguras y escalables lo convierten en una incorporación inestimable a nuestro equipo de formadores.
¿Listo para dominar el DDD?
Aquellos que estén preparados para mejorar sus conocimientos y enfrentarse a las complejidades del desarrollo de software moderno pueden inscribirse en el taller de diseño basado en dominios aquí. No se pierda esta oportunidad de adquirir valiosos conocimientos prácticos para impulsar su carrera profesional.