SlideShare ist ein Scribd-Unternehmen logo
1 von 103
hello
End
 to
End
10+ million
  members
800,000+
  sellers
11 million+
   items
1 billion+
page views a month
$600 million
   this year
Design
    for
Continuous
Deployment
HELL
  Design
    for


YES!
Continuous
Deployment
“What is he
 doing here?”
get
Greate
Work
 done
How
Things
  are
Made
Making
Together
“What is
 continuous
 deployment?”
“deployment”

Release Changes
“continuous”

All of the Time
Always Improve
Frequent

 Boring

Low-Risk
Release
 Early

Release
 Often
Easy to Identify

  Easy to Fix
“Why design for
 continuous
 deployment?”
We’re all in
this together.
Share Early

Share Often
code
code
Empowerment,
 Responsibility
      &
    Trust
Decentralize
   Work
Engineers   Deployers
Engineers         Deployers
70


60


50


40


30


20


10


 0
     Jan   Feb   Mar   Apr   May   Jun   Jul   Aug   Sep   Oct   Nov
Engineers         Deployers
70


60
                                                                 58
                                                           55
50
                                                     49
                                               47
40                                       42

                                   35
30
                             30
                       26
20               23
           20
     15
10


 0
     Jan   Feb   Mar   Apr   May   Jun   Jul   Aug   Sep   Oct   Nov
Engineers         Deployers
70


                                                                 62
60
                                                           57
                                                                 58
                                                     54
                                                           55
50                                             50
                                                     49
                                               47
40                                       42

                                   35    32
30
                             30
                                   26
                       26
                             22
20               23
           20
                       15
     15
10               10
      7     8


 0
     Jan   Feb   Mar   Apr   May   Jun   Jul   Aug   Sep   Oct   Nov
Engineers         Deployers
70


                                                                 62
60
                                                           57
                                                                 58
                                                     54
                                                           55
50                                             50
                                                     49
                                               47
40                                       42

                                   35    32
30
                             30
                                   26
                       26
                             22
20               23
           20
                       15
     15
10               10
      7     8


 0
     Jan   Feb   Mar   Apr   May   Jun   Jul   Aug   Sep   Oct   Nov
Share Language

Share Knowledge
Version Control
 Design Assets
“How do you do it?”
Tools
  &
Process
Dev Environment
Local
Environment
Quick Start Guides
        &
    Packages
Chat & Share
send
 Local Changes
       to
Dev Environemnt
Pattern Library
Config Flags
On/Off
On/Off
Dev/Prod
On/Off
  Dev/Prod
Whitelist/Co./All
On/Off
  Dev/Prod
Whitelist/Co./All
   %A/%B
URL Params
{% if $smarty.get.url_param ==
url_param_value %}


a design for review
{% /if %}
{% if $smarty.get.url_param ==
version-A %}


a design for review
{% /if %}
{% if $smarty.get.url_param ==
version-B %}


another design for review
{% /if %}
Commit & Review
Test
Push
Push it to
Master in Git
Deploy Queue
Deployinator
etsy.github.com
Measure
Performance
Performance
Business Metrics
Performance
Business Metrics
 A/B Analyzer
Repeat
“Why ‘hell yes’?”
Simplify
   the
Complex
Work Closely
Make Change Easy
Make Great Work
Make People Happy
Make People Happy
That Is
    a
Beautiful
 Thing
That Is
  an
Awesome
 Thing
WE’RE
  That Is
    an


HIRING
 Awesome
  Thing
randy@etsy.com
  @randyjhunt
Randy Hunt, Etsy - Warm Gun Conference

Weitere ähnliche Inhalte

Andere mochten auch

500’s Demo Day Batch 15 >> Piper
500’s Demo Day Batch 15 >> Piper500’s Demo Day Batch 15 >> Piper
500’s Demo Day Batch 15 >> Piper500 Startups
 
