La complejidad y requisitos de las aplicaciones de hoy en día nos imponen nuevos retos tratando de testearlas en nuestros entornos locales. Los mayores desafíos nos los encontramos cuando queremos probar nuestro software de manera end to end, sobre todo si la infraestructura se compone de servicios en la nube. Sin embargo, la mayor parte de las veces docker entra a nuestro rescate, ofreciéndonos imágenes construidas que nos pueden ayudar a emular el comportamiento de estos servicios.

Específicamente, para trabajar con AWS podemos encontrar soluciones completas como Localstack ( https://localstack.cloud/). Este servicio emula gran parte de los servicios de AWS


Como desarrolladores de software, nos solemos enfrentar con decisiones en nuestros proyectos que afectarán a toda la arquitectura de estos de una u otra manera. Una de las decisiones principales que deben de tomarse en el planteamiento de un proyecto web es dónde implementar la lógica y el renderizado del frontend. Esta decisión puede no ser tan evidente a veces y debemos analizar nuestro escenario para encontrar la estrategia más adecuada para renderizar nuestra web.

En el último año, ha cogido gran fuerza la estrategia JAMstack (https://jamstack.org/). Generalmente esta aproximación contempla una web únicamente desarrollada con JavaScript, APIs y lenguaje…


Hace unas semanas, dentro del contexto del proyecto en el que actualmente trabajo, se propuso diseñar una funcionalidad basada en descuentos y promociones. Nuestra arquitectura basada en microservicios con el stack NestJS y Typescript está basada en la premisa de desacoplar al máximo los conceptos para una mantenibilidad adecuada y un proceso evolutivo que nos permita escalar nuestro diseño de forma ágil y adaptado al contexto de un equipo dividido en dos squads.

Para ello, se analizaron los requisitos a corto y medio plazo que requeriría nuestro proceso de compra y escenarios que “Negocio” podría plantear para aplicar estos descuentos…


Hace unas semanas decidí dar mi primera charla pública gracias a la oportunidad que me había ofrecido QALovers. Me puse manos a la obra cuando me lo ofrecieron, pensando que podía aportar desde un punto de vista de calidad. Existen muchos frameworks de testing, muchas herramientas, pero quise ir más allá y reflexionar como realmente mi equipo aporta calidad a los productos digitales que construimos en Cloud District.

En este último año, el equipo técnico hemos puesto mucho esfuerzo en implantar una estrategia de CI/CD, pero echando la vista atrás, para llegar a implantar realmente esta filosofía hemos ido mejorando…


En este artículo vamos a hablar del patrón de diseño “Chain of Responsability”. Como todos los patrones de diseño, nos ayudan a solucionar problemas comunes hablando un lenguaje habitual entre los desarrolladores. Personalmente, me gusta interiorizar los patrones de diseño y aunque hay bastantes ejemplos teóricos, no valoras lo que te aporta hasta que lo llegas a implementar en un caso real.

Así que hoy le toca el turno a “Chain of Responsability”, uno de mis favoritos, ya que me ha ayudado en muchas ocasiones a escribir un código legible y mantenible. Esta semana, he tenido que implementar una funcionalidad…


En el ultimo desarrollo que hemos trabajado durante meses, se planteó una arquitectura de microservicios para crear un gestor de contenidos a medida. Separar la responsabilidad en pequeños servicios nos proporcionó ciertas ventajas respecto al legacy monolítico que heredábamos, ya que nos proporcionaba al equipo trabajar sobre ciertos aspectos independientes desacoplando cada pieza. Esto proporciona ventajas que ya conocemos de este tipo de arquitecturas, como la independencia o el despliegue independiente, sin embargo no debemos de olvidarnos del rendimiento.

Aún teniendo siempre una visión global, al comienzo del desarrollo pudimos paralelizar bien el trabajo de cada desarrollador, avanzando con gran…


Hace unos meses a través de twitter encontré una recomendación del libro “Talking with Tech Leads: From Novices to Practitioners”. Cómo iba a embarcarme en una nueva experiencia laboral donde tendría que enfrentarme a este rol, decidí comprarlo para ver la perspectiva de personas con esta experiencia. Por fin he terminado el libro y quería haceros un pequeño review de lo que os podéis encontrar y algunos aprendizajes que se obtienen al finalizar el libro.

De hecho, una review en Amazon indica que es ideal para aquellos que acabamos de comenzar en este rol, así que si estáis empezando o…


Agile Inception, o también conocido como Inception Deck, es un conjunto de técnicas orientadas a alinear a todas las personas involucradas en un proyecto.

El objetivo de estas técnicas es el de reducir muchas de las incertidumbres que puedan surgir, ayudando a identificar los riesgos más evidentes y poniendo en común las expectativas de todos los stakeholders. Esto permite reducir considerablemente la falta de consenso, problemas de comunicación y la ambigüedad en ciertas partes del proyecto.

Estas técnicas se publicaron por primera vez en el libro “The Agile Samurai: How Agile Masters Deliver Great Software”. Se puede aplicar al iniciar…


User Story Mapping es una técnica que consiste en organizar el Product Backlog en dos dimensiones con el objetivo de construir un Roadmap. Este mapa se compone de dos ejes, en uno de ellos las releases(vertical) y en el otro las funcionalidades (horizontal).

Es por ello que tras la fase de Agile Inception, vamos a construir el mapa utilizando un tablero de post-its, en el que identificamos la prioridad de las historias de usuario, y el orden de implementación agrupado en releases. …


Cuando trabajamos con metodologías ágiles, nuestra unidad de trabajo es la Historia de Usuario. Inicialmente nuestro Product Backlog está compuesto de épicas y features que no son implementables por si mismas, ya que probablemente requerirán que las descompongamos en unidades más pequeñas, que permitan ser asumibles por el equipo. No existe una regla única, básicamente es usar el sentido común y tener en mente algunos de los patrones de descomposición de historias de usuarios que vamos a ver en este artículo. Sobre todo es interesante realizar esta descomposición una vez hemos hecho un User Story Mapping.

Es bastante conocido, que…

Adrián Alonso

Full Stack Web Developer — adrianalonso.es

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store