Building a Better Web
June 11–12, 2018: Training
June 12–14, 2018: Tutorials & Conference
San Jose, CA

Help! I accidentally distributed my system!

Rachel Myers (Google), Emily Nakashima (Honeycomb)
9:00am–9:40am Wednesday, June 13, 2018
Architecture and microservices
Location: 212 A/B Level: Intermediate
Secondary topics:  Case study, Developer Experience Track: Tools, Platforms, and Techniques, Technical
Average rating: ****.
(4.71, 7 ratings)

Who is this presentation for?

  • Web application engineers looking to grow their knowledge of infrastructure, distributed systems, and observability

Prerequisite knowledge

  • Experience working on a production application (useful but not required)

What you'll learn

  • Explore the new tools and skillsets you need to understand increasingly complex applications

Description

The way engineers traditionally became distributed systems engineers was by creating infrastructure in-house and building hands-on familiarity with how data moved through a system. But specialization among engineers and increasing levels of abstraction have created a situation in which almost no one has a complete view of how data moves through an entire system end to end. At the same time, it’s become harder to understand the systems we’re building because we didn’t build them ourselves. Mobile and web apps are increasingly built on backends as a service (BaaS), platforms as a service (PaaS), and infrastructure as a service (IaaS), and we snap together software as a service (SaaS) like Legos.

We’ve all become distributed systems engineers, intentionally or not. This means that the skills required for understanding and diagnosing problems within a distributed system are more important for everyone, whether frontend, backend, or full stack. Rachel Myers and Emily Nakashima detail tools and skills we can use to get ourselves out of the corner we’ve boxed ourselves into.

Topics include:

  • When to use BaaS, PaaS, and IaaS and a checklist for what to do if you’re already in flight with them
  • Operational consequences and war stories of surprise distributed systems problems at three different companies
  • Tools for gaining visibility into the different parts of your stack (database, app, background jobs, queues, lambda, and event-based compute)
  • Criteria for when the cost to own a part of your stack is worth it
  • “I’m a web application engineer. How did this become part of my job again, and what does it all mean?”
Photo of Rachel Myers

Rachel Myers

Google

Rachel Myers is a backend engineer at Google working on Firebase rules. Previously, she was an engineer at GitHub and ModCloth and founded Opsolutely. In her free time, she designs enamel pins.

Photo of Emily Nakashima

Emily Nakashima

Honeycomb

Emily Nakashima is a full stack JavaScript engineer who loves design, web perf, and metrics. Emily is a co-organizer of the AndConf code retreat and unconference and a volunteer for RailsBridge.