SlideShare une entreprise Scribd logo
1  sur  40
Growing Community
     Learning !om Mistakes
LB Denker
Teams
“The most important component of
     The EtsyWay is culture
  and that is as difficult to teach
       as it is important.”

                    — Chad Dickerson, Etsy CEO
Disclaimer
Speaker does not have firsthand
experience with all the events in
       this presentation.
2007: Growing Traffic
Developers - Write Code

DBAs - Write SQL, Stored Procedures

Ops - Deploy Code and Maintain Production
“Any organization that designs a system
(defined broadly) will produce a design whose
    structure is a copy of the organization’s
          communication structure.”

                             — Melvin Conway, 1968
Developers - Write Code

DBAs - Write SQL, Stored Procedures

Ops - Deploy Code and Maintain Production
Sprouter

aka Stored Procedure Router

Per Web Server on Port 8010

Maps name/arguments to Postgres stored procedure

Cache

Supports Sharding (Theoretically)

Goal — Scale the Web Site
Forcibly Centralizes Database Access

Hides Data Store Implementation

“Clever” Automatic Caching

Prevents Developers from Writing SQL
Supported Organizational Silos

Enforced “Not Invented Here”

Increased Deployment Complexity

Database Was Still Single Point of Failure
Life and Death of Sprouter
 Fall ’07       First Discussed


Spring ’08   Alpha Version Released


 Fall ’08    Released in Production


Spring ’09    Sprouter Deprecated


Spring ’11     Sprouter is Dead!
2009: Growing Workforce
2005

Four Guys

  Founder

  One DBA

  Two Developers

Founder’s Apartment
2007

Maybe 10-15 Engineers

Partitioned by Role

  Developers

  DBAs

  Ops
2009

Etsy Growth Spurt

  Workforce Doubled

  Doubling Again

  4x Increase by 2010
How Do We Organize?


Ops — Five People

Search — Five People

The Rest??
Re p o e
        r a te u c e n
 S e p a o l r, L
Ja v a, S



                                 epo                     epo
                            rm R                   a te R p l o y
                  P l at f o MP           S e p a r t De
                          LA
                                          Di f fe re n


                                                         epo
             Re p o              Re p o             ate R oDB
                                            e p a r o ng
       r a te s s S e p a r a te          S
S e p a rdp re                u by              l a, M
    Wo                     R              Sc a
What? Why?


Too Big to be One Team

SVN Repository was Too Big to be Just One

Solution: Split the Workforce, Split the Repository
SVN to Git in 1,000 Easy

Git Fans using git-svn

Git is Better Equipped to Handle the Mammoth Repository

Merge the Repositories Together

Devise a Workflow, Document It, Teach It

Do the Switch!
Divide and Merge


Break-up By Customer or Necessary Technological Difference

Create Constantly Changing Sub-Teams within Divisions

Make it Easy to Move Between Focus Areas
or k , e tc.
                t ac k              Ex pe rt ise
       Jav a
               S
                                                               a re , Ne t w
                                                       H a rd w

                                                                         ome r
                                 C us t ome r                     C us t
                                                        e the
                           e the                 rs a r
                    rs a r                B u ye
            Se l le


                                                                                C us t ome r
                   u i re d Si lo                                         the
          y Re q                                                     g is
Le   gall                                              ngi n eerin
                                                   E
2010: Growing Continuity
DevOps
Culture
“Always Be Pushing”

Developer Happiness

We trust one another
Continuous...   Unceremoniously...   Initiated By...


                 Push Changes to
Deployment                              Anyone
                   Production


                  Apply Quality
 Integration                            Anyone
                    Process


                   Release New
  Delivery                              Product
                     Features
Continuous...   Unceremoniously...   Initiated By...


                 Push Changes to
Deployment                              Anyone
                   Production


                  Apply Quality
 Integration                            Anyone
                    Process


 o w?              Release New            ???
H Delivery                              Product
                     Features
