Tech Training @ ASOS
Four years ago, ASOS mapped out a number of key directions of travel in relation to future tech challenges we faced. Fresh off the back of a recent move to micro services and micro frontends, there was general agreement that we needed to do help our investment in Microsoft Azure go further. A key component was moving toward containerised application development, testing and deployment. Although not a new or original idea, containerisation was not widely used in ASOS so it brought with it a number of distinct challenges, especially around complexity and skillsets.
ASOS have always invested in learning and development, running popular internal courses such as Software Crafters for example. However, right from the start of the shift to containers, it was recognised that moving towards something like Kubernetes was a fairly steep learning curve. So, we adopted a principle that everyone getting involved should have access to a solid set of training courses and learning material as a prerequisite for going into production.
We engaged with our strategic partner Microsoft to help us figure out what training material was available, how it might need to be delivered and who could deliver the training to potentially hundreds of engineers.
After a bit of back and forth, an outline training plan emerged that included the following topics:
- .NET Core (we use .NET a lot)
- Azure Kubernetes Services (AKS)
- CI/CD pipelines with containers
The team at Microsoft then used a combination of existing material and custom material to put together a series of training packs to be used by ASOS colleagues to deliver training to fellow ASOSers.
Winter boot camp
Over the next few months, a group of 25 future trainers from ASOS attended the Microsoft Thames Valley campus to receive the training, suggest amendments and crucially to understand the material enough to be able to talk about it confidently to a classroom. It also gave everyone a chance to try out the labs (hands on learning parts of the course) and think about how they would support people doing the labs and asking questions.
The future trainers were drawn from our DevOps and engineering teams and across a mix of experience. Most had never delivered a training course so we also ran several Train-The-Trainer sessions to give everyone a bunch of tips and tricks on how to present confidently.
Time to fly
Once the courses were delivered by Microsoft, the next step was to market the courses internally, get some courses scheduled and sign up everyone who needed and/or wanted the training.
Courses were classroom based initially and were ran from our HQ location in London. We normally had 2 trainers for roughly 12 trainees to try and make it easy to handle questions, support setup issues and handle other unexpected events.
The courses were all very well received and through a custom form, we gathered lots of useful feedback on the course that allowed us to tweak as we went. Over time, the courses all flowed better and occasionally changed focus as we worked out what was the most important content. we quickly looked to store our training material in GitHub so that we could get the benefits of source control and allow multiple people to easily contribute to the material.
Training in a pandemic
Courses took place constantly throughout the next 18 months until Covid hit. So as everyone adjusted to the new reality of working from home, training took a back seat while ASOS regrouped and the training team had to adapt to delivering courses remotely. We also took time out to work with Microsoft to refresh the material and bring it in line with new features released since the material was first produced.
It took quite a while in the end to regroup as we also lost key individuals from the training team. But we dusted off and recruited some new trainers, before “shadow training” the new people by getting them to sit in on a running course and possibly even delivering modules (if they were feeling confident).
Training is still run monthly and overall the move to remote training was so successful, it is now the standard delivery process and will remain so as ASOS has adopted a hybrid working pattern.
What did we learn?
Running a volunteer training programme is hard work. It requires constant nurturing and management as you try to balance the needs of trainers, trainees, teams and deliverables against the demands on people’s time.
Having a good partner helping to provide content is great, especially when it is time for a refresh. Microsoft have great people who are passionate about providing really clear and concise material. Of course we also put our own touches to the courses to give it an ASOS look and feel. We have also gone on to produce our own fully created and curated course on how to use our in-house deployment pipelines for creating AKS clusters. We will be blogging more on this in the future — stay tuned!
Here are some tips on running a course:
- Remote training is mentally tiring - shorter days with plenty of breaks help
- Schedule courses over a decent period of time so people can plan ahead for the time away from their main work
- Plan who will deliver each course and how many trainers you need
- Agree who is the lead trainer / course lead
- Send out invites with links to anything needed
- Ensure prep is done for course by attendees
- Set up the room (virtually or otherwise)
- Deliver the course
- Gather feedback
- Update content with new patterns/practices figured out and adopted as time went on
- Do it all again!
How did we do?
As with any initiative, it is essential to be able to measure success. Each course uses a short survey to gather feedback and this lets us gather some decent metrics to inform decisions. For March 2021 to March 2022, we have 4 headlines stats:
- 36 courses run since 2021
- Over 30 contributors to the content internally in ASOS
- 133 unique people trained from 2021 until now
We also use comments on courses to adjust whenever we find an opportunity to improve.
ASOS is continually growing. We have new engineers starting all the time and teams are adopting containers at an accelerated rate. We have a new setup now in Northern Ireland as well as in London and Birmingham, plus we are dipping our toe into remote working with colleagues outside the UK.
Training is more important than ever and to help manage the portfolio, we have introduced an Engineering Trainer role to ASOS. This is in recognition of the essential fact that technology is fast and we all work in an industry where continuous personal development is crucial.
ASOS is hiring across a range of roles, see our open positions here. We’d love to hear from you!
I’m Tony Gorman, one of the Principal Software Engineers at ASOS. I work across multiple teams on the front-end apps, integration tech and back-end commerce APIs that enable our shopping experience. I also train most of the courses above.