Backend & Data / Application
Real Estate API
A modular Java backend for property operations, with transactional accounting, scoped access, and private document storage.
- Focus
- Application engineering
- Project type
- Application
- Core technologies
- Java 26 · Spring Boot · PostgreSQL · Redis

Context
The engineering problem
Property workflows connect tenants, rent, fees, and payments. Partial writes or overly broad access can leave financial records inconsistent or expose another user's data.
Architecture at a glance
A simplified implementation map based on the linked repository. Arrows show the principal relationships; deployment details live in the source.
- clientAPI clientsHTTP / JWTgatewaySecurity & controllers
- gatewaySecurity & controllersAuthorized requestsserviceApplication & domain
- serviceApplication & domainRepository adaptersdatabasePostgreSQL / Flyway
- gatewaySecurity & controllersRequest limitscacheRedis rate limiting
- serviceApplication & domainStorage portexternalPrivate S3 storage
All system components (6)
- API clientsclient
- Security & controllersgateway
- Application & domainservice
- PostgreSQL / Flywaydatabase
- Redis rate limitingcache
- Private S3 storageexternal
Approach
Implementation decisions
Protect business boundaries
Domain and application layers depend on ports rather than persistence or web frameworks. Architecture tests check that dependency direction.
Keep accounting consistent
Application transactions group related writes, while decimal money calculations avoid floating-point accounting errors.
Separate access and storage
JWT sessions, owner-aware authorization, Redis rate limiting, and private S3 uploads address distinct security concerns.
Explore the implementation
Start with the source.
These entry points connect the architecture to the implementation.
- Application dependencies ↗pom.xml
- Layer boundary tests ↗src/test/java/com/realestate/ArchitectureTest.java
- Accounting tests ↗src/test/java/com/realestate/AccountingTest.java
- Database migration ↗src/main/resources/db/migration/V2__security_and_accounting.sql
Implementation scope
Public backend implementation with unit and integration test source. The repository demonstrates engineering choices; production traffic and deployment results have not been independently verified.