microservices
reservations
events
allocation
certificates
mentoring
Kafka

LabTech Reservations

University software factory with microservices architecture: room reservation, event management, teacher allocation, automated certificate generation, and mentoring young professionals.

LabTech Reservations

Objectives

Train and mentor young professionals through a real university software factory
Automate room reservation with event approval workflow and conflict prevention
Optimally allocate teachers to classes and rooms at the beginning of each semester
Automatically generate certificates and manage events with ticketing and digital check-in

Challenges

Manual room reservation management causes scheduling conflicts and lacks approval workflow
Teacher allocation to classes and rooms at semester start is a complex, error-prone manual process
Manual event certificate generation and lack of integration between registration, payment, and attendance systems

Implemented Solutions

Solutions implemented to ensure scalability, security and efficiency.

Microservices architecture with Kafka, Redis, PostgreSQL, and MongoDB — centralized data and event-driven communication
Teacher allocation system with semester schedule optimization algorithm
Automated certificate generation with Typst and MinIO storage, integrated into event workflow
Event platform with ticketing, QR code check-in, approval workflow, and Stripe for payments

LabTech — University Software Factory

LabTech is a software factory developed for UDF (University of the Federal District), focused on training and mentoring young professionals through a real project with microservices architecture.

Microservices

  • Reservations (Python/Flask + MongoDB): Room reservation with calendar, conflict prevention, and approval workflow
  • Events (Java/Spring Boot + PostgreSQL): Complete event management with ticketing and Stripe
  • Teacher Allocation (Python/Flask + PostgreSQL): Optimization algorithm to allocate teachers to classes and rooms at the beginning of each semester
  • Shared Resources (GraphQL + Redis): Internal APIs, SSO authentication, and centralized caching
  • Certificate Generation (Typst + MinIO): Certificates automatically generated and stored in object storage

Architecture

  • Messaging: Apache Kafka for event-driven communication between microservices
  • Cache: Redis for tokens and API responses
  • API Gateway: Nginx with Logstash for centralized logging
  • Databases: PostgreSQL (transactional) + MongoDB (events and reservations)
  • Infrastructure: Docker with Kubernetes-ready orchestration

Features

  • Room reservation with event approval workflow
  • Teacher allocation (grade creation) per semester
  • Automated certificate generation
  • Ticketing with Stripe and QR code check-in
  • Magic Link authentication (passwordless login)
  • Analytics dashboard with usage metrics
  • BDD testing with Behave and Selenium WebDriver

Professional Training

LabTech serves as a real development environment for training and mentoring young professionals, working with modern software engineering practices in a microservices environment.

Room reservation interface

LabTech solution topology