Julie Ann Horvath, Just Ship It, WarmGun 2013
Julie Ann Horvath, Just Ship It, WarmGun 2013Julie Ann Horvath, Just Ship It, WarmGun 2013
Julie Ann Horvath, Just Ship It, WarmGun 2013500 Startups
 
Josh Taylor, Designing from Online to Offline, WarmGun 2013
Josh Taylor, Designing from Online to Offline, WarmGun 2013Josh Taylor, Designing from Online to Offline, WarmGun 2013
Josh Taylor, Designing from Online to Offline, WarmGun 2013500 Startups
 
500 Kobe Pre-Accelerator Demo Day >> Hacarus
500 Kobe Pre-Accelerator Demo Day >> Hacarus500 Kobe Pre-Accelerator Demo Day >> Hacarus
500 Kobe Pre-Accelerator Demo Day >> Hacarus500 Startups
 
500’s Demo Day Batch 13 >> Nancy
500’s Demo Day Batch 13 >> Nancy 500’s Demo Day Batch 13 >> Nancy
500’s Demo Day Batch 13 >> Nancy 500 Startups
 
Julie Ann Horvath, GitHub, Warm Gun 2012
Julie Ann Horvath, GitHub, Warm Gun 2012Julie Ann Horvath, GitHub, Warm Gun 2012
Julie Ann Horvath, GitHub, Warm Gun 2012500 Startups
 
500 Kobe Pre-Accelerator Demo Day >> MagicPrice
500 Kobe Pre-Accelerator Demo Day >> MagicPrice500 Kobe Pre-Accelerator Demo Day >> MagicPrice
500 Kobe Pre-Accelerator Demo Day >> MagicPrice500 Startups
 
HubBOG> GOAP LatAm 2013, Presentacion
HubBOG> GOAP LatAm 2013, PresentacionHubBOG> GOAP LatAm 2013, Presentacion
HubBOG> GOAP LatAm 2013, Presentacion500 Startups
 
500’s Demo Day Batch 17 >> Visiblee
500’s Demo Day Batch 17 >> Visiblee500’s Demo Day Batch 17 >> Visiblee
500’s Demo Day Batch 17 >> Visiblee500 Startups
 
unSEXY Conf 2013: Ainsley Braun, Tinfoil
unSEXY Conf 2013: Ainsley Braun, TinfoilunSEXY Conf 2013: Ainsley Braun, Tinfoil
unSEXY Conf 2013: Ainsley Braun, Tinfoil500 Startups
 
Andres Quesada, Gannett Digital, Warm Gun 2012
Andres Quesada, Gannett Digital, Warm Gun 2012Andres Quesada, Gannett Digital, Warm Gun 2012
Andres Quesada, Gannett Digital, Warm Gun 2012500 Startups
 
