Accounting Software for the Construction Industry

Cloud based platform built with Vue.js, Laravel and hosted on AWS.

Construction Partner is an accounting software tailored for Construction Industry that is easy-to-implement, easy-to-use and flexible enough to meet the needs of every construction business. No matter if Industrial, Commercial, Public or Residential work.

Worked hours

+

Team members

Years of ongoing collaboration

+

Of data imported

+ GB

Custom reports

+

PDF templates

+

The Challenge

01

The main challenge was to convert the existing Windows desktop application into a cloud based one, maintaining the existing core functionality and improving on most of the areas to offer a better user experience. In order to do that we had to create a way to migrate existing data to the cloud format. The desktop app was on the market for more than 20 years and has a lot of functionalities and iterations. That on it's own is a big challenge because there was a lot of work to do. So right from the start we were faced with several challenges

  • Create a data migration tool that could import data from the desktop app. The size of a company varied but it could go up to 10-20GB of data.
  • Find a solution for handling reports at scale. We are talking about hundreds of reports and on top of that every report had to have a PDF version as well.
  • Find a solution for handling Forms and PDF templates at scale. We are talking about dozens of various forms and templates such as government forms, statements, billings, invoices, work orders, payroll checks etc.
  • The application needed to be fast and accessible. Considering it's an accounting application, the people that use it do data entry daily. The application needed keyboard support, fast data entry without mouse and great performance.
  • Dealing with a lot of features. Right from the start we knew that we will have hundreds of pages and CRUD operations. Both from a UI and backend perspective this is a challenge because you have to organize things in such a way so they are clear for the end users.
  • Granular permissions and user roles. We had to make sure that we create a granular set of permissions so we could create role based on user needs in the long run. For example besides accountants, we would have Managers, Vendors, Customers, Employees being able to use the application to see their own data or assigned work.
  • Lots of data. In accounting you have to preserve all the data for years and ensure you have rules set in place so this data cannot be deleted or altered by users. Over time we are talking about millions of records in various database tables which grow in size the more companies use it and the more activity there is in the app.
  • History and activity logs. On top of the fact that there's lots of data for many parts of the app, end users wanted to be able to see activity logs such as who modified certain entities, when and how.

All these challenges combined were overwhelming however we as a team love challenges and started a journey to develop this project which eventually became the most challenging project we have ever made at BinarCode but at the same time it became the project we are the most proud of because it's a result of hard work and dedication.

The Process

02

The process for developing the application was an iterative process with many 1:1 sessions with the founder of Construction Partner and the developers of the desktop app to first understand the domain and the ins and outs of the application.


Migrating a large desktop accounting application to the cloud is a complex process that requires careful planning and execution. Here are some key steps we considering during the development of the project:

1. Assessment and Planning:

- Requirement Analysis: Understand the specific needs of the construction companies and how the application currently meets those needs.

- Application Inventory: Catalog all application components, modules, and dependencies.

- Data Assessment: Identify the size, type, and structure of the data to be migrated.

- Select Cloud Provider: Based on application requirements, choose a cloud provider that offers the necessary infrastructure, services, and pricing structure.

- Migration Strategy: Decide on a phased approach (e.g., module-by-module) or a big-bang approach (migrating everything at once).

2. Design and Architecture:

- Cloud-native Design: Here we agreed on a new application that would serve as the base for an enhanced accounting experience and open the door to new features and long term vision for the project.

- Data Architecture: Plan how data will be stored, accessed, and secured in the cloud.

- Security and Compliance: Ensure the cloud environment meets industry standards and regulations, especially for financial data.

3. Data Migration:

- Data Cleansing: Clean up any redundant, obsolete, or trivial data.

- Data Mapping: Ensure data from the desktop application maps correctly to the new cloud database structure.

- Migration and Backup: Use ETL (Extract, Transform, Load) tools to migrate data to the cloud and maintain a backup of the original data.

4. Optimization:

- Performance Tuning: Optimize application performance by leveraging cloud-native services and scaling capabilities. For example, some companies we had to import had 10+ GB of raw data which translated to millions of records in the database. Initially the first iterations of the data importer we created, took hours or even days! After many iterations and performance tuning, we managed to bring it down to minutes for small companies and 1-2 hours for medium sized companies.

