Track: Architectures You've Always Wondered About

Location: Ballroom A

Day of week:

Behind every great site stands a great architecture...eventually! Find out how the construction behind some pretty sweet and well-scaled infrastructures has worked itself out with a combination of planning, expertise, dumb luck, and (the secret ingredient) the Tears of Engineers.

Track Host: Chris Slowe

CTO & Founding Engineer @Reddit; former Chief Scientist at Hipmunk; PhD in Experimental Physics

Architecting a Modern Financial Institution

Ever wonder what it would take to rewrite your local bank? With open source, microservices, functional programming (Clojure, Scala), and continuous delivery, right? That's what Nubank did in Brazil, starting with a modern credit card architecture built from scratch, and continuing on to familiar concepts in checking, savings, mobile payments, and beyond. We'd like to walk the audience through the the key elements that make Nubank tick for millions of customers every day, including transaction authorization, messaging infrastructure (Kafka), real time double entry accounting (Datomic), customer and temporal sharding, our analytical environment and the role of predictive models, and some key security decisions we made along the way. You can expect a menagerie of distributed systems, bizarre third party integrations, and humbling lessons learned that may help to explain why bigger banks tend not to attempt this sort of bleeding edge rewrite.

Edward Wible, Founder & CTO @Nubank
Rafael Ferreira, Senior Software Engineer @Nubank

The Anatomy of a Distributed System

Much has been written and said about distributed systems of many different sizes, scales, and complexities. Most of the time though, we either talk about algorithms and theoretical ideas or entirely concrete specific systems: Abstract or Concrete. Gossip, failure detection, and leader election are discussed as if they’re a magical salve that can be rubbed onto a project to make it distributed. But the practical realities of distributed systems are far from straightforward.

In this talk, I will take a new approach, talking through the components and design of a real system, as well as the theory behind them. The system we’ll discuss is built to perform very high volumes of health checks, done across a cluster of machines for reliability and scalability. It’s complex enough that we need to worry about things like gossip, failure detection, leader election, logical clocks, and consistency tradeoffs. We’ll walk through each of the major components, see how they are practically built, and learn about the pain and compromises that each bring.

The audience will leave the talk with a better understanding of how the basic components fit together in a real-world system. With that knowledge, they will be better equipped to approach such projects themselves with confidence.

Tyler McMullen, CTO @Fastly

The Evolution of Reddit.com's Architecture

A stroll through the history of the systems that power reddit.com, looking at things that worked, things that didn't, and where we're going next.

Neil Williams, Leads Infrastructure Team @Reddit

Scaling Slack

Slack is a communication and collaboration platform for teams. Our millions of users spend 10+ hrs connected to the service on a typical working day. They expect reliability, low latency, and extraordinarily rich client experiences across a wide variety of devices and network conditions. In the talk, we'll examine the limitations that Slack's backend ran into and how we overcame them to scale from supporting small teams to serving gigantic organizations of hundreds and thousands of users. We'll hear stories about the edge cache service, real-time messaging system and how they evolved for major product efforts including Grid and Shared Channels.

Bing Wei, Software Engineer @Slack

Monitoring Modern Architectures with Data Science

Much has changed in the three or so decades since simple distributed client/server architectures and so-too have the technologies and industry practices around monitoring. Cloud-Native, DevOps, blue/green deployments, server-less, edge/fog, IoT all fit into a world much better handled by the emerging Artificial Intelligence for IT Operations domain more-so than traditional ITIL/SDLC approaches. Software continues to eat the world. Software automates, defines. The world is "going digital" and it's quite exciting -- but this always-connected from-everything to-everywhere world does add complexity to software systems and this talk will dive in to some of that complexity and how modern data science and algorithms are being applied to "fight machines with machines," so to speak.

Dave Casper, CTO @Moogsoft

Last Year's Tracks

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.