We’re here! Let’s set up a strategy session!
Let us help you get started on the right path.
1645 E Hwy 193, Suite 103
Layton, UT 84040
Layton, UT 84040
CrewTracks partnered with Guru Technologies to create an all in one solution for construction companies. CrewTracks is known for its time tracking portion but is so much more than that. From time tracking to production, digital fillable documents to notes and photos, CrewTracks is the go to solution for effective construction management.
CrewTracks came to Guru to help build mobile and web apps for construction companies to use. These apps were built to allow companies to manage their field crews. Guru Technologies built the web app, the mobile apps, both Android and iOS, as well as the cloud databases and infrastructure for handling multi-tenant in one system, with high security, scalability and redundancy requirements.
Over the course of development, we’ve written automated test suites to help catch regressions, and CI pipelines to run the tests automatically and deploy the CrewTracks application. We also set up CI/CD pipelines to utilize infrastructure-on-demand for provisioning testing server resources. On the mobile side, we have established a process for distributing work-in-progress app builds to the product team in order to facilitate a tight feedback loop.
As part of our sprint cycle, we release updated versions of the CrewTracks mobile apps every two weeks. We’ve implemented a feature flagging system with LaunchDarkly that enables us to deliver completed portions of work-in-progress features and gradually roll out completed features.
To adapt to the evolving tech landscape and facilitate long-term maintainability, our team at Guru Technologies has upgraded the CrewTracks technology stacks across all platforms. For Android, we moved the software from Java to Kotlin (piece by piece until no Java code remained), enhancing app safety and efficiency, and integrated Google’s Compose UI for streamlined UI development. In iOS, we transitioned from Objective-C to Swift in a complete rewrite, utilizing SwiftUI for its expressive syntax and responsive layout capabilities. On the backend, we moved from CakePHP to Angular and C# / .NET, combining Angular’s dynamic single-page application framework with .NET’s scalability and security. These updates ensure that our client’s technology remains cutting-edge, efficient, and robust.
In our mission to replace paper timesheets and other paperwork with real-time data entry, we encountered a couple of challenges: one, multiple users may be working on the same report at the same time, and two, some users may not have Internet access at their job sites. To solve these issues we designed a robust data synchronization system, including full support for offline work and a conflict resolution system that can resolve incompatibilities between different users’ input without requiring their intervention. We designed the mobile apps to automatically sync data with the server as soon as the device has an internet connection, even if the app is in the background, so that the mobile app users don’t have to remember to submit their data after leaving the jobsite and returning to an area with WiFi or cellular coverage.
The app is also built to function offline for an extended period, store and forward changes, and deal with changes coming from other offline users, as well as providing smart conflict resolution once all devices are back in sync and online, including changes from multiple sources on the same dataset.
This includes both many different kinds of data, such as standard data changes, documents, BLOB data, images, JSON data, etc. Change objects are created with point-in-time vector data in order to help the device synchronize properly when back online.
Recognizing the ongoing reliance on paper-based processes in construction, we engineered a sophisticated document management system within CrewTracks. This system includes a complex data structure linking resources to their respective documents, coupled with a versatile document editor accessible across all platforms, iOS, Android, and web.
Our system allows for users to add annotations to documents or fill out custom forms, which could happen multiple times per day on multiple devices or systems (including the same document).
Instead of creating a copy of a PDF file for each time it’s filled out or otherwise modified, we were able to save a significant amount of storage and bandwidth by saving the form data and annotations separately in a JSON format. This JSON is run through our synchronization system, which also allows for real-time collaboration, and even enables multiple offline users to edit the same document at the same time and get automatic conflict resolution where needed.
To address the distinct needs of different kinds of CrewTracks users, our team crafted various user interfaces with tailored complexity levels. For the Time Clock feature, we designed a straightforward and user-friendly interface for employees, ensuring ease of use for essential time-tracking functions. In contrast, the UI for administrators and Crew Leads, and Foremen was more comprehensive, offering advanced functionalities and detailed controls to manage and oversee timekeeping effectively. Throughout this process, our UI designs adhered to the CrewTracks theme and were developed through an iterative feedback loop with the product development team, ensuring they met both the simple requirements of employees and the intricate needs of administrative staff.
An important aspect of tracking the progress on a construction project is keeping track of the number of units completed for a given work item and where the user is at in a given budget. For example, for a concrete company, they have a budgeted amount of cubic yards of dirt to be moved, and a certain quantity of concrete to be poured. For a drywall company, they have a certain amount of square footage of drywall, etc. Also important, is to check the efficiency against a project bid or estimate. For example, a crew might be budgeted to be able to pour 8 cubic yards of concrete with 16 man hours, so an efficiency metric might be 0.5 cubic yards/hour of labor. We built a sophisticated system to take construction bid and estimate data and show in real-time how a company is doing against a given bid or estimate.
In order to help companies prevent time clock fraud, we implemented GPS tracking features to verify that users are at the job site when they clock in or out. We also made it so that when mobile app users take pictures of the jobsite as part of their report, the app can associate the user’s current location with that photo so that the office staff has that context with the photo. We made these features optional, so each company can decide whether to enable this tracking or not.
There is a sophisticated system to allow for signatures from field crews for confirming daily timecards, reporting on any injuries, and signing off on any necessary disclosures. These can be customized based on the needs of the companies. Custom forms can also be created with signature fields that can be added anywhere needed on given documents.
CrewTracks has a specialized integrations team dedicated to managing unique customer data requests and specific data presentations. Our developers at Guru Technologies collaborated closely with this team to enhance the main app with a custom dashboard, create API’s, and lots of reports and import/export controls. This addition seamlessly integrates with the tailored solutions provided by the integrations team, streamlining the process for customers to access and retrieve specific data sets.
We implemented push notifications and email notifications in order to facilitate communication between users and help them keep track of operations. We set up a flexible system that can trigger notifications in response to a variety of events, such as clock-ins and report submissions, and route users to the appropriate page when the notification is opened. We also made it so each user can go back and see their notification history and control which notifications they receive.
Guru Technologies’ development of the CrewTracks apps for CrewTracks successfully addressed the complex needs of construction companies. Our focus was on creating a user-friendly interface for both web and mobile platforms, which simplified data management and improved field crew coordination. Key achievements include implementing offline data synchronization, developing a sophisticated document management system, and integrating GPS for accurate geofencing. Our approach combined continuous dialogue with the product team and agile development methods, ensuring CrewTracks not only met current requirements but was adaptable for future updates. Technological advancements were a hallmark of this project, with transitions to Kotlin for Android and Swift for iOS, and from CakePHP to C# / .NET, and the establishment of continuous integration and deployment pipelines. CrewTracks represents Guru Technologies’ commitment to delivering practical, efficient, and scalable solutions, demonstrating our ability to convert complex challenges into functional and user-centric applications in the construction sector.