SlideShare a Scribd company logo
Distributed Systems Are Hard.
Distributed Systems of People Are
Harder.
DevOpsDays Detroit 2017
Julian Dunn
Senior Product Manager
jdunn@chef.io
@julian_dunn
Distributed systems are hard; distributed systems of people are harder
Distributed systems are hard; distributed systems of people are harder
Distributed systems are hard; distributed systems of people are harder
Remote Employees
versus
Distributed Teams
Distributed systems are hard; distributed systems of people are harder
#[derive(DistributedSystem)]
struct DistributedTeam {...};
CAP Theorem
Consistency
Availability
Partition Tolerance
CAP Theorem
Consistency
Availability
Partition Tolerance
Consistency
The remote-first company must still work as one:
one vision, one strategy, one set of goals towards that strategy
Shared Alignment
•Where are we going?
•Why are we going there?
•How are we going to get there?
• What is an acceptable path?
• What does “good” look like?
•How does your work attach to that direction?
Not like this.
Strategy
• What do we aspire to be?
• Where do we play?
• How do we win?
• What capabilities do we need to win?
• What systems/metrics/processes do we need to measure and track winning?
Strategy
Top-level strategy
document
Covers 2 quarters
About 5-6 pages
Owned by leadership
Framing document
Covers one initiative
About 3-5 pages
Owned by product
manager
Partition Tolerance
The culture needs to support employees operating autonomously
Cultural support for autonomy
• High trust
• Transparency
• Outcomes and not output
• Clear and direct communication
• Embrace Conway’s Law
• Appropriate tool choice
[Appropriate Use of] Tools
The upside and downside of remote culture and JIRA, Slack, Zoom, etc.
Choosing Tools for a Remote-First Culture
• Is it a good compensating control for distributed teams?
• Are we prepared to invest the time to set norms of usage?
• Do we already have one of those?
“Containers will not fix your broken culture...”
- Bridget Kromhout, Pivotal Microsoft
Distributed systems are hard; distributed systems of people are harder
Slack Etiquette
• It is an asynchronous medium
• All push notifications turned off
• Minimize channels idled in
• Accurate /away status
• Business hours only
• Rude to @person someone for an in-passing
mention
• Rude to over-use @here
SLACK
Execution
(Engineering)
Planning
(Engineering,
Design, Product)
Strategy
(Design, Product)
“Backbone”
(main story
line)
User
story/activity
Release slice
Stories, not Artifacts
Standard but Lightweight SDLC
Unsolved Problems
What We’re Still Working On
Ongoing Challenges
• Internal broadcast communications
• 100% remote leadership
• Direct conversations w/ lower stakes
• Clear delegation of authority
• Cultural norms to avoid overwork
Wrap-Up
Remote-first company design
High trust, high autonomy, outcomes-based culture
Careful & intentional selection and usage of tools
Distributed systems are hard; distributed systems of people are harder

More Related Content

PDF
Frug'Agile 2021: Agile as doctrine (and that's a good thing)
PDF
Climbing Strategy Mountain
PDF
Enabling Flexible & Skilled Cross-Functional Teams within Agile & DevOps Orga...
PDF
ROI of Remote Design Thinking
PDF
10 Critical Aspects of IT Service Continuity to Protect Your Company's Digita...
PPTX
Change management
PDF
Reflections from a Reformed PM | Product Summit 2018
PPTX
Managers guide to virtual teams
Frug'Agile 2021: Agile as doctrine (and that's a good thing)
Climbing Strategy Mountain
Enabling Flexible & Skilled Cross-Functional Teams within Agile & DevOps Orga...
ROI of Remote Design Thinking
10 Critical Aspects of IT Service Continuity to Protect Your Company's Digita...
Change management
Reflections from a Reformed PM | Product Summit 2018
Managers guide to virtual teams

What's hot (7)