- Cost Optimization: Monitor cloud resource usage and adjust to avoid unnecessary costs. In order to optimize costs, we ended up using AWS Fargate in order to spin up VM instances and shut them down after importing data.

5. Deployment and Go-live:

- User Training: Provide training to end-users on the new cloud-based application. This was done through 1:1 recurring sessions with end-users where we gathered feedback and iterated over what we've built.

- Transition Plan: Have a clear plan to switch from the desktop application to the cloud version, ensuring minimal downtime.

- Monitoring: Set up monitoring tools to keep track of application health, performance, and usage.

6. Post-migration Activities:

- Feedback Loop: Gather feedback from users to identify any issues or areas of improvement.

- Continuous Monitoring: Continuously monitor the application and infrastructure for any anomalies.

- Updates and Patches: Regularly update the application and underlying infrastructure to address security vulnerabilities and other issues.

7. Documentation and Knowledge Transfer:

- Documentation: Document the entire migration process, architecture decisions, and configurations.

- Knowledge Transfer: Ensure that the team is well-versed with the cloud environment and application workings.

Remember, communication is key throughout the migration process. Keep stakeholders informed about progress, challenges, and any potential delays to ensure a smooth transition.

The Outcome

03

The collaboration between BinarCode and Construction Partner resulted in a rewritten Cloud application with more features and possibility to scale and embrace the web.

Rethinking functionalities and modules allowed us to create new possibilities and remove restrictions previously enforced by the desktop app which resulted in simplified User Experience and less support for customers.

From small things such as inline, fast, keyboard accessible edits to fully automated bulk sending of emails and dozens of other features, it opened the doors to a new realm of efficiency for construction companies. The platform BinarCode developed for Construction Partner isn't just another accounting software; it's a comprehensive, cloud-based solution tailored specifically for the construction industry in the US.

The Key to Success: BinarCode's Innovative Features for Construction Partner

The seamless operation and broad appeal of the software developed by BinarCode for Construction Partner can be attributed to several pivotal features. Here's a deep dive into these components that made this project a remarkable success:

  1. Robust Admin Panel: At the heart of the application is a powerful admin panel. This panel serves as the control center, allowing administrators to oversee all companies and handle a myriad of administrative tasks efficiently. From user management to data monitoring, the admin panel ensures smooth operations across the board.
  2. Multi-Tenant Cloud Infrastructure: BinarCode developed the application as a multi-tenant cloud solution. This means every construction company that uses the platform has its own isolated data storage and dedicated domain. Such an architecture not only ensures data privacy and security but also offers a personalized experience for each customer.
  3. Dynamic Reporting with Stimulsoft: The ability to generate insightful reports is crucial for any accounting platform. Leveraging the Stimulsoft report engine, the software provides performant reports with a plethora of template variations. Whether it's a detailed financial breakdown or an overview of project costs, the platform offers it all, presented in a visually appealing and easy-to-understand format.
  4. Integrated Payroll with IRS Compliance: Payroll processing is a vital component for construction companies. BinarCode went a step further by integrating payroll into the app, ensuring all necessary XML and forms are readily available for submission to the IRS. This feature not only simplifies the payroll process but also ensures companies stay compliant with tax regulations.
  5. Flexible Imports. Users can now effortlessly upload data from any CSV or Excel file, view it instantly on-screen, make immediate edits, and save presets for streamlined future imports. This robust capability not only accelerates data integration but also offers unparalleled flexibility, allowing seamless imports of diverse datasets ranging from accounts and vendors to invoices and beyond.
  6. Versatile Role-Based Access: One of the standout features of the platform is its scalable roles and permissions architecture. This isn't just an accounting software—it's a holistic tool that caters to various stakeholders in a construction company. Whether it's a project manager needing financial insights, a technician checking for inventory updates, or a vendor tracking payments, the software provides tailored access based on roles. This ensures every user, from employees to vendors, can view relevant data and tasks pertinent to their role, making the platform a versatile tool for all facets of construction operations.

In essence, the collaboration between BinarCode and Construction Partner has given birth to a software that is not just feature-rich, but also meticulously crafted to cater to the intricate needs of the US construction industry.

Sneak peak

A short preview of the outcome and how the application looks like

vendors listing
printed progress billing