Lessons Learned
Possible Takeaways

Look Back on History to Avoid Repeating the Bad Parts

Cultivating Culture Requires a Constant Concerted Effort

Don’t Optimize Too Early

Keep It Simple
Thank You!


Visit etsy.com

Learn at codeascraft.com

More on SlideShare
Etsy Shop Photos
TheSundayFlower *        DreamingInCraft
SavageJulietteJewels *   TKfindz
SewFab1 *                YouMeSittingInATree
JLMould                  SingleStoneStudios *
EllanaCouture            iSew
Cufflinks                 PreettySandHu
GimmCat                  ExLibrisJournals *
TwirlsWithPearls         ChalkStyle
                         * Shop Curated in Cincinnati

Contenu connexe

Similaire à QC Merge 2012: Growing community

Wishes or Woes: Santa Knows How to Help
Wishes or Woes: Santa Knows How to HelpWishes or Woes: Santa Knows How to Help
Wishes or Woes: Santa Knows How to HelpAllen Interactions
 
Presentation Redux @ Lanco Infratch
Presentation Redux @ Lanco InfratchPresentation Redux @ Lanco Infratch
Presentation Redux @ Lanco InfratchMohit Chhabra
 
What Developers Need To Know About Visual Design
What Developers Need To Know About Visual DesignWhat Developers Need To Know About Visual Design
What Developers Need To Know About Visual DesignBen Hall
 
W jax wenn-code altert
W jax  wenn-code altertW jax  wenn-code altert
W jax wenn-code altertSven Peters
 
StartupLokal Presentation on 1st Anniversary
StartupLokal Presentation on 1st AnniversaryStartupLokal Presentation on 1st Anniversary
StartupLokal Presentation on 1st AnniversaryNatali Ardianto
 
7 Things: How to make good teams great
7 Things: How to make good teams great7 Things: How to make good teams great
7 Things: How to make good teams greatSven Peters
 
Passion For Software
Passion For SoftwarePassion For Software
Passion For SoftwareSven Peters
 
Andrew phillips three-pillars_of_continuous_delivery-1
Andrew phillips three-pillars_of_continuous_delivery-1Andrew phillips three-pillars_of_continuous_delivery-1
Andrew phillips three-pillars_of_continuous_delivery-1Cachet Software Solutions Ltd
 
What Designs Need To Know About Visual Design
What Designs Need To Know About Visual DesignWhat Designs Need To Know About Visual Design
What Designs Need To Know About Visual DesignBen Hall
 
Fantastic Customer Service
Fantastic Customer ServiceFantastic Customer Service
Fantastic Customer ServiceDerek Arden
 
Getting Up and Running with BDD on Rails
Getting Up and Running with BDD on RailsGetting Up and Running with BDD on Rails
Getting Up and Running with BDD on Railselliando dias
 
Getting Up and Running with BDD on Rails
Getting Up and Running with BDD on RailsGetting Up and Running with BDD on Rails
Getting Up and Running with BDD on RailsNicholas Cancelliere
 
Stash - We Code Together
Stash - We Code TogetherStash - We Code Together
Stash - We Code TogetherSven Peters
 
SRE for Everyone: Making Tomorrow Better Than Today
SRE for Everyone: Making Tomorrow Better Than Today SRE for Everyone: Making Tomorrow Better Than Today
SRE for Everyone: Making Tomorrow Better Than Today Rundeck
 
CLS Talk #5 - Loving Your Neighbor
CLS Talk #5 - Loving Your NeighborCLS Talk #5 - Loving Your Neighbor
CLS Talk #5 - Loving Your NeighborJulie Mae Chavez
 

Similaire à QC Merge 2012: Growing community (20)

Agile Mashups
Agile MashupsAgile Mashups
Agile Mashups
 
Wishes or Woes: Santa Knows How to Help
Wishes or Woes: Santa Knows How to HelpWishes or Woes: Santa Knows How to Help
Wishes or Woes: Santa Knows How to Help
 