PDF
10 Atlassian Tool Hacks to Improve Team Culture
PDF
Managing remote teams
PPT
Agile Tour DC Chasing Windmills: Agile in the Government
PPTX
My Vision
PDF
Working Remotely and Managing Remote Teams
PPTX
Workshop in a box - delivering high performance meetings
PDF
Shadowmatch Overview Jun2012 Short Version
10 Atlassian Tool Hacks to Improve Team Culture
Managing remote teams
Agile Tour DC Chasing Windmills: Agile in the Government
My Vision
Working Remotely and Managing Remote Teams
Workshop in a box - delivering high performance meetings
Shadowmatch Overview Jun2012 Short Version
Ad

Similar to Distributed systems are hard; distributed systems of people are harder (20)

PDF
Design Operations
PDF
Slalom DevOps Automacon 2016
PPTX
Overcoming More Impediments to Agile Transformation - Distributed Teams, Scal...
PPTX
Kanban India 2022 | Mahadevan Periaswamy & Rajsekhar Janaswamy | Visualize f...
PDF
Feb Apln OC Shawna C
PDF
Scrum and agile principles
PDF
Proactive Governance & Adoption In Microsoft 365
PPTX
Use Collaboration to Solve Your Biggest Challenges
PDF
What needs to be true? Patterns of engineering agility
PDF
CRMready Webinar Series - Part 2 - Planning Ahead for CRM at Your Nonprofit
PDF
DevOps - A mindset change – Rami Farran
PDF
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PDF
DOES15 DevOps@TGT (re)building an engineering culture
PDF
Virtual Health + Care Design School - Week 7: Bring it all Together
PPTX
GrowFL: Improve Employee and Customer Experience in a Hybrid Work Environment
PDF
DOES15 - Heather Mickman & Ross Clanton - (Re)building an Engineering Culture...
PDF
Scrum Deutschland 2018 - Wolfgang Hilpert - Are you agile enough to succeed w...
PDF
Ten Ways To Doom Your DevOps
PPTX
Building SharePoint Enterprise Platforms - Off the beaten path - SharePoint S...
PDF
It Assessment
Design Operations
Slalom DevOps Automacon 2016
Overcoming More Impediments to Agile Transformation - Distributed Teams, Scal...
Kanban India 2022 | Mahadevan Periaswamy & Rajsekhar Janaswamy | Visualize f...
Feb Apln OC Shawna C
Scrum and agile principles
Proactive Governance & Adoption In Microsoft 365
Use Collaboration to Solve Your Biggest Challenges
What needs to be true? Patterns of engineering agility
CRMready Webinar Series - Part 2 - Planning Ahead for CRM at Your Nonprofit
DevOps - A mindset change – Rami Farran
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
DOES15 DevOps@TGT (re)building an engineering culture
Virtual Health + Care Design School - Week 7: Bring it all Together
GrowFL: Improve Employee and Customer Experience in a Hybrid Work Environment
DOES15 - Heather Mickman & Ross Clanton - (Re)building an Engineering Culture...
Scrum Deutschland 2018 - Wolfgang Hilpert - Are you agile enough to succeed w...
Ten Ways To Doom Your DevOps
Building SharePoint Enterprise Platforms - Off the beaten path - SharePoint S...
It Assessment
Ad

More from Julian Dunn (20)

