Logistics SaaS Platform
Nền tảng logistics nhiều dịch vụ với định danh tập trung, phân quyền theo vai trò và đồng bộ dữ liệu thời gian thực, phục vụ khoảng 1.000 người dùng mỗi ngày.
Problem
A logistics company needed one platform for sales, operations and accounting teams. Each team used separate tools, with separate logins, separate permissions and data that drifted out of sync.
What I built
I work on the core of this platform as a developer and team lead. My scope covers:
- Identity and RBAC. Single sign-on through Keycloak, with a role-based permission model shared by every module.
- Microservices. Backend capabilities split into independently deployable services.
- Change data capture. Debezium streams database changes into Kafka, so other services react to data changes without tight coupling.
- Micro-frontend. The UI is composed of separately built apps loaded through Webpack Module Federation, so teams can ship their modules on their own schedule.
Stack and architecture
Java and Spring Boot services behind Keycloak, with Kafka and Debezium as the event backbone. React micro-frontends sit in a host shell and load modules at runtime. Services run on Kubernetes.
Outcome
The platform serves roughly 1,000 daily users. The main lessons: keep identity and permissions in one place from the start, and treat CDC events as a public contract between services, because changing them breaks consumers just as an API change would.
Company details are omitted on purpose; this is a private commercial product.