Track: Distributed Systems War Stories
Day of week:
Distributed systems are notoriously difficult to build. Asynchrony and partial failure make our job as implementers challenging. But even after we’ve developed and deployed our applications unforeseen scenarios may occur and challenge all of our assumptions. In this track we’ll share stories of surviving the unexpected with an emphasis on analysis and knowledge sharing.
by Kiran Bhattaram
"It was a dark and stormy night; the rain fell in torrents — except at occasional intervals, when it was checked by a violent gust of wind which swept up the streets (for it is in London that our scene lies), rattling along the housetops, and fiercely agitating the scanty flame of the lamps that struggled against the darkness.”
This sentence exhibits so many writing antipatterns that it's inspired an entire literary competition for terrible opening sentences. It's complicated...
by Jordan West
Data Infrastructure Engineer @Apple
As distributed systems builders it is in our best interest to understand the theory underpinning our work and to learn from the research in our field. For many years, academic papers have provied the practitioner with an avenue to accomplish these goals, providing solutions to hard problems and defining the limits of what is possible. But implementing the system or algorithm described in a paper or applying those theoretical limits to an implementation is not a straightforward process. It...
by Tyler McMullen
Load balancing is something most of us assume is a solved problem. But the idea that load balancing is "solved" could not be further from the truth. If you use multiple load balancers, the problem is even worse. Most of us use "random" or "round-robin" techniques, which have certain advantages but are highly inefficient. Others use more complex algorithms like "least-conns," which can be more efficient but have horrific edge cases. "Consistent hashing" is a very useful technique, but only...
by Jeff Hodges
Let's Encrypt is the first the non-profit, open source, free, automated certificate authority that's issued over 10 million HTTPS certificates in its first year. This talk is a run down of the tradeoffs and designs that Let's Encrypt shipped with and how the social systems around it impacted those decisions.
by Haley Tucker
Senior Software Engineer, Playback Features @Netflix
Imagine a world where you do everything within your power to ensure the code you are pushing into production is as ready as possible to take traffic. You have thorough test coverage, you push out canaries, and you use push windows. You have truly operated your microservice in a top-notch way. And then all of a sudden...CPU spikes, GC churns, latency increases, you start spewing errors...enter sad Netflix customers.
This talk will explore ways in which behaviors of other systems result...
Monday Nov 7
Architectures You've Always Wondered About
You know the names. Now learn lessons from their architectures
Distributed Systems War Stories
“A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable.” - Lamport.
State of the art in Container deployment, management, scheduling
Art of Relevancy and Recommendations
Lessons on the adoption of practical, real-world machine learning practices. AI & Deep learning explored.
Next Generation Web Standards, Frameworks, and Techniques
Keeping life in balance is a challenge. Learn lifehacks, tips, & techniques for success.
Tuesday Nov 8
Next Generation Microservices
What will microservices look like in 3 years? What if we could start over?
Java: Are You Ready for This?
Real world lessons & prepping for JDK9. Reactive code in Java today, Performance/Optimization, Where Unsafe is heading, & JVM compile interface.
Big Data Meets the Cloud
Overviews and lessons learned from companies that have implemented their Big Data use-cases in the Cloud
Lessons/stories on optimizing the deployment pipeline
Software Engineering Softskills
Great engineers do more than code. Learn their secrets and level up.
Modern CS in the Real World
Applied, practical, & real-world dive into industry adoption of modern CS ideas
Wednesday Nov 9
Architecting for Failure
Your system will fail. Take control before it takes you with it.
Stream Processing, Near-Real Time Processing
Bare Metal Performance
Native languages, kernel bypass, tooling - make the most of your hardware
Culture as a Differentiator
The why and how for building successful engineering cultures
//TODO: Security <-- fix this
Building security from the start. Stories, lessons, and innovations advancing the field of software security.
Bots, virtual reality, voice, and new thought processes around design. The track explores the current art of the possible in UX and lessons from early adoption.