Microservices are a new approach to building scalable digital systems as sets of co-operating components running in a cloud system. This course introduces the microservices architecture and its place in building server systems for digital transformation.
The course will include significant hands-on exercises and so it is important that you have some previous programming experience in web or other backend development.
Through a combination of lectures, hands-on programming and some group work, we will be building and deploying a scalable backend system into the Kubernetes runtime on a public cloud.
The programming will be done in the Ballerina language (https://ballerina.io/), which is designed around building microservices.
Attendees will come away with skills and knowledge that can be applied to other programming languages and other cloud infrastructure technologies.
You will learn:
- What the advantages and disadvantages of a microservices architecture are
- How to create synchronous and asynchronous microservices
- How to create DevOps flows for microservices and to deploy services in Kubernetes
- How to expose a cluster of microservices as an API
Online preparation session (via video conference)
1-hour introductory lecture on Thursday 30 April 2020 at 19:00 (UK)
You do not need to attend Oxford or buy any software for this online session:
- Introduction to server-side computing
- Cloud basics
- Using the command-line interface
Pre-course work (2-3 hours max)
- Installing prerequisite software (Ballerina, VS Code, SSH client)
- Set up cloud account
- Get first simple service up and running
- Introduction to Microservices
- Writing a simple data-based microservice
- Testing microservices
- Introduction to containers and orchestration (e.g. Docker and Kubernetes)
- Deploying microservices in a container orchestration system
- Continuous integration in the cloud
- Building asynchronous services (e.g. RabbitMQ, Apache Kafka)
- Using remote APIs/SaaS services (e.g. Twilio and Twitter)
- Creating a complete application
- Finishing up exercises
- Exposing APIs through an API Management system
- Architectural considerations
- Wrap-up and conclusions
Participants who attend the full course will receive a University of Oxford certificate of attendance. This will be presented to you prior to the end of the course wherever possible.
The certificate will show your name, the course title and the dates of the course you attended.
Although not included in the course fee, accommodation may be available at our on-site Rewley House Residential Centre. All bedrooms are en suite and decorated to a high standard, and come with tea- and coffee-making facilities, free Wi-Fi access and Freeview TV. Guests can take advantage of the excellent dining facilities and common room bar, where they may relax and network with others on the programme.
To check prices, availability and to book rooms please visit the Rewley House Residential Centre website.
Standard course fee: £895.00
Fees include course materials, tuition, refreshments and lunches. The price does not include accommodation.
All courses are VAT exempt.
Register immediately online
Click the “book now” button on this webpage. Payment by credit or debit card is required.
Request an invoice
Send a completed application form to the course administrator by email or post. Please do not send card details via email.
Dr Paul Fremantle is the CTO and co-founder of WSO2, where he has created large scale distributed systems for over ten years.
Previously Paul was a software architect at IBM Hursley. Paul has extensive experience in cloud, open source, service-oriented computing, federated identity and IoT.
He is the course leader on Cloud Computing/Big Data and Service Oriented Architecture for the Oxford University MSc in Software Engineering.
Paul has a PhD in IoT Security from the University of Portsmouth, and earned his MSc in Computing and BA in Mathematics and Philosophy at Balliol College, Oxford.
Paul has two patents and has co-authored three books on XML, Web Services and IoT.
Dr David Johnson is Senior Lecturer at Uppsala University, Sweden.
He has held research positions at Oxford University and Imperial College London, and has been a data science consultant for the United Nations.
His work concerns the development of data infrastructure -- data standards and software -- to support data-intensive research.
Please use the 'Book' or 'Apply' button on this page. Alternatively, please contact us to obtain an application form.
Level and demands
- Technical professionals dealing with cloud-based services
- Professional software engineers
- DevOps engineers
- Experience of programming, ideally with server-side systems
- Experience of using a command-line interface
- Knowledge of cloud computing infrastructure
- Required to bring own laptop (software requirements will be provided, or must have root access)
- Minimum 8Gb (16Gb preferred)
- Windows, Linux or MacOS, and access to a command-line
Terms and conditions
Terms and conditions for applicants and students on this course
Sources of funding
Information on financial support