Backend de Rifa Club
Rifa Club es una comunidad que ofrece beneficios exclusivos como sorteos, descuentos y acceso a contenido especial para sus suscriptores. En este proyecto, me encargué de desarrollar el backend, enfocándome en manejar suscripciones, pagos y la gestión de datos de los usuarios. El sistema se basa en tres colecciones principales: planes, usuarios y pagos, lo que permite administrar todo lo relacionado con los suscriptores de manera eficiente.



- Diseño de Arquitectura: Implementación de una arquitectura basada en el patrón MVC utilizando NestJS, asegurando un diseño modular y fácil de mantener.
- Desarrollo de la Capa de Datos: Utilización de Typegoose para interactuar directamente con la base de datos MongoDB, optimizando la gestión de datos sin necesidad de un ORM tradicional.
- Lógica de Negocio: Implementación de la lógica compleja para el manejo de pagos mediante la API de Mercado Pago, resolviendo desafíos relacionados con la documentación y el manejo de estados de pago.
- Controladores y Rutas: Desarrollo de controladores con guards y DTOs para asegurar la seguridad y eficiencia en el manejo de consultas y datos, utilizando JWT para la autenticación de usuarios.
- Integraciones Internas: Integración de servicios como SendGrid y Mailtrap para el envío de correos, y utilización de JWT para la autenticación, Day.js para el manejo de fechas, y Bcrypt para la seguridad de contraseñas.
- Autenticación y Autorización: Implementación de JWT para autenticar y autorizar usuarios, garantizando el acceso adecuado a los recursos de la plataforma.
- Manejo de Errores y Middleware: Creación de una clase manejadora de errores global para evitar la exposición de información sensible y garantizar una gestión de errores robusta.
- Durante el desarrollo de Rifa, me encontré con varios desafíos
- - Migración de Usuarios: Fue un desafío significativo en la migración de usuarios con suscripciones existentes en Mercado Pago, incluyendo la transferencia de datos de pago a nuestra base de datos.
- - Integración con Mercado Pago: Enfrenté dificultades con la documentación poco clara de la API de Mercado Pago y el manejo de webhooks y estados de pago.
Como desarrollador backend en Rifa Club, trabajé en estrecha colaboración con un compañero para desarrollar e implementar la arquitectura del sistema basada en MVC. Colaboré en la integración de servicios internos y en la resolución de desafíos técnicos, bajo la supervisión de nuestro CTO (developer senior), para asegurar la calidad y efectividad del backend.