Launching the KeepTruckin Engineering Blog

Welcome to the inaugural post for the KeepTruckin Engineering Blog. This comes at an exciting time for engineering at KeepTruckin, and I want to set the stage for posts to come by reflecting a bit on our history and our mission to connect the world’s trucks.

First, a bit of background on the North American trucking industry. You’ve probably heard the analogy that trucks are the backbone of the American economy and it is a fitting comparison. Each day, millions of trucks traverse roads across the continent to deliver the goods that we depend on. The vehicles that carry those goods are surprisingly disconnected and inefficient considering how important they are to the day-to-day operations of nearly every industry.

Most fleets consist of fewer than 10 trucks, and many are just a single owner-operator, meaning carriers are highly fragmented. Distributing a product to a large portion of these fleets presents a daunting challenge, but the possibilities that are unlocked through their coordination are compelling. This is one of the main factors that drew me to trucking — the opportunity to dramatically improve the way business is done with technology.

KeepTruckin’s First Steps

Our first product launched in December of 2013 and was a free mobile app for long-haul truck drivers to track their hours of service. It was an alternative to the paper logs they had been using for decades and greatly simplified the whole process of compliance with the federally mandated driving limits that regulate commercial vehicle operators. There was also a companion web-app that fleet managers could use to keep up with their drivers’ logs in real time.

It sounds pretty straightforward as far as mobile/web services go and it was. There were some challenges around supporting offline mobile devices and the resulting synchronization issues but the system generally wasn’t very complex. However, it did solve a universal problem for all long-haul drivers in an easy-to-use way that they loved. Importantly, it would also become a crucial distribution advantage for us later on. The whole platform ran on a pair of modestly sized EC2 instances and a PostgreSQL database for many years despite serving over 100,000 highly active drivers and their associated back-office personnel.

Gathering Feedback

For about 2 years, we paid close attention to what drivers were saying and focused our efforts on developing the features they found most useful. We let product usage grow naturally — fueled primarily through word of mouth and our excellent app reviews — while quietly monitoring federal lawmakers as they geared up to pass the Electronic Logging Device Mandate.

We had been following developments in Washington, DC, since founding the company and were expecting the pending legislation to facilitate a massive shift in connectivity that would bring commercial vehicles online for the first time. Our mission to connect the world’s trucks depended on Congress passing the law and we had to be ready when the time came. “Being ready” for us meant having a compliant product, tested and ready for sale, well in advance of enforcement, as well as having the target customers and systems in place to distribute that product efficiently over a short period of time. We had a lot of engineering to do.

Diving Head-first into Hardware

Number one on the to-do list was building a compliant product and that meant introducing a hardware device to our stack. During the second half of 2014, we went through a lengthy build vs. buy exercise where we evaluated a number of off-the-shelf devices before ultimately deciding that having complete control of the entire stack was critical to realizing our long-term vision. This was a difficult decision to make given that no one on the team had any experience whatsoever with designing or building hardware devices. It would have been much easier in the short-term to purchase something and focus on the software, but the inflexibility, and third-party dependency, over the long-term could lead to huge setbacks. Generic hardware from respected companies like Digi, MDI, and Calspan had limited system resources, predefined integration points, and restrictive development tools.

So we bootstrapped a hardware/embedded engineering team and, one year later, we had the most powerful telematics device the industry had seen, in-hand, and ready for integration with our existing mobile app. By the end of 2016, we had developed a complete system which was installable in 5 minutes and that drivers could use immediately with their KeepTruckin logbook app. Mandate enforcement was set to go into effect on December 17, 2017, and we had a product about a year ahead of time. We were ready to start distribution and had a substantial user-base of fleets to turn to first.

Meeting a Growing Demand

The next year was truly amazing to experience. All the work we put into making the app attainable and ideally suited to our customers, as well as the substantial forward investment in our CRM and operational systems, really paid off. We couldn’t build the hardware devices fast enough as fleets prepared for the regulatory change. Backorders were inevitable and we had to work hard to ramp up manufacturing capacity with our contracted partners. Everything was going great right up through ELD Mandate Eve — December 16, 2017.

I woke up much earlier than planned on the 17th — alerts on my phone were firing almost continuously — we were completely down. We knew many customers were waiting until the last minute to start using their ELDs and had anticipated a surge in new device activations, but the amount of traffic we received that day blew away our estimates. It turned out that a large fraction of the unactivated devices had been installed in trucks all along and were accumulating operational data but no one had ever bothered to connect to them to bring that data upstream. When they finally did connect, we were inundated with months of data from tens of thousands of vehicles, and the back-end simply couldn’t keep up. It took the entire day to stabilize and scale up while our support team dealt with the onslaught from irate customers. It was not our finest moment and remains the largest outage we’ve had since the inception of the platform.

Looking Forward to a Bright Future

Today, our infrastructure has evolved in almost every way and we now utilize a vast suite of AWS services within our platform. Our EC2 compute requirements have gone up at least 100X since the beginning of 2017 and storage usage has increased by substantially more than that. Our engineering team has grown over that period as well, and core competencies now extend well beyond the server/mobile/web/embedded/QA teams of our beginnings to include experts in the fields data science, data engineering, machine learning, and computer vision.

Similar to our infrastructure and team, the scope of our product capabilities have expanded dramatically since the launch of our first generation ELD. We’re now on our 6th generation hardware device and have over 250,000 IoT-enabled ELDs roaming North America. Each one is a powerful mobile sensor array that, combined with the driver’s hours of service record, tells the story of that vehicle’s operations. The stories they tell are fascinating and, when aggregated, paint a picture of how freight moves around the continent.

I’m extremely proud of the team that has assembled and the platform we have built together — but this is just the beginning. We have reached some important milestones and solved many problems along the way, but there is so much more we want to do. KeepTruckin announced its plans for Building the Future of Freight and we have already begun executing on the next set of goals.

Stay Informed

We’ll use this blog to discuss solutions we have developed for the current platform, decisions we made along the way, and how we’re pushing forward to evolve into the future. I encourage you to follow along and join us for the ride. We’re hiring engineers across all of our teams and would love to see your contributions as we connect the world’s trucks. KeepTruckin!