Auto Trader has come a long way since it was propping up The Guardian's revenues and gracing magazine racks. The company has gone through a digital transformation since it was sold by the Guardian Media Group in 2014, focusing on web development and data science talent to boost its digital platforms.
Since then it has continuously developed apps like its personalised MyAutoTrader customer portal on top of MongoDB's commercial NoSQL database, and is starting to leverage its data and machine learning capability to benefit customers.
More than a dozen Auto Trader applications are already live on MongoDB, and the company releases hundreds of code changes into their live system every week, with 98 percent of these deployed automatically.
Auto Trader has a data science and insights team of thirty people, and is currently building a new MongoDB cluster to store derivate data - for example, the year a specific model of car was manufactured. Having a database capable of recognising this ensures customers are being delivered accurate valuations.
"One way we are doing this is by making algorithm-based data decisions around the value of a car, and also introducing machine learning to help understand differences between features [like a satellite navigation system], and also recognise data which may not necessarily be a tangible feature," Mohsin Patel, principal database administrator at Auto Trader told Computerworld UK.
"We have to teach our systems depending on what features a car might have, or what derivate of a car the customer is viewing as the price could differ, and that's where the [machine] learning comes in."
The benefit of NoSQL here is in adapting the data quickly. Instead of adding a column to a cumbersome relational database, the team can dynamically change the schema if a new model of car comes onto the market.
Auto Trader is still primarily an Oracle and SQL Server shop, but increasingly uses MongoDB's NoSQL database for application deployment. Back in 2011, after experimenting with the community version of MongoDB, AutoTrader launched a widget for saving adverts to MyAutoTrader.
"Within a year or two it became a mission critical application and tool for us," said Patel.
Auto Trader went from a couple of servers on one cluster to between 30 or 40 nodes across six or seven clusters as the applications team came to rely on the technology.
"We are primarily an Oracle house but we are seeing a shift for newer apps. Choosing MongoDB over Oracle comes down to the ability to quickly change the data and schema, so we are probably split 70-30 SQL to NoSQL," he said.
One app that MongoDB allowed Auto Trader to deliver is a new geospatial lookup. Previously when vehicle retailers received analysis on customers searching in their area, Auto Trader would do a postcode lookup in Oracle "but we were finding the accuracy wasn't there", says Patel.
Once they realised that the more detailed Ordnance Survey maps data was publicly available in JSON they put that into MongoDB to improve the accuracy by twenty percent. This is especially important now that vehicle retailers are receiving location based reporting from mobile devices.
Auto Trader has also built out its own deployment API called Shippr on top of MongoDB. Instead of using a third party container provider like Docker the company decided to develop its own deployment API for applications and infrastructure code. Patel said: "We feel we are best placed to make decisions over our architecture."
This allows the company to deploy new applications much faster through a repeatable deployment process, without the infrastructure team having to manually prepare unique infrastructure code for each project. "We try to get to a situation where our app code gets packaged up with that infrastructure code, so everything gets built together as an application set," Patel says.