"Getting the Most Out of Your Startup Dollars," PeachDish >> Hadi Irvani [COM...
"Getting the Most Out of Your Startup Dollars," PeachDish >> Hadi Irvani [COM..."Getting the Most Out of Your Startup Dollars," PeachDish >> Hadi Irvani [COM...
"Getting the Most Out of Your Startup Dollars," PeachDish >> Hadi Irvani [COM...500 Startups
 
Deontologia-CDS-lavoro e Organizzazioni - UNITO - Lezione-1
Deontologia-CDS-lavoro e Organizzazioni - UNITO - Lezione-1Deontologia-CDS-lavoro e Organizzazioni - UNITO - Lezione-1
Deontologia-CDS-lavoro e Organizzazioni - UNITO - Lezione-1Alessandro Lombardo
 
Golazzos > Apps.co Demo Day in Bogota, GOAP LatAm 2013
Golazzos  > Apps.co Demo Day in Bogota, GOAP LatAm 2013Golazzos  > Apps.co Demo Day in Bogota, GOAP LatAm 2013
Golazzos > Apps.co Demo Day in Bogota, GOAP LatAm 2013500 Startups
 

Andere mochten auch (19)

Dakwak
DakwakDakwak
Dakwak
 
500’s Demo Day Batch 15 >> Piper
500’s Demo Day Batch 15 >> Piper500’s Demo Day Batch 15 >> Piper
500’s Demo Day Batch 15 >> Piper
 
Julie Ann Horvath, Just Ship It, WarmGun 2013
Julie Ann Horvath, Just Ship It, WarmGun 2013Julie Ann Horvath, Just Ship It, WarmGun 2013
Julie Ann Horvath, Just Ship It, WarmGun 2013
 
Josh Taylor, Designing from Online to Offline, WarmGun 2013
Josh Taylor, Designing from Online to Offline, WarmGun 2013Josh Taylor, Designing from Online to Offline, WarmGun 2013
Josh Taylor, Designing from Online to Offline, WarmGun 2013
 
500 Kobe Pre-Accelerator Demo Day >> Hacarus
500 Kobe Pre-Accelerator Demo Day >> Hacarus500 Kobe Pre-Accelerator Demo Day >> Hacarus
500 Kobe Pre-Accelerator Demo Day >> Hacarus
 
500’s Demo Day Batch 13 >> Nancy
500’s Demo Day Batch 13 >> Nancy 500’s Demo Day Batch 13 >> Nancy
500’s Demo Day Batch 13 >> Nancy
 
Julie Ann Horvath, GitHub, Warm Gun 2012
Julie Ann Horvath, GitHub, Warm Gun 2012Julie Ann Horvath, GitHub, Warm Gun 2012
Julie Ann Horvath, GitHub, Warm Gun 2012
 
500 Kobe Pre-Accelerator Demo Day >> MagicPrice
500 Kobe Pre-Accelerator Demo Day >> MagicPrice500 Kobe Pre-Accelerator Demo Day >> MagicPrice
500 Kobe Pre-Accelerator Demo Day >> MagicPrice
 
Mauria Finley
Mauria FinleyMauria Finley
Mauria Finley
 
HubBOG> GOAP LatAm 2013, Presentacion
HubBOG> GOAP LatAm 2013, PresentacionHubBOG> GOAP LatAm 2013, Presentacion
HubBOG> GOAP LatAm 2013, Presentacion
 
App socially
App sociallyApp socially
App socially
 
500’s Demo Day Batch 17 >> Visiblee
500’s Demo Day Batch 17 >> Visiblee500’s Demo Day Batch 17 >> Visiblee
500’s Demo Day Batch 17 >> Visiblee
 
unSEXY Conf 2013: Ainsley Braun, Tinfoil
unSEXY Conf 2013: Ainsley Braun, TinfoilunSEXY Conf 2013: Ainsley Braun, Tinfoil
unSEXY Conf 2013: Ainsley Braun, Tinfoil
 
Andres Quesada, Gannett Digital, Warm Gun 2012
Andres Quesada, Gannett Digital, Warm Gun 2012Andres Quesada, Gannett Digital, Warm Gun 2012
Andres Quesada, Gannett Digital, Warm Gun 2012
 
"Getting the Most Out of Your Startup Dollars," PeachDish >> Hadi Irvani [COM...
"Getting the Most Out of Your Startup Dollars," PeachDish >> Hadi Irvani [COM..."Getting the Most Out of Your Startup Dollars," PeachDish >> Hadi Irvani [COM...
"Getting the Most Out of Your Startup Dollars," PeachDish >> Hadi Irvani [COM...
 
Sasha Eslami
Sasha EslamiSasha Eslami
Sasha Eslami
 
Deontologia-CDS-lavoro e Organizzazioni - UNITO - Lezione-1
Deontologia-CDS-lavoro e Organizzazioni - UNITO - Lezione-1Deontologia-CDS-lavoro e Organizzazioni - UNITO - Lezione-1
Deontologia-CDS-lavoro e Organizzazioni - UNITO - Lezione-1
 
Chalkable
ChalkableChalkable
Chalkable
 
Golazzos > Apps.co Demo Day in Bogota, GOAP LatAm 2013
Golazzos  > Apps.co Demo Day in Bogota, GOAP LatAm 2013Golazzos  > Apps.co Demo Day in Bogota, GOAP LatAm 2013
Golazzos > Apps.co Demo Day in Bogota, GOAP LatAm 2013
 

Ähnlich wie Randy Hunt, Etsy - Warm Gun Conference

Design For Continuous Deployment
Design For Continuous DeploymentDesign For Continuous Deployment
Design For Continuous DeploymentRandy Hunt
 
Eurostat - Uso de internet 2009
Eurostat - Uso de internet 2009Eurostat - Uso de internet 2009
Eurostat - Uso de internet 2009FACTUAL
 
St'ford result sheet B Grade
St'ford result sheet B GradeSt'ford result sheet B Grade
St'ford result sheet B Gradeallanhend
 
St'ford result sheet A Grade
St'ford result sheet A GradeSt'ford result sheet A Grade
St'ford result sheet A Gradeallanhend
 
St'ford result sheet A Grade
St'ford result sheet A GradeSt'ford result sheet A Grade
St'ford result sheet A Gradeallanhend
 
RUSD CST Outcomes
RUSD CST OutcomesRUSD CST Outcomes
RUSD CST Outcomesteamteach
 
Maximizing your Water Safety & Drowning Prevention Efforts
Maximizing your Water Safety & Drowning Prevention EffortsMaximizing your Water Safety & Drowning Prevention Efforts
Maximizing your Water Safety & Drowning Prevention Effortspbcgov
 
200 external shell settlement survey datasheet button
200 external shell settlement survey datasheet button200 external shell settlement survey datasheet button
200 external shell settlement survey datasheet buttonatecotanks
 
200 external shell settlement survey datasheet button
200 external shell settlement survey datasheet button200 external shell settlement survey datasheet button
200 external shell settlement survey datasheet buttonatecotanks
 
Oak hill presentation
Oak hill presentationOak hill presentation
Oak hill presentationjan4tarheels
 
Putter King Scavenger Hunt 2011
Putter King Scavenger Hunt 2011Putter King Scavenger Hunt 2011
Putter King Scavenger Hunt 2011putterking
 
Pharmaceutical Resource Planning & Management
Pharmaceutical Resource Planning & ManagementPharmaceutical Resource Planning & Management
Pharmaceutical Resource Planning & ManagementTodd Tullis
 

Ähnlich wie Randy Hunt, Etsy - Warm Gun Conference (20)

Design For Continuous Deployment
Design For Continuous DeploymentDesign For Continuous Deployment
Design For Continuous Deployment
 
Scaling startups
Scaling startupsScaling startups
Scaling startups
 
Eurostat - Uso de internet 2009
Eurostat - Uso de internet 2009Eurostat - Uso de internet 2009
Eurostat - Uso de internet 2009
 
St'ford result sheet B Grade
St'ford result sheet B GradeSt'ford result sheet B Grade
St'ford result sheet B Grade
 
Virtualization
VirtualizationVirtualization
Virtualization
 
St'ford result sheet A grade
St'ford result sheet A gradeSt'ford result sheet A grade
St'ford result sheet A grade
 
St'ford Result Sheet A Grade
St'ford Result Sheet A GradeSt'ford Result Sheet A Grade
St'ford Result Sheet A Grade
 
St'ford result sheet A Grade
St'ford result sheet A GradeSt'ford result sheet A Grade
St'ford result sheet A Grade
 
St'ford result sheet A Grade
St'ford result sheet A GradeSt'ford result sheet A Grade
St'ford result sheet A Grade
 
St'ford Result Sheet C Grade
St'ford Result Sheet C GradeSt'ford Result Sheet C Grade
St'ford Result Sheet C Grade
 
St'ford result sheet C grade
St'ford result sheet C gradeSt'ford result sheet C grade
St'ford result sheet C grade
 
RUSD CST Outcomes
RUSD CST OutcomesRUSD CST Outcomes
RUSD CST Outcomes
 
St'ford result sheet B grade
St'ford result sheet B gradeSt'ford result sheet B grade
St'ford result sheet B grade
 
St'ford Result Sheet B Grade
St'ford Result Sheet B GradeSt'ford Result Sheet B Grade
St'ford Result Sheet B Grade
 
Maximizing your Water Safety & Drowning Prevention Efforts
Maximizing your Water Safety & Drowning Prevention EffortsMaximizing your Water Safety & Drowning Prevention Efforts
Maximizing your Water Safety & Drowning Prevention Efforts
 
200 external shell settlement survey datasheet button
200 external shell settlement survey datasheet button200 external shell settlement survey datasheet button
200 external shell settlement survey datasheet button
 
200 external shell settlement survey datasheet button
200 external shell settlement survey datasheet button200 external shell settlement survey datasheet button
200 external shell settlement survey datasheet button
 
Oak hill presentation
Oak hill presentationOak hill presentation
Oak hill presentation
 
Putter King Scavenger Hunt 2011
Putter King Scavenger Hunt 2011Putter King Scavenger Hunt 2011
Putter King Scavenger Hunt 2011
 
Pharmaceutical Resource Planning & Management
Pharmaceutical Resource Planning & ManagementPharmaceutical Resource Planning & Management
Pharmaceutical Resource Planning & Management
 

Mehr von 500 Startups (20)

Get on Board
Get on BoardGet on Board
Get on Board
 
Connected Analytics
Connected AnalyticsConnected Analytics
Connected Analytics
 
Sira Medical
Sira MedicalSira Medical
Sira Medical
 
The Atlas
The AtlasThe Atlas
The Atlas
 
Trash Warrior
Trash WarriorTrash Warrior
Trash Warrior
 
Thematic
ThematicThematic
Thematic
 
Shiplyst
ShiplystShiplyst
Shiplyst
 
Renetec
RenetecRenetec
Renetec
 
Predina
PredinaPredina
Predina
 
Pluto
PlutoPluto
Pluto
 
Plant an App
Plant an AppPlant an App
Plant an App
 
Pilota
PilotaPilota
Pilota
 
Mero Technologies
Mero TechnologiesMero Technologies
Mero Technologies
 
Omnitron Sensors
Omnitron SensorsOmnitron Sensors
Omnitron Sensors
 
Juked
JukedJuked
Juked
 
GamerzClass
GamerzClassGamerzClass
GamerzClass
 
eino
einoeino
eino
 
Cenos
CenosCenos
Cenos
 
Bliinx
BliinxBliinx
Bliinx
 
Butlr
ButlrButlr
Butlr
 

Kürzlich hochgeladen

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 

Kürzlich hochgeladen (20)

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 

Randy Hunt, Etsy - Warm Gun Conference

Hinweis der Redaktion

  1. Hello\n
  2. Hello\n
  3. What is Etsy?\nEtsy is a commerce platform & a community where people buy direct from designers & artists who make & sell their own products.\n
  4. Any creative person can open a shop, list items, receive and fulfill orders, promote themselves, connect with other people, curate collections of items, watch site activity...\n
  5. 96% goes straight to the seller.\n
  6. There are products made by hand or with very small scale production.\n
  7. There are vintage and antique products.\n
  8. There are supplies for making.\n
  9. Etsy is more than products. It’s a community.\n
  10. I’m in the lucky position to be creative director at Etsy.\nI get to be the arbiter of Etsy's experience end-to-end across all channels...\n
  11. ...out in the world...\n
  12. ...on your phone...\n
  13. ...and at etsy.com. I’m the design cheerleader, with a critical eye. And I make sure great design work gets done.\n
  14. There’s a lot to get done. In a complex environment.\n
  15. \n
  16. \n
  17. \n
  18. And...\n
  19. About 140 people in Product Design & Engineering\n(that’s designers, product managers, engineers, and devops).\nWe have to make that all work!\n
  20. Which brings me to the topic at hand. Design for Continuous Deployment.\n
  21. Which is awesome.\n
  22. You might be asking yourself, “why is a designer talking to room of developers about deployment?”\n
  23. Return to this idea of helpinggreat work get done.\n
  24. Getting great work done means working together.\nAnd it means valuing how things are made.\n
  25. In fact, it means Making Together.\nTHAT is designing for continuous deployment.\nIf our engineers practice continuous deployment, so must we. We’re building one product.\n
  26. Designers...\n
  27. ...and engineers...(no wait)...\n
  28. ...and engineers working together.\n
  29. That brings us to our next question. You might be asking, \n“What is continuous deployment?”\n
  30. “Deployment” is really just releasing changes to your product.\n
  31. “Continuous” means those changes are being released all of the time.\n
  32. Assuming that each change is intended to be an improvement (and why wouldn’t it be?), then that means the product is always improving.\n
  33. These changes happen often, they’re trivial, and because they’re small, they should be low risk. This is really the philosophy of continuous deployment.\n
  34. This is saying frequency another way: a catchy way. This is how you say it if you want to remind someone they haven’t released small enought or frequently enough.\n
  35. Again, because the changes are small (and we measure what happens) problems are easier to find and easier to fix.\n
  36. So, you ask, “why design for continuous deployment?”\n
  37. Well, we’re working together building one product, so we should work similarly. Design doesn’t get left behind in a powerful engineering culture. In fact, design can scale and be more fluid when it’s close to engineering.\n
  38. This is the collaboration counterpart to releasing early and often. You encounter problems sooner. You learn sooner. You fix sooner.\nThis isn’t about speed, it’s about quality.\n
  39. You sketch it out...\n
  40. ...make it real...\n
  41. ...and share it!\nYou’ve made your design in the actual application environment. For engineers, no big deal. For designers, this is huge!\n
  42. And when you get to the point of releasing, you’re empowered and trusted to do that. (yep, designers deploy to production too)\n
  43. People like these things. Being trusted feels good.\nAs Kellan our CTO says, “optimize for developer happiness.”\nWhen you’re happy, you do better work.\n
  44. When everyone can access code and everyone can deploy, there’s not single bottleneck or central deployment authority.\n
  45. Here we can see the moment in 2010 when the number of people deploying to production surpassed the number of engineers on staff. This is good.\n
  46. Here we can see the moment in 2010 when the number of people deploying to production surpassed the number of engineers on staff. This is good.\n
  47. Here we can see the moment in 2010 when the number of people deploying to production surpassed the number of engineers on staff. This is good.\n
  48. Here we can see the moment in 2010 when the number of people deploying to production surpassed the number of engineers on staff. This is good.\n
  49. When designers and engineers work in the same environment, they share a language. This makes is easier to share knowledge. It also means you sympathize more with each other’s motivations and challenges.\n
  50. As an added bonus. When you have designers working this way, you get version control of your design assets happening naturally. Nice!\n
  51. Enough with the philosophy and motivational messages.\n“How does this work at Etsy?”\n
  52. I’ll describe the tools and basic process we use on the product design team (and where we intersect with engineering).\n
  53. We all have a dedicated virtual machine that serves as our development environment. They are configured as mirrors of production in almost every way.\n
  54. And we all work locally on our Macs. This is like some engineers, but not most of them. Most of them like to work in their development environment directly. Us designers don’t like things like Vim.\n
  55. Along with our engineers, we’ve made quick guides to help designers get started in this environment.\n
  56. Some engineers even made us a handy package to install. Ta-da!\n
  57. \n
  58. The whole company uses IRC to communicate.\n
  59. The product design team also uses Campfire (and the Propane client) to share visual designs in conversation as well. We’ll post links to dev environments, as well as still and motion screen captures.\n
  60. Remember those set up tools? Well there’s a handy script that auto-sends local changes to your development environment.\n
  61. We’ve built a design Pattern Library. It allows us to quickly get designs roughed. Don’t duplicate efforts. Be more consistent throughout the product.\n\nIt covers mark-up, style, and behavior.\n
  62. This doesn’t solve everything, every time, but a patterns solves many things many times. Makes it easy to get started. Helps share design decisions between designers and with engineers.\n\nIf we do something more than once, we patternize it.\n
  63. We put every feature behind config flags. They’re dead simple. They live in a few simple PHP files.\n\nThese allow us to safely work in production code and only deliver designs to the right people at the right time.\n
  64. These flags turn things on and off.\nThey determine what environment they’re on/off in.\nThey can determine what specific users.\nAnd they integrate with our a/b experiment framework.\n
  65. These flags turn things on and off.\nThey determine what environment they’re on/off in.\nThey can determine what specific users.\nAnd they integrate with our a/b experiment framework.\n
  66. These flags turn things on and off.\nThey determine what environment they’re on/off in.\nThey can determine what specific users.\nAnd they integrate with our a/b experiment framework.\n
  67. These flags turn things on and off.\nThey determine what environment they’re on/off in.\nThey can determine what specific users.\nAnd they integrate with our a/b experiment framework.\n
  68. We’ve implemented very simple template tags that allow us to specify URL parameters and next design states or variations inside them.\n
  69. \n
  70. \n
  71. \n
  72. Before we send our changes back to master, we get code reviews from our peers.\n
  73. We use Crucible or Github or really anything you’d like to use to do a code review. The important thing is that we check our work. Designers can learn a ton from engineers in this step.\n
  74. Before we send changes to master, we run functional and unit tests.\n
  75. Then we push it.\n
  76. Wow, tech-y slide.\nWhat about merging? We merge when we pull.\nNo branches. We only “branch in code” using the config flags. That saves us from any annoying merging issues and keeps everyone accountable. It’s also just simple and easy to understand.\n
  77. Who’s turn is it? We find out by joining the Deploy Queue.\nSo how do you manage 100 people pushing and deploying code to production? You make them talk to each other.\n
  78. That’s right, IRC. There’s a special IRC room just for Pushes. There’s a little bot that helps you be polite, but the only policy enforcement is self enforcement. We respect the system and respect our peers.\n
  79. When the queueu says it’s okay to deploy, we turn to our tool, Deployinator. It’s a dashboard and simple UI for 1-button deploys.\n
  80. \n
  81. It patternizes behavior.\n
  82. It’s so easy, even our investors deploy! ;-)\n
  83. Deployinator (and several of our other home-brew tools) are open-sourced and avaliable on github.\n
  84. After we deploy, we measure, measure, measure.\n
  85. We monitor performance immediately and over the long term.\nWe look at business metrics immediately and over the long term.\nAnd we watch behavioral metrics and funnels using our analyzer tool.\n
  86. We monitor performance immediately and over the long term.\nWe look at business metrics immediately and over the long term.\nAnd we watch behavioral metrics and funnels using our analyzer tool.\n
  87. We monitor performance immediately and over the long term.\nWe look at business metrics immediately and over the long term.\nAnd we watch behavioral metrics and funnels using our analyzer tool.\n
  88. And we do this over and over and over again, deploying up to 50 times day.\n
  89. Why’s it all so exciting to designers...and engineers?\n
  90. Working continuously, and releasing small pieces breaks complex things down into simpler things.\n
  91. You end up working closely together, because we use the same tools and languages. This is good.\n
  92. This makes it easier to make changes happen, and get them out in the world.\n
  93. Develop a way of working that facilitates great work.\n
  94. And when you make great work, the people you make it and the people who use it are better for it.\n
  95. Afterall, it’s people that matter most.\n
  96. \n
  97. If you find that as awesome as I do...\n\n
  98. \n
  99. Please come talk to me.\n\n
  100. Thank you so much.\n\n