Bingoparaseñoras de Lorena Castell: Un desafío de ingeniería en solitario
Hoy quiero compartir con ustedes un proyecto apasionante que he finalizado recientemente:
Bingoparaseñoras, una aplicación de bingo online diseñada para los eventos
musicales de la conocida presentadora y showoman. Este proyecto ha sido un desafío de
ingeniería que he abordado en solitario, lo que le añade un valor especial a este logro.
Me ha permitido explorar y aplicar tecnologías punteras como NET 8
, CQRS
,
Event Driven Architecture
, Azure
, Domain-Driven Design (DDD)
,
React
y Next.js
.
¿Qué es Bingoparaseñoras?
Bingoparaseñoras es mucho más que un simple bingo online. Es una herramienta diseñada para dinamizar los eventos musicales de Lorena Castell, donde el bingo se convierte en un elemento interactivo y emocionante para las hasta 10,000 personas que pueden asistir a sus shows. La aplicación permite configurar el número de premios por tipo (línea, doble línea y bingo) en cada partida, adaptándose a las necesidades específicas de cada evento.
Además, utiliza un algoritmo de generación de cartones sin repetición para garantizar la equidad y la emoción del juego. Y ahora, estamos trabajando en una versión para que grupos de amigos puedan jugar desde casa.

La aplicación Bingoparaseñoras durante un evento en vivo
¡La emoción de subir al escenario!
Uno de los elementos más emocionantes de Bingoparaseñoras es la posibilidad de que los ganadores de cada premio (línea, doble línea o bingo) sean notificados en tiempo real y tengan la oportunidad de subir al escenario para participar en pruebas sorpresa y ganar premios adicionales. ¡La emoción está garantizada!
Arquitectura y tecnologías clave
Para hacer realidad esta visión, he adoptado una arquitectura robusta y escalable. La aplicación se basa en:
- .NET 8 para el backend, lo que proporciona un rendimiento óptimo y gran flexibilidad
- React y Next.js para el frontend, creando una interfaz moderna, intuitiva y con excelente rendimiento
- CQRS (Command Query Responsibility Segregation) que permite separar las operaciones de escritura (comandos) de las de lectura (consultas), mejorando la eficiencia y escalabilidad
- Event Driven Architecture para facilitar la gestión de la concurrencia y la distribución de notificaciones en tiempo real a los jugadores
Desafío técnico
Uno de los mayores desafíos era garantizar que la aplicación pudiera soportar a 10,000 jugadores concurrentes, manteniendo la experiencia fluida y las notificaciones en tiempo real para todos ellos.
Domain-Driven Design (DDD)
Desde el inicio del proyecto, adopté un enfoque de Domain-Driven Design (DDD). Esto me permitió modelar el software en torno al dominio del negocio, facilitando la comunicación con los expertos del dominio y garantizando que la aplicación refleje de manera precisa las necesidades de los usuarios.
Escalabilidad y rendimiento
Para lograr la escalabilidad necesaria, he desplegado toda la infraestructura en Azure, aprovechando sus servicios de escalado automático y alta disponibilidad. Además, utilicé Terraform para gestionar la infraestructura como código, lo que permite aprovisionar y configurar los recursos de manera rápida y eficiente.
Infraestructura Azure

Arquitectura de bingo para señoras
La solución utiliza los siguientes servicios de Azure:
- Azure container apps para los microservicios
- Azure Container Apps para la aplicación frontend
- Azure SQL Database para el almacenamiento de datos
- Azure Service Bus para la comunicación basada en eventos
- Azure Redis Cache para optimizar el rendimiento
- Azure Application Insights para monitorización y telemetría
Tipos de premio y bingo americano
Bingoparaseñoras ofrece tres tipos de premio: línea, doble línea y bingo, todos ellos personalizables en cuanto a la cantidad de premios por partida. Además, el bingo jugado es de tipo americano, lo que añade un elemento estratégico y emocionante al juego.
Línea
Completa una línea horizontal, vertical o diagonal
Doble línea
Completa dos líneas en el mismo cartón
Bingo
Completa todo el cartón
Próximos pasos
El proyecto ya está finalizado y en uso para eventos. Ahora, estoy trabajando en la adaptación para usuarios domésticos. Tengo previsto añadir nuevas funcionalidades y optimizar el rendimiento para garantizar la mejor experiencia de usuario posible.
Me encantaría saber qué opinan sobre este proyecto. ¿Han trabajado con tecnologías similares? ¿Qué desafíos han enfrentado al desarrollar aplicaciones de alta concurrencia o con DDD? ¡Espero sus comentarios y sugerencias!