Back to Case Studies
A Customized Solution for Efficient Operations Management
Back to Case Studies
Client
CustomEase
Industry
Real Estate
Product
Web app
Date
2021
Skills
Ruby on Rails
Vue.js
Process Modelling
Javascript
RWD
Multitenancy
CustomEase is a project for Granite State Cabinetry, a well-established and highly experienced Home Remodeling Services company. They have been in business for over 25 years and completed over 10,000 cabinetry projects. They are unrivaled in their operating area and have a strong reputation, showcased by their perfect customer reviews and ratings.
The application was created from scratch, but it was a new version of a project that GSC already used. They had a system that was used to manage service orders, but it was outdated and not very user-friendly. The system was also very slow, the interface was complex, not very intuitive, and felt old. On top of that, it lacked some key features that the client needed. The system was also not mobile-friendly, which was very important for some of the client's employees working in the field.
We decided that given the scope of missing features and the state of the current code, a total rewrite was in order. Time spent on adapting the existing system would exceed the time in which we could provide a completely fresh solution. Technical debt was too great, and the code quality of the existing application was too far from our standards. Refactoring was possible, but it was not beneficial to the client in terms of budgeting and time. The client agreed with our assessment, and we started working on the project.
The client could no longer efficiently work with the existing system. The system was not RWD compatible, and a big portion of their work had to be done on-site, where they provided their services. This meant that devices like tablets and mobile phones were a big priority, but they could only really work on desktops.
Even on desktops, the application was slow, inefficient, and not very user-friendly. The client had to spend a lot of time training new employees on how to use the system, and even then, the system was not intuitive. They also discovered how many more features they needed shortly after receiving the 'finished' product. Their current system was not easily extendable, and adding new features was a big hassle, often resulting in multiple regressions and even worse performance.
The client was also confident in their business process, and rightfully so, as it is a successful company. They wanted to sell their way of doing things along with the app that would handle it to other companies in the future. This meant that the system had to be multi-tenant and easily extendable to suit the needs of many different clients.
We used Vue.js and custom, flexbox-based styling to create a modern, responsive frontend. This allowed the client to use the application on any device and made the application look and feel modern and intuitive.
We tailored the application to streamline service orders, enabling effortless creation and tracking of all costs, milestones, services of external and internal providers, customer data, job progress, and more.
Every project the client created had a lot of connected data: milestones, services, products, costs—everything was tracked at multiple stages of the project. While individual views were clear, the client also needed ways to summarize multiple projects at once. We discussed their needs and created a robust reporting system that allowed them to see all the data they required in an easy-to-understand and usable format.
We ensured that once the client received the ready system, they could easily sell the same application to other companies without our further involvement. We implemented a multi-tenant system that allowed the client to create and manage new tenants—all from within the application itself. In a way, they had two systems in one: one for their internal projects and another for selling and managing the system across tenants.
The entire system was based around projects. That was the main entity, and everything else was connected to it. The wizard for creating the project was a pivotal part, and the view where the project was managed was the most important. However, one crucial feature the client needed was a streamlined tax management system. This required deep collaboration between project managers and developers to ensure the system could handle complex financial transactions accurately.
After we completed the planned system, the client received a modern, fast, and intuitive application that streamlined their processes and made their work easier. On top of that, they could sell it.