Back to Case Studies

CASE STUDY
CustomEase:
A Customized Solution for Efficient Operations Management

Client

CustomEase

Industry

Real Estate

Product

Web app

Date

2021

Skills

Ruby on Rails

Vue.js

Process Modelling

Javascript

RWD

Multitenancy

case study image
6 months
Implementation time
1300%
Quicker page load
2
Developers
text image
About Client

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.

About the project

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.

Client's Problem

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.

Challenges for 2N
  • Extracting useful, existing business logic and database structures from the old codebase.
  • Choosing the right technologies that could combine stable performance with a modern look and feel, all while ensuring ease of implementing new features.
  • Understanding complex business processes and translating them into a user-friendly interface and performant code.
  • Ensuring the system is easily extendable, so new features can be added without significant effort.
  • Implementing everything in a way that allows for multi-tenancy, as the client planned to sell their process and the tool to handle it to similar companies in the future.
In Action
What we did

Create a modern frontend

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.

Customized processes

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.

Reports system

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.

Multitenancy

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.

Tax system, cost management

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.

Outcome

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.

What we accomplished:
  • Compared to the old system, the average page load time was 14 times faster.
  • Implemented complex wizards guiding users through intricate processes step by step, ensuring they didn't miss anything.
  • Streamlined the most complex sets of data into easy-to-understand views with plenty of interactivity.
  • Created an extensive authorization process for different company members working on different parts of the project.
  • Implemented a thorough reporting system.
  • Created a base of view components making the system easy to extend and modify in the future.
  • Coded everything with multitenancy in mind, allowing the client to easily sell the system to other companies.
  • Handled business logic from client acquisition to managing post-sale taxes and payouts for contractors.
ul. Powstańców Warszawy 5
15-129 Białystok

+48 668 842 999
CONTACT US