Frontend
Frontend
Next.js, React, TypeScript, and TailwindCSS frontend separated from the backend, covering passenger, driver, company, and station administration workflows.
Flagship Project
Intelligent bus station management platform connecting passengers, drivers, transport companies, and station administrators through a centralized web system.
Role
Full-Stack Software Engineer responsible for platform architecture, backend services, frontend workflows, security, real-time features, and distributed systems integration.

Context
RIHLA was designed as a large-scale intelligent bus station management platform to digitalize and automate operational activities inside a modern station.
Traditional bus station operations often rely on disconnected tools and manual processes, creating trip management issues, passenger confusion, platform assignment conflicts, limited visibility, and slow communication between actors.
Designed and built a centralized platform with role-based modules, secure APIs, reservations, payments, driver workflows, company management, station administration, OCR-based bus identification, WebSocket notifications, and distributed communication patterns.
The project separates frontend and backend responsibilities while integrating distributed systems concepts: synchronous APIs, asynchronous messaging, real-time notifications, resilience patterns, and OCR automation.
A structured view of the technical blocks and responsibilities planned in the project.
Frontend
Next.js, React, TypeScript, and TailwindCSS frontend separated from the backend, covering passenger, driver, company, and station administration workflows.
Backend
Spring Boot backend with Spring Security, REST APIs, JPA/Hibernate, modular service architecture, protected APIs, and role-based logic.
Database
MySQL persistence for users, trips, reservations, companies, buses, routes, tickets, payments, messages, and station operations.
Authentication
JWT authentication, RBAC, BCrypt password encryption, protected APIs, and secure session management.
Integrations
ActiveMQ/JMS messaging, Java RMI, WebSockets, Resilience4j retry/circuit breaker/fallback patterns, Docker, OpenCV, YOLOv8, JUnit 5, Selenium, SonarQube, and Postman.
Distributed systems concepts implemented through REST APIs, Java RMI, ActiveMQ/JMS, WebSockets, and Resilience4j.
OCR pipeline combines OpenCV preprocessing and YOLOv8 plate detection for bus identification and platform assignment.
Security and quality practices include JWT, RBAC, BCrypt, protected APIs, JUnit 5, Selenium, SonarQube, and Postman testing.
Quality is presented as a progressive engineering approach: targeted tests, readability, static analysis, and documented decisions.
Quality practices include layered architecture, SOLID principles, JUnit 5, Selenium, SonarQube, Postman testing, and security controls around authentication and roles.
These takeaways turn the project into evidence of technical reasoning, not just a feature list.