PPTX
Technical Careers Beyond DevOps
PPTX
Pull, Don't Push! Sensu Summit 2018 Talk
PPTX
Now That I Have Choreography, What Do I Do With It?
PPTX
Orchestration? You Don't Need Orchestration. What You Want is Choreography.
PPTX
Chef on AIX
PPTX
Configuration Management in a Containerized World
PPTX
Cooking with Chef on Windows: 2015 Edition
PPTX
Automating That "Other" OS
PPTX
Chef-NYC Announcements July 2014
PPTX
Chef NYC Users' Group - Announcements for June 2014
PPTX
Improving Your Mac Productivity
PPTX
Chef Cookbook Governance BoF at ChefConf
PPTX
Chef and PowerShell Desired State Configuration
PPTX
What Makes a Good Chef Cookbook? (May 2014 Edition)
PPT
What Makes a Good Cookbook?
PPT
Configuration Management Isn't Everything
PPT
Cooking with Chef on Windows
PDF
An Introduction to DevOps with Chef
PDF
Chef Cookbook Testing and Continuous Integration
PDF
ChefConf 2013: Beginner Chef Antipatterns
Technical Careers Beyond DevOps
Pull, Don't Push! Sensu Summit 2018 Talk
Now That I Have Choreography, What Do I Do With It?
Orchestration? You Don't Need Orchestration. What You Want is Choreography.
Chef on AIX
Configuration Management in a Containerized World
Cooking with Chef on Windows: 2015 Edition
Automating That "Other" OS
Chef-NYC Announcements July 2014
Chef NYC Users' Group - Announcements for June 2014
Improving Your Mac Productivity
Chef Cookbook Governance BoF at ChefConf
Chef and PowerShell Desired State Configuration
What Makes a Good Chef Cookbook? (May 2014 Edition)
What Makes a Good Cookbook?
Configuration Management Isn't Everything
Cooking with Chef on Windows
An Introduction to DevOps with Chef
Chef Cookbook Testing and Continuous Integration
ChefConf 2013: Beginner Chef Antipatterns

Recently uploaded (20)

PPTX
New Microsoft PowerPoint Presentation - Copy.pptx
PDF
Power and position in leadershipDOC-20250808-WA0011..pdf
PPTX
The Marketing Journey - Tracey Phillips - Marketing Matters 7-2025.pptx
PPTX
Dragon_Fruit_Cultivation_in Nepal ppt.pptx
DOCX
Business Management - unit 1 and 2
PDF
Nidhal Samdaie CV - International Business Consultant
PDF
Types of control:Qualitative vs Quantitative
PPTX
CkgxkgxydkydyldylydlydyldlyddolydyoyyU2.pptx
PDF
Deliverable file - Regulatory guideline analysis.pdf
PDF
Traveri Digital Marketing Seminar 2025 by Corey and Jessica Perlman
PDF
SIMNET Inc – 2023’s Most Trusted IT Services & Solution Provider
PPT
Chapter four Project-Preparation material
PDF
Business model innovation report 2022.pdf
PDF
Laughter Yoga Basic Learning Workshop Manual
PDF
A Brief Introduction About Julia Allison
PPTX
AI-assistance in Knowledge Collection and Curation supporting Safe and Sustai...
PDF
MSPs in 10 Words - Created by US MSP Network
PDF
BsN 7th Sem Course GridNNNNNNNN CCN.pdf
PPTX
Lecture (1)-Introduction.pptx business communication
PDF
Ôn tập tiếng anh trong kinh doanh nâng cao
New Microsoft PowerPoint Presentation - Copy.pptx
Power and position in leadershipDOC-20250808-WA0011..pdf
The Marketing Journey - Tracey Phillips - Marketing Matters 7-2025.pptx
Dragon_Fruit_Cultivation_in Nepal ppt.pptx
Business Management - unit 1 and 2
Nidhal Samdaie CV - International Business Consultant
Types of control:Qualitative vs Quantitative
CkgxkgxydkydyldylydlydyldlyddolydyoyyU2.pptx
Deliverable file - Regulatory guideline analysis.pdf
Traveri Digital Marketing Seminar 2025 by Corey and Jessica Perlman
SIMNET Inc – 2023’s Most Trusted IT Services & Solution Provider
Chapter four Project-Preparation material
Business model innovation report 2022.pdf
Laughter Yoga Basic Learning Workshop Manual
A Brief Introduction About Julia Allison
AI-assistance in Knowledge Collection and Curation supporting Safe and Sustai...
MSPs in 10 Words - Created by US MSP Network
BsN 7th Sem Course GridNNNNNNNN CCN.pdf
Lecture (1)-Introduction.pptx business communication
Ôn tập tiếng anh trong kinh doanh nâng cao

Distributed systems are hard; distributed systems of people are harder

