QCON London 2019
I got the opportunity this year to attend the QCON London conference, ran my InfoQ, and would absolutely recommend it to anyone interested or working in the software engineering industry, that’s proficient with technical language and subjects. Most talks were aimed at a general wider audience, from engineers to CTOs, with abstract high-level material, rather than getting too down and dirty with the technicalities of specific languages or frameworks.
Favourite Talks
MATURE MICROSERVICES AND HOW TO OPERATE THEM (Financial Times)
The opening keynote for the conference, which covered how the Financial Times were able to shift the organisation to deliver changes faster, with less impact (smaller blast radius) by shifting to micro-services, and allowed engineering teams to take autonomy of what they built.
Airbnb’s Great Migration: Building Services at Scale
This went through Airbnb’s migration from their monolith, the monorail, to micro-services using Kubernetes,. Some key points were about the technical approach, from starting at the persistence layer and working their way up to presentation. As well as the shift in their organisation structure, and how it enabled them to go from releasing every few weeks to thousands per a year, and how it enabled them to scale work for a huge growth in engineering teams.
An interesting approach I had not seen before was the use of a diffy environment, where requests were put through both an old and new version of a service, and the output compared to spot regressed behaviour.
Real World Examples of FaaS (CloudFlare)
A look into how people are using CloudFlare Workers, which allows functions as a service (FaaS), where you can upload simple JavaScript to perform request-response operations. This has already existed for years with products such as Amazon Lambda, but it was interesting to see CloudFlare customers using this slightly different implementation for building sites, or as a proxy for JWT authentication.
Progressive Delivery
The new buzzword on the block, as the next frontier after continuous delivery to smoothly roll-out changes in a high-cadence environment. Covering canary releases, A/B testing and feature toggling. Even though I’ve already used those techniques in real production environments at large, my main take-away was at how we as engineers can sell them to the business, so they gain confidence in shifting a cultural change towards faster releases. A key point was how a traditional ITL process has a lack of empathy for both teams, and more importantly, our customers.
WebAssembly and the Future of the Web Platform
An exciting look into how WebAssembly is going to change the internet.
What Lies Between: The Challenge of Operationalising Microservices (Tesla)
Colin gave a good insight into how Tesla is successfully using Kubernetes in a mechanical environment, for energy, at scale, and some of the important lessons learned. These include storing KPIs/metrics of services into a time-series database for observability, handling failure in business logic and use exponential backoff for erroneous requests to prevent a cascading failure (due to overloading an unhealthy service with too many requests). An important point was made about how observability, as a term, is being abused in the micro-service world, and how it can be used in its original definition from control theory.
Develop Hundreds of Kubernetes Services at Scale With Airbnb
A fantastic extension to the first talk by Airbnb, that went into much more technical detail about how they’ve actually implemented Kubernetes. They’ve got hundreds of services, with deployment configuration living with the code. However they’re using Python scripts to refactor such configuration, at scale, in order to roll out regular security updates. Their scripts also create generic templates for new services. And such scripts have automated integration tests, which are routinely creating and deploying new projects to ensure they work.
Raw Notes
Not guaranteed to mean much, but can be found here.
Comments