A little bit of background about myself: I’m Ryan and I’m a graduate fresh from Imperial College London. This is the story of how I moved from intern to full-time at Ocado Technology. If you’re looking for placements or first jobs, I hope you’ll find it useful.
The preparation and interviews
I came across Ocado Technology when I was thinking about whether to apply to banks or technology companies for my placement. After researching, I found out that Ocado develops all their technology in-house. So I thought it would be somewhere interesting to learn and work for four months.
Having gone through an initial CV screening and an online coding test, I was invited for the assessment day which included a written test and two rounds of interviews. I was also shown round the warehouse, AKA the ‘CFC’ (Customer Fulfilment Centre). It was fascinating to see the huge automated system in action.
After a few days of waiting, I was offered the internship.
Among a great number of technology teams, I was assigned to the CFC Simulation and Flow Analysis team. They’re responsible for developing discrete event simulation models of the CFCs.
The purpose of the simulation models are: capacity prediction; constraint identification; design appraisal; return on investment calculation; as a test-bed to develop algorithms; and to conduct ad hoc studies.
In addition, the team has written a three-dimensional visualisation tool with animated totes, allowing simulation runs to be visually reviewed (which I personally found it really cool).
There were three projects that I worked on during my placement:
- The first was to use Python and Django to build a light-weight web app that constantly reports the status of the simulation models.
- The second was to build a routing implementation for the simulation models. The aim of this project was to create a graph-based routing implementation to analyse how the totes inside the warehouse can be routed in the most efficient way.
- The third was to use the power of the Google Compute Engine to run multiple simulation models on numbers of virtual machine instances simultaneously. This meant a set of optimal constants for the cost function in the previous project could be found more efficiently by comparing the simulation model results.
At the end of the placement, all interns had a chance to show off their work to engineers at the interns’ fair. It was a really good opportunity to listen to professional comments and share our views on the projects.
Here’s what I learnt
First of all I consolidated my programming skills from university in Java, and I learnt Python which I had never used before.
Alongside the technical skills, I was also able to learn how the real technology industry does software engineering, how the software actually gets delivered in production, and how the teams collaborate.
Working with a team of professionals was a valuable opportunity for a university student. It was great to receive feedback and comments from engineers specialised in different areas.
From intern to full-time
So, how can you ensure an offer after your internship? I don’t have a definite answer but, in my opinion, there are a few points that are important:
Firstly, you must ask questions – the more questions you ask, the more you understand the task. And people here are extremely helpful and friendly. So don’t be shy to ask anybody.
Secondly, you mustn’t think you are not good enough for the role, because interning is all about learning. People don’t expect you to know everything. So always be positive and enthusiastic about what you are working on.
Now, here I am, working as a software engineer at Ocado Technology. I’m currently in the Back End Web Development team, where we develop and maintain the applications that are used for ocado.com and internally.
To be a developer somewhere I interned is quite an advantage because I’m already familiar with the environment and culture, which has allowed me to get stuck in very easily.
I would definitely recommend Ocado Technology if you’re the kind of person who loves challenging yourself and would like to contribute to future web development. I believe you’d be fascinated if you knew what Ocado Technology is planning to do in the future…
Ryan, ex intern and current software engineer