Editor's Notes

  • #2: Here to speak to you about the lessons we've learned at Chef being a "remote-first" company -- how we got there, how it's gone so far, and where we're continuing to improve.
  • #3: Chef is a very distributed company – has been right from the very beginning, even though it was founded in Seattle. We wanted to hire the very best engineers no matter where they were located. In about 2012-2013 when I started, Adam Jacob, Chef’s founder, moved to San Francisco so that his wife Katie could take a job with change.org So that introduced us to the concept of distributed leadership, and we’ve not really looked back. People ask me all the time, isn’t it tough to be a remote product manager? And it can be challenging – but it’s a different set of challenges from working on a team in an office. It also affords me great flexibility in my schedule.
  • #4: Chef being a remote-first company has afforded me great personal flexibility. Actually from just “down the road” and I moved to New York City in 2011 to start a graduate degree. After that, I worked in a traditional office job as an operations engineer. Chef’s my first fully remote – or distributed, as I like to say, more on that later – job, where I’ve worked for the last 4.5 years, first as a traveling consultant and for the last 2.5, as a product manager. It’s allowed my wife & I flexibility to move to another city, so now I live in Portland, Oregon – even though Chef is based up in Seattle. One of the reasons I specifically chose to give this talk here in Detroit – it’s the first time I’ve given this talk, so this is all fresh material – is because I’ve been able to watch, from a distance, what’s happened to Detroit. But if I had any money to spare, I’d be investing in Detroit because I think the city has great potential. So thank you all for coming here, and organizing DevOpsDays Detroit, because of this exact reason.
  • #5: ... well, let me ask you this. Who here is familiar with this book, from the folks at 37 Signals? I like this book, but like most business books, it suffers from the flaw of only telling you the happy path. “37 Signals is a magical company where everyone works remotely and it’s all sunshine & unicorns”, right? Who the hell wants to hear that. What I’m here to give you is practical advice for making distributed teams work – there is good, there is bad, there are compensating measures for the bad. I want to share with you our experiences doing this at Chef as we’ve grown the company from 50 to about 300 folks now & give you some actionable things you can take away for your distributed teams. Overall, I am bullish on distributed teams; the benefits outweigh the costs. And I think distributed work has a huge part to play in revitalizing cities like Detroit.
  • #6: Words are important so I want to bring this up right away. Distributed team – all employees are first-class citizens and the tools & culture support that. For example... you don’t just get a nice desk and chair if you work at “head office”. (Chef gives remote employees a one-time stipend up to $1000 to spend on office furniture.) At all-hands meetings, you don’t get stuck on a dial-in with shitty audio while the CEO talks to the team in-person at HQ with fancy drinks; all-hands meetings are conducted 100% online with the CEO on Zoom from his/her house. “Remote employees” can often be akin to ”onshore outsourcing”. I once went to see a customer at a bank and they were talking about their co-worker Bob, whom none of them had seen face-to-face in two or three years. Two or three years!
  • #8: This is the first and last Rust joke I’ll make in this presentation... Distributed teams have a lot in common with distributed systems. Actually you could learn a lot about what makes strong distributed teams by thinking about what make good distributed systems. So let’s start there...
  • #9: Eric Brewer: it is impossible for a distributed data store to simultaneously provide more than two out of the following three guarantees: Consistency. Availability. Partition tolerance.
  • #10: We’re not building a distributed system to serve requests... so we can give up availability. Actually we must do so: timezones appointments personal time life events vacation
  • #12: Vision
  • #14: Amazon does this too but with different artifacts. Write press release first
  • #16: Say more about passive-aggressive comms Domain-driven design
  • #19: How many people use Slack these days? How many of you like Slack? How many of you hate it? Why?
  • #23: From 10 years ago! Replace with the pic of me with the new glasses
  • #26: Leaf: Make the decision, act on it, do not report the action you took. Branch: Make the decision, act on it, report the action you took daily/weekly/monthly Trunk: Make the decision. Report your decision before you take action. Root: Make the decision jointly, with input from many people. These are the decisions that, if poorly made and implemented, could cause major harm in your organization.