Developing Robust Software for an Engineering Firm
For businesses that provide complex and highly-specific work, having a system robust enough to match their workflow without being cluttered or overwhelming is important. Mid-State Engineering & Testing is one of those businesses. We set out to improve their operations by upgrading them from a Microsoft Access database circa 1995 to a cloud-based, CRM-like system meeting all of their original needs without sacrificing ergonomics.
Mid-State Engineering & Testing is a business specializing in Civil Engineering. A large portion of their work includes taking on-site samples of mortar, grout, concrete, etc. to then be stress-tested. After crushing the samples, they return to their clients with information on the samples and the land on which the client often wishes to build.
Due to the unique nature of their work, their original database was quite difficult to interpret. To someone without experience in their field, parsing information out of the Access database was almost impossible without consulting the client to better understand their terminology and workflow. This, on top of the innate difficulties of working with an Access database from over 20 years ago, put a fair portion of the work at the front of the project.
Understanding the workflow
When a client hires Mid-State Engineering, a contractional agreement is written and signed. Workers are then sent on-site to extract samples using various specialized drills and augers. The samples are then taken back to the lab to be stored for stress-testing and logged in the worker's log-book.
After a month's work is completed, the owner goes through the various log-books and enters the data into the system. When all data has been entered, the office manager goes through to send invoices and manage payments. With a better understanding of their process, we set out to create a platform that would cut idle time without disrupting the workflow they've come to know.
Creating a New Software Platform
After analysing these issues, we worked with Mid-State Engineering to develop a new platform to fit their requirements. Our goal was to develop something that could meet the needs addressed by the original system while also implementing solutions to problems outside of the Access system's scope. We soon recognized that a system similar to the one we developed for The Lawn Builders would fit their needs nicely.
For starters, Mid-State Engineering has two locations: an office in Columbus, NE and an office in Kearney, NE. Each location's data was housed locally, as not to cause confusion between the branches. This meant, however, that the owner would have to travel between the two locations in order to work with the data of both offices. To address this, we added functionality in our cloud-based system to allow the data of both locations to be accessed from anywhere by any administrative users, while simultaneously keeping the data separated by location for any regular users.
Another improvement our system offered was organization. Their original system's limitations required them to house all of their various types of services inside one data-structure. To add the proper work to a project required extensive searching within the list of potential services. To help save time, we added a modular categorization system that allows users to add pre-set work types to a project, thereby drastically cutting down the time spent.
CRM & Invoicing System
The CRM piece is the core of both new and old systems. Mid-State Engineering's original Customer Relations piece was one of the most important features, therefore we stayed as close as possible in customer data structures as not to cause problems with porting the data over from one system to another.
When creating the invoicing system, it was important to Mid-State Engineering that their clients were not confused by a new format for their billing and invoicing. To accomodate this, we developed a pdf formatter in HTML that replicated the original system's invoicing layout while also adding new features for clarity and legibility, like alternating shading for listed items.
Extracting and Importing Customer Data
One of the biggest challenges was moving the customer data from the Access database to the new system we developed. With such a large customer database, manually moving this data would have taken months. After some trial and error, we were able to export the Access database into Excel, and then export the Excel sheet to Comma Separated Values, or a CSV file for short. From the CSV, we were able to process the data into our format and import it into the new database.
Views from new software
If you are interested in a similar solution, contact us.