Overview
Perumdam Lawu Tirta Magetan is a regional water utility company. They provide water services to households and businesses in the Magetan area. Like most utilities, they deal with a constant stream of customer complaints — low water pressure, billing errors, leaks, service interruptions.
The old process was phone-based. Customers would call, explain the problem, and hope someone wrote it down correctly. Complaints got lost. Follow-ups were inconsistent. Customers had no way to track their issues. The company wanted to fix that.
I built Perumdam Mobile as a customer service platform. Customers can check their account info, view billing history, and submit complaints with photos and descriptions. The system routes complaints to the right department and tracks them through resolution. Customers get updates via push notifications.
The app also includes company information — office locations, contact details, service hours, and announcements. Basic stuff, but useful for customers who need to visit an office or check if there's a planned service interruption.
Client
Perumdam Lawu Tirta Magetan manages water distribution for the Magetan Regency in East Java. They're a government-owned utility with a mandate to provide reliable service and maintain transparency.
They wanted the app to improve customer satisfaction and reduce the burden on their call center. If customers could submit complaints online and track their status, it would reduce phone calls and improve accountability.
Features
Account information lets customers view their account details, current balance, and billing history. They can check if they have outstanding payments or see their usage over time. The data is pulled from the company's billing system.
Complaint submission allows customers to report issues with photos, descriptions, and location data. They select a complaint category — water quality, pressure, leaks, billing, or other. The system generates a ticket and routes it to the relevant department.
Complaint tracking shows the status of each customer's complaints — pending, in progress, or resolved. Customers can see when their complaint was submitted, when it was assigned, and when it was closed. They can also view responses from staff.
Push notifications keep customers informed. They get notified when their complaint is received, when it's assigned to a technician, and when it's resolved. Reduces the need for follow-up calls.
Company information provides office locations, contact details, service hours, and announcements. Customers can find the nearest office, check if it's open, or see if there's a planned service interruption in their area.
Tech Stack
Flutter for the mobile app with GetX for state management. CodeIgniter 3 backend with MySQL for data storage. REST API for communication between the app and backend.
Integration with the company's existing billing system. The app pulls account data via API but doesn't modify it — read-only access to prevent billing errors.
Firebase Cloud Messaging for push notifications. Image compression for complaint photos to reduce bandwidth usage. Role-based access control for customers and staff.
My Role
Full-stack developer. I built the mobile app, designed the API, and developed the backend. I also integrated with the company's billing system and worked with their IT team to ensure data consistency.
The complaint routing logic required collaboration with the company's operations team. Different complaint types go to different departments. Some complaints are urgent and need immediate attention. Others can wait. I built a priority system that routes complaints based on type and severity.
I also focused on usability. The app had to be simple enough for non-tech-savvy customers. I kept the UI clean, used clear labels, and minimized the number of steps to submit a complaint. User testing with actual customers revealed pain points I hadn't considered, and I adjusted the design accordingly.
The app launched in 2022 and has been downloaded by thousands of customers. Perumdam uses it as the primary channel for complaint management. They've told me it's reduced call center volume and improved complaint resolution times. That's the kind of practical impact that makes the work worthwhile.
