Back to projects

FiveBIMfivebim.com

ERP for the construction industry. It has modules for estimation, procurement, site management, accounting, and executive reports.

drawing Home page of 5BIM

Why did we build this?

As a construction company with more than 50 years of experience we needed to take the next step into digital transformation, so we bought an ERP software from a germany company that was supposed to solve our problems. We tried to implement it for 2 years. At the end the implementation failed due to the following reasons.

  • Cultural differences in the software, process were not similar to Mexico.
  • Changes in the platform took a lot of time and were buggy.
  • We were the only client in LATAM so it was not worth it for them to maintain these changes.

During the implementations I started developing small pieces of software within the ERP to help solving the issues we were having using FastReport(C#). These programs helped a lot with the implementation but the dev process was really slow since I had to come up with a lot of workarounds to access the data on the ERP. I had to write very complex queries in SQL Server to perform heavy math calculations, I was saving data in JSON files and more.

After many tries I convinced my boss and the board that we could build a much better product if we built it on our own. Due to the nature of the project they let me build a prototype for one of the modules, it was a small module to handle the procurement schedule of a site project. The users were very happy with this new approach, they could access this module using their browser instead of running a heavy software via remote desktop, it was faster and more friendly.

drawing Menu of all the modules

My participation

This is the biggest project I have been part of and where I have taken more responsibilities. Since it was developed inside a construction company and not a software company I had to work in several roles. I was product owner, project manager and tech lead.

At the beginning of the project it was only me. After a few months we hired a more experienced developer that would help us to build the platform quicker. When we had the core modules then it was time to work on all the details so we hired 3 junior devs to help us to achieve that. At the end we were 5 developers in the team.

drawing Procurement control module

The tech stack

For this project we used a wide variety of framework and tools. We mainly used Node and React.

  • Front-end
    • Firebase
    • Redux
    • React
    • SemanticUI
    • React router
  • Backend
    • Mysql
    • ExpresJS
    • Jest
    • Heavy math computation using Decimal.JS
    • Sendgrid
    • SAP, Autodesk integrations
  • Other
    • We used microservices when we start facing DB issues and performance issues
    • We built a service in python to work generate pdf files.
    • We used docker for analytics
    • We built custom npm packages for components like Table, utils, logs, etc