Get your infrastructure from the very first day, and build all the environment on top of it.
Three modules:
I. Mastering your virtual machine
II. Performance testing and monitoring
III. Scaling
This is a 100% practical education track which follows devops approach in it’s root virgin form:
* get backenders closer to infrastructure
* learn operations basics, performance tuning, monitoring and scaling
* and rethink your architectural approach in a more pragmatic, cost-effective, engineering way
First module: learn linux virtual machines management. Students install, build, configure their stack on it - we support almost any application stack (Java, Python, PHP, C#, Golang, node.js) as Large-Scale and Performance topics are general and universal. You will learn basics of linux administration: package management with apt, manual builds environment, systemd services, monitoring and performance analysis with Prometheus and Grafana. We will discuss basics of Linux parallelism, server models, why nginx is blazing fast and better than Apache, why MySQL has better server model than PostgreSQL and how to deal with this. In addition to your favourite application server you will use nginx as balancear and reverse proxy and MySQL or PostgreSQL as database, and Memcached or Redis as cache server.
Second module: learn basics of performance tuning, performance testing and squeeze maximum throughput out of your virtual machine. Our current student "record" is 50K "synthetic" RPS with Golang/Fiber on pretty modest virtual machine. Build latency/RPS diagrams and compare the performance metrics and limitations of your components. Our current swiss-knife is wrk2 but as it's true R&D program we are happy to use any tool which supports client threads and independently managed shared connection pool.
Third module is all about scaling. Your infrastructure becomes larger (several clusters: balancer, apps, cache, databases), and topics are loose coupling, scaling apps and cache layers, database sharding and developing in distributed storage environment, strong and eventual consistency patterns and many others. We will also cover theoretical basics for distributed systems like CAP-theorem (and why pragmatic developers shouldn’t focus much on it).
All the educational path is a chain of practical tasks or labs which students can do asynchronously when they have time, few hours per week is enough. Every week there’s an online sync: Q&A or a practical session or a lecture.
First group starts in September'23. This is a pilot still and the current price comes with decent discount. There will be no “massive” launch. If interested - please drop me a telegram message (
@alexeyrybak) and I will share more details on next steps.
About me: my name is Alexey Rybak, I started my career as backend developer pretty long time ago. Here's my
LinkedIn. I was one of the first employees in Bumble/Badoo, and in 12 years I went from a programmer and startup kamikaze to the head the entire engineering team of 300 people. It’s a multi-billion dollar business with thousands of servers and hundreds of millions of users now. Since then I've worked as CTO/VP for several global companies (for example, I’ve helped Vezet in their acquisition journey with Yandex.Taxi). I do speak at conferences (pretty rarely though) - Percona London/Amsterdam, Highload and others; many elements of this bootcamp in various forms were presented at these events.