Scalable rental platform backend with comprehensive RESTful APIs, role-based access control, and robust business logic for property and booking management.
Backend Architecture & API Design
WeRent is a comprehensive rental platform backend built with Nest.js, designed to handle property listings, user management, bookings, and payment processing. The system implements secure authentication, role-based access control, and a scalable architecture suitable for high-traffic scenarios.
The platform serves two primary user roles: Renters who browse and book properties, and Owners who list and manage their properties. The backend enforces business rules for bookings, handles payment integrations, and provides comprehensive API documentation for frontend integration.
Designed and implemented comprehensive REST APIs for users, properties, bookings, and payments with proper HTTP standards and status codes.
Implemented granular permissions for Renters, Owners, and Admins using Nest.js guards and decorators to protect endpoints and resources.
Architected a normalized PostgreSQL schema with Prisma ORM, handling complex relationships between users, properties, bookings, and reviews.
Developed core rental logic including availability checking, double-booking prevention, booking lifecycle management, and payment status tracking.
Created validation pipes and DTOs for all input data, ensuring data integrity and security across all endpoints.
Organized code into feature modules (Auth, Users, Properties, Bookings, Payments) with dedicated controllers, services, and repositories for separation of concerns.
Ensured atomic booking operations using database transactions to prevent race conditions and double bookings during concurrent requests.
Implemented JWT-based authentication with refresh token rotation, password encryption using Bcrypt, and protected routes with custom guards.
Backend Engineer
Mar, 2026 - Apr, 2026
Backend Development
Cross-functional Team