Presentation Redux @ Lanco Infratch
Presentation Redux @ Lanco InfratchPresentation Redux @ Lanco Infratch
Presentation Redux @ Lanco Infratch
 
What Developers Need To Know About Visual Design
What Developers Need To Know About Visual DesignWhat Developers Need To Know About Visual Design
What Developers Need To Know About Visual Design
 
W jax wenn-code altert
W jax  wenn-code altertW jax  wenn-code altert
W jax wenn-code altert
 
Monomobile
MonomobileMonomobile
Monomobile
 
StartupLokal Presentation on 1st Anniversary
StartupLokal Presentation on 1st AnniversaryStartupLokal Presentation on 1st Anniversary
StartupLokal Presentation on 1st Anniversary
 
Presentation Skills
Presentation SkillsPresentation Skills
Presentation Skills
 
Cvs
CvsCvs
Cvs
 
7 Things: How to make good teams great
7 Things: How to make good teams great7 Things: How to make good teams great
7 Things: How to make good teams great
 
Passion For Software
Passion For SoftwarePassion For Software
Passion For Software
 
Andrew phillips three-pillars_of_continuous_delivery-1
Andrew phillips three-pillars_of_continuous_delivery-1Andrew phillips three-pillars_of_continuous_delivery-1
Andrew phillips three-pillars_of_continuous_delivery-1
 
What Designs Need To Know About Visual Design
What Designs Need To Know About Visual DesignWhat Designs Need To Know About Visual Design
What Designs Need To Know About Visual Design
 
Fantastic Customer Service
Fantastic Customer ServiceFantastic Customer Service
Fantastic Customer Service
 
Lisa Sibley - Creating opportunities for real converstion to engage Essex - P...
Lisa Sibley - Creating opportunities for real converstion to engage Essex - P...Lisa Sibley - Creating opportunities for real converstion to engage Essex - P...
Lisa Sibley - Creating opportunities for real converstion to engage Essex - P...
 
Getting Up and Running with BDD on Rails
Getting Up and Running with BDD on RailsGetting Up and Running with BDD on Rails
Getting Up and Running with BDD on Rails
 
Getting Up and Running with BDD on Rails
Getting Up and Running with BDD on RailsGetting Up and Running with BDD on Rails
Getting Up and Running with BDD on Rails
 
Stash - We Code Together
Stash - We Code TogetherStash - We Code Together
Stash - We Code Together
 
SRE for Everyone: Making Tomorrow Better Than Today
SRE for Everyone: Making Tomorrow Better Than Today SRE for Everyone: Making Tomorrow Better Than Today
SRE for Everyone: Making Tomorrow Better Than Today
 
CLS Talk #5 - Loving Your Neighbor
CLS Talk #5 - Loving Your NeighborCLS Talk #5 - Loving Your Neighbor
CLS Talk #5 - Loving Your Neighbor
 

Plus de LB Denker

Testing and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons LearnedTesting and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons LearnedLB Denker
 
Php|tek '12 It's More Than Just Style
Php|tek '12  It's More Than Just StylePhp|tek '12  It's More Than Just Style
Php|tek '12 It's More Than Just StyleLB Denker
 
Developer testing 101: Become a Testing Fanatic
Developer testing 101: Become a Testing FanaticDeveloper testing 101: Become a Testing Fanatic
Developer testing 101: Become a Testing FanaticLB Denker
 
PHP UK Conference 2012: Scaling Communication via Continuous Integration
PHP UK Conference 2012: Scaling Communication via Continuous IntegrationPHP UK Conference 2012: Scaling Communication via Continuous Integration
PHP UK Conference 2012: Scaling Communication via Continuous IntegrationLB Denker
 
Are Your Tests Really Helping You?
Are Your Tests Really Helping You?Are Your Tests Really Helping You?
Are Your Tests Really Helping You?LB Denker
 
