Ocado has expanded its relationship with Google to use Compute Engine for its warehouse robotics applications, as the retail delivery and logistics outfit seeks to move more of its production processes into the public cloud.

Ocado has been a Google customer for a number of years and is one of the only IT vendors that the company deals with directly. Unlike most firms, Ocado develops nearly all of its IT in-house, employing an army of 340 developers to build and maintain its systems. Other than Oracle databases, operating systems and developer tools the only off the shelf software used by Ocado is the Google Enterprise technologies.

"Right the way from the web shop and mobile apps, through all the middleware, right down to the low level control systems that drive parts of the warehouse, and even everything in between, it is all written in-house," Ocado's head of IT, Paul Clarke told ComputerworldUK.

Ocado's main data centre is at its headquarters in Hatfield, just outside of London, and the firm has smaller server rooms in its new Dorden warehouse. In these warehouses goods are packaged and assigned to delivery to different parts of the UK, before being sent out for delivery by van, or to other smaller distribution centres. The warehouse control systems used for Ocado's logistics operation are all written in Java, with some C# on top of middleware such as Apache ActiveMQ. Simulation, mathematical modelling and optimisation systems for its warehouse IT are also developed in-house.

Knowing that almost every line of code is owned by the company is crucial due to Ocado's "unique business model, and allows the firm to run a 24/7 operation without worrying about external providers to ensure high levels of system availability.

Ocado's technology, which supports all aspects of goods delivery from retailer to customers, is seen as the company's main selling point, and its IP is central to its recent deal to deliver on behalf of supermarket Morrisons. There have also been suggestions from analysts recently that Amazon should look at buying up the logistics provider in order to support it own forays into selling groceries in the US.

According to Clarke, the relationship with Google is helping enable the firm to continuing its growth, and support its ambitions to move into new markets abroad by moving more of its systems into the cloud.

"We have made it clear we have aspirations beyond these shores, and that the reason we have invested so much in building our own IT solutions is to be able to do what we do in other countries," he said.

Ocado has been an early adopter of Google software for a number of years, starting when the firm began developing an application on Google's Android platform. Ocado soon began using Google's other productivity tools, and was an early user of the Apps tools in 2010, replacing its Microsoft Exchange system.

"We were looking at a cloud-based alternative for email and document sharing, as well as wider collaboration," Clarke said. "Google was the obvious choice to us, and we became an early adopter of Google Apps in the UK at a large scale."

More recently, Ocado has also begun using Google's Enterprise cloud tools. This includes Google's Big Query, used to deal with the masses of data generated and analysed within its operations (Ocado churns through 2.5Mb of data every second), as well as using App Engine for internal development.

"We are also looking at using a search appliance tool," Clarke said, "there is not a lot of the Google product estate that we don't use in one way or another."

The company has also begun using the recently launched Google Compute Engine. This provides infrastructure as a service capacity for certain highly compute intensive applications within its warehouse. Although Clarke is unable to provide details of all the areas that Compute Engine is currently being used, he revealed that one of the main applications currently being powered by Google's public cloud as part of its evaluation is the image processing for its warehouse robotics.

"We have a robotics and 3D vision team who are developing robotics applications for the business and those robots need to be able to see what they are doing," he said.

"However our robotics challenges are different from most companies', so we have had to develop those vision systems in-house. The applications are also very computationally intensive, so we needed a scalable platform for doing that."

Following this, there are plans to bring other production systems onto Compute Engine in the near future. Ocado is also attempting to run its internally built analytics platform into the cloud, and Clarke expects this to be the first major enterprise application to run in production in the cloud, and is writing a new version of the application for use in the cloud with this purpose in mind.

"That will be one of the first production applications that will get moved to the cloud platform, this analytics 'funnel'.

Probably the most important use is to be able to expand internationally however.

"It means that we could start up an operation in another country without necessarily having to build local data centres - we could put parts of our estate in the cloud and make them available locally via the cloud."