Project Case StudyJanuary 2022

Tomps Building Apps

Modern digital platform that streamlines building operations through an intuitive interface, efficient maintenance scheduling, and integrated communication tools.

DesktopMobileNode.jsTypeScriptKafkaJSRedisMongoDBMariaDBExpress.jsReact Native

#Tomps Building Apps

##Architectural Overview

Tomps Building is a digital platform designed to help property managers, tenants, and technicians handle day-to-day building operations smoothly. As a Backend Engineer, I worked on the server-side architecture that coordinates daily facility bookings, maintenance schedules, and billing cycles for thousands of property units.
Aplikasi Tenant

// Aplikasi Tenant

##Key Features

Tenant and Technician Mobile Apps
Dedicated mobile views for residents to make requests and technicians to receive tasks.
Billing & Transaction Reporting (IPL)
Modules for generating bills, tracking payments, and reviewing overall transaction histories.
Complaint & Request Management
A streamlined ticketing system where tenants file complaints and managers mark them as 'Done'.
Facility & Maintenance Tracking
Tools for booking internal facilities and organizing maintenance schedules for public areas.

##Engineering Highlights

###Structured Task Queues

Handling asynchronous property operations: - Kafka Integration: Used KafkaJS to process background tasks like bulk invoice generation and batch email reminders without slowing down the main server thread. - Multi-Database Strategy: Managed tenant and transactional data using a blend of MariaDB for structured relationships and MongoDB for flexible event logs.

###Responsive Maintenance Dispatch

- Push Notifications: Integrated Firebase Admin to immediately ping a technician's mobile device the moment a tenant files an urgent leak or electrical issue.
Complaint Request

// Complaint Request

##My Role and Responsibilities

  • Backend Logic Implementation: Wrote the endpoints that connect the React Native apps directly to the main property database.
  • Message Queuing: Configured the Kafka producers and consumers for safe, reliable background task execution.
  • Payment & Invoice Flow: Standardized the IPL billing algorithms to ensure monthly invoices are generated correctly for every unit.
  • Testing Support: Utilized Mocha and Chai to run logic checks on the billing calculations.
Billing Report

// Billing Report

##Technical Stack

- Languages: Node.js, TypeScript - Frameworks: Express.js, React Native - Database & Cache: MariaDB, MongoDB, Redis - Message Broker: Kafka (KafkaJS) - Services: Firebase Admin - Testing & Tools: Mocha, Chai, SonarQube