Php com con-2011
Php com con-2011Php com con-2011
Php com con-2011LB Denker
 

Plus de LB Denker (6)

Testing and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons LearnedTesting and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons Learned
 
Php|tek '12 It's More Than Just Style
Php|tek '12  It's More Than Just StylePhp|tek '12  It's More Than Just Style
Php|tek '12 It's More Than Just Style
 
Developer testing 101: Become a Testing Fanatic
Developer testing 101: Become a Testing FanaticDeveloper testing 101: Become a Testing Fanatic
Developer testing 101: Become a Testing Fanatic
 
PHP UK Conference 2012: Scaling Communication via Continuous Integration
PHP UK Conference 2012: Scaling Communication via Continuous IntegrationPHP UK Conference 2012: Scaling Communication via Continuous Integration
PHP UK Conference 2012: Scaling Communication via Continuous Integration
 
Are Your Tests Really Helping You?
Are Your Tests Really Helping You?Are Your Tests Really Helping You?
Are Your Tests Really Helping You?
 
Php com con-2011
Php com con-2011Php com con-2011
Php com con-2011
 

Dernier

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 

Dernier (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 

QC Merge 2012: Growing community

  • 1. Growing Community Learning !om Mistakes
  • 3.
  • 4.
  • 6. “The most important component of The EtsyWay is culture and that is as difficult to teach as it is important.” — Chad Dickerson, Etsy CEO
  • 7. Disclaimer Speaker does not have firsthand experience with all the events in this presentation.
  • 9. Developers - Write Code DBAs - Write SQL, Stored Procedures Ops - Deploy Code and Maintain Production
  • 10. “Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization’s communication structure.” — Melvin Conway, 1968
  • 11. Developers - Write Code DBAs - Write SQL, Stored Procedures Ops - Deploy Code and Maintain Production
  • 12. Sprouter aka Stored Procedure Router Per Web Server on Port 8010 Maps name/arguments to Postgres stored procedure Cache Supports Sharding (Theoretically) Goal — Scale the Web Site
  • 13. Forcibly Centralizes Database Access Hides Data Store Implementation “Clever” Automatic Caching Prevents Developers from Writing SQL
  • 14. Supported Organizational Silos Enforced “Not Invented Here” Increased Deployment Complexity Database Was Still Single Point of Failure
  • 15. Life and Death of Sprouter Fall ’07 First Discussed Spring ’08 Alpha Version Released Fall ’08 Released in Production Spring ’09 Sprouter Deprecated Spring ’11 Sprouter is Dead!
  • 16.
  • 18. 2005 Four Guys Founder One DBA Two Developers Founder’s Apartment
  • 19. 2007 Maybe 10-15 Engineers Partitioned by Role Developers DBAs Ops
  • 20. 2009 Etsy Growth Spurt Workforce Doubled Doubling Again 4x Increase by 2010
  • 21. How Do We Organize? Ops — Five People Search — Five People The Rest??
  • 22.
  • 23.
  • 24.
  • 25. Re p o e r a te u c e n S e p a o l r, L Ja v a, S epo epo rm R a te R p l o y P l at f o MP S e p a r t De LA Di f fe re n epo Re p o Re p o ate R oDB e p a r o ng r a te s s S e p a r a te S S e p a rdp re u by l a, M Wo R Sc a
  • 26. What? Why? Too Big to be One Team SVN Repository was Too Big to be Just One Solution: Split the Workforce, Split the Repository
  • 27.
  • 28. SVN to Git in 1,000 Easy Git Fans using git-svn Git is Better Equipped to Handle the Mammoth Repository Merge the Repositories Together Devise a Workflow, Document It, Teach It Do the Switch!
  • 29.
  • 30. Divide and Merge Break-up By Customer or Necessary Technological Difference Create Constantly Changing Sub-Teams within Divisions Make it Easy to Move Between Focus Areas
  • 31. or k , e tc. t ac k Ex pe rt ise Jav a S a re , Ne t w H a rd w ome r C us t ome r C us t e the e the rs a r rs a r B u ye Se l le C us t ome r u i re d Si lo the y Re q g is Le gall ngi n eerin E
  • 33. DevOps Culture “Always Be Pushing” Developer Happiness We trust one another
  • 34. Continuous... Unceremoniously... Initiated By... Push Changes to Deployment Anyone Production Apply Quality Integration Anyone Process Release New Delivery Product Features
  • 35. Continuous... Unceremoniously... Initiated By... Push Changes to Deployment Anyone Production Apply Quality Integration Anyone Process o w? Release New ??? H Delivery Product Features
  • 36.
  • 38. Possible Takeaways Look Back on History to Avoid Repeating the Bad Parts Cultivating Culture Requires a Constant Concerted Effort Don’t Optimize Too Early Keep It Simple
  • 39. Thank You! Visit etsy.com Learn at codeascraft.com More on SlideShare
  • 40. Etsy Shop Photos TheSundayFlower * DreamingInCraft SavageJulietteJewels * TKfindz SewFab1 * YouMeSittingInATree JLMould SingleStoneStudios * EllanaCouture iSew Cufflinks PreettySandHu GimmCat ExLibrisJournals * TwirlsWithPearls ChalkStyle * Shop Curated in Cincinnati

Notes de l'éditeur

  1. TheSundayFlower\nSavageJullietJewels\nSewFab1\n
  2. \n
  3. Handmade, Vintage, Supplies\nHow Founded...\n15 Million Members\n>800,000 shops\n$525.6 Million in sales in 2011\n
  4. My First Etsy 2006\nMy Wedding Dress 2010\nMy First Halloween at Etsy\n
  5. Community at Large\nTop Tips for Etsy Sellers include:\nTeams!\nHome for the Holidays\n
  6. \n
  7. \n
  8. This is taking off\nEngineers excited to engineer\n
  9. 2005 only 3 Guys\nBoing, Boing August 4 Guys\n2006 and 2007... something like\n
  10. Conway’s Law\n
  11. \n
  12. Promises\nAbstraction can buy you flexibility, maybe this did\n
  13. The Good\n
  14. The Bad\n
  15. Took a Year to implement\nTwo Year’s to take down\n
  16. What Changed?\nCulture Shift\nChad Dickerson\nInvolved several engineers leaving\n
  17. Next battle\n
  18. Before alluded to Four Guys\n
  19. Partitioned roles that led to Sprouter\n
  20. 15 to 30 to 60\n5 people in the 3 partions\nbut 20?\n
  21. Ops - Hardware\nSearch - Acquired Adtuitive, Java stack\nThe other 50?? and growing??\nHow to organize is a question that plagues every company at some point\n
  22. Can’t Just have a cloud\n
  23. First crack\n20 per team also hard\n5 to 7 is an ideal team size\n
  24. Something like this while we were at 40-50\n
  25. But we went further\n
  26. \n
  27. All depended on the core libraries anyways\nWrapper tools\n“Smelled of unicorn”\n
  28. Blog post on codeascraft.com\n
  29. Current attempt looks something like this\n-next-\n
  30. \n
  31. \n
  32. 2010 DevOps and Actual Continuous Deployment\nWhat we normally talk about...\n
  33. Our commandments\n
  34. What I usually explain\n
  35. Done with first Two\nHow to get the third\n
  36. I showed this earlier\nProduct is the third piece of the puzzle\nIncludes product management, design, quality\n
  37. Growing a community with the product\nGrowing a community structure similarly inside to maintain and create more\nThis was about learning lessons\n
  38. Possible Takeaways\n
  39. Visit Etsy, checkout the 60 pages worth of local artisans\nSee how code is our craft on the product engineering side\nView our previous slide decks for more information on these topics\n
  40. \n