SlideShare a Scribd company logo
1 of 41
Back-end Guild Manifesto
Guild Objectives
• Dev velocity & developer productivity
• Ensure products meet Wix production quality
• Promote code quality and maintainability
• Be the glue between the different groups.
• Teach and promote Wix culture
• Promote transparency
• Enabling the overall alignments
• Knowledge share
• Provide professional guidelines & tool-set
• Responsible for the professional development of the guild members
(training, workshops, conferences etc.)
esponsibility
wnership
uality
haring
• Software architecture
• Data architecture
• Scalability
• Performance
• Availability
• Fallbacks
• Monitoring
• Maintenance
• Deployment
• Networking
• Recovery
Back-end engineer’s responsibilities
Help groups to be more efficient
Understand developer’s time wasters and solve
them.
Provide feedback on infrastructure & dev
experience.
Manage dependencies (system & organization).
Smart use of shared infrastructure and code
base.
Dev velocity
Build tools for developers
Development infrastructure improvements (build
tools, deployment system…)
Platform infrastructure & framework
Looking into the future
Code quality.
Shared lesson learned.
Code maintainability.
Support company growth.
Knowledge share and alignments
1 on 1 mentoring
Develop training courses content
Mentoring
Workshops
Tech talks
Ensure production level quality
Best practices.
Post-mortem.
Peer review.
Production debuging .
Teach and share best practices
Project spotlight
Retrospective
Bug Hunts
Post mortems
Attract & Keep top talent
Build and enhance R&D Brand.
Engineers professional development .
Professional development & R&D brand
Tech talks
Blog posts
Pair programing
Meetups
Open source
When do you meet the guild
Before coming
to Wix
• Attract and recruit talent
When you join
• New employee training (Kickstart /
Pairing)
Daily
• Dedicated “guild masters” working
continuously with the teams
Dedicated time
• Guild day
New Employee Training
Culture
Knowledge gaps (TDD, Scala, Java, Design…)
Production scale (Patterns, Best practices…)
Continuous delivery
DevOps
Guild Masters
• Distribute knowledge cross teams
• Teach best practices
• Help in execution
• Help in education
• Review architecture
Guild masters are the guild’s top engineers dedicated to support
different groups
Guild Day
• Engineers work 4 days for their company
• Thursday is Guild day.
• Developers conduct quality enhancing
activities with the Guild.
Guild Day – Why?
• Builds cross-team relationships
• Shares knowledge
• Assimilate the culture
• Lesson learned cross teams
• Continuous improvement
• Promotes innovation
• Professional development
Weekdays guild activities:
Sun,Tue,Wed 10:15-10:30 – Representatives daily​
Mon 10:15-10:45 - Weekly meeting + Bug hunt
​Thu - Guild day​
​Guild day schedule:
10:00-11:00 Retrospec​tive
11:00-11:15 Break
11:15-11:30 Project spotlight
​11:30-13:00 Tech talk or Workshop
13:00- End of day: Lunch + Guild tasks (Games of
Gangs)
Production Bug Hunt
• Service owner picks a service running on production
• Open the monitoring system
• Explains the service to all Guild’s members
– What the service does
– Exceptions thrown in production
– Performance matrix
– Build warnings
• Get a list of AI from group feedback (sometimes for
dependent services)
Production Bug Hunt - Why?
• Improve service stability
• Teach developers about services they don’t own
• Understand how services behave on production
• Open discussion and ideas from guild members
• Discover unexpected use patterns
• Find bugs on production
• Lessons learned from other teams experience
Retrospective
• Main tool for continuous improvement
• Share lesson learned.
• Solve problems
• Suggestions on how to improve:
– Our team
– Quality of products
– Process
– Effectiveness of the R&D organization.
Retrospective – How ?
• Whenever developers encounter issues /
dilemmas, they are encouraged to post them
on a board (daPulse) for public discussion
• Topics posted on the board during the week
constitute the agenda for the retrospective
Retrospective – Board
Tech Talks
• Developers give a tech talks every week
• People from other departments in the company
• Guest speakers
• Open to anyone from Wix
• Using Meetup http://www.meetup.com/at-wix/
to invite outsiders to our internal talks (if
appropriate)
• Talks videos http://goo.gl/IDqXTi
Tech Talks – Why ?
• Training employees
• Knowledge sharing
• Educating about other activities at Wix
• Professional development
• Recruitment funnel
Project Spotlight
• Team presents an interesting project
• Present the new product
• Present the challenges
• Share interesting patterns / architecture
• Lessons learned
Empower a Company (Group)
• When a company/group needs help it can
request the Guild members to help in:
– Reviews
– Tests
– Infrastructure enhancements
– Training
– Extra manpower
Games of Gangs – Guild Tasks
• Build tools that help developers
• Enhance platform / framework
• Pay legacy technical debt
• Improve tests
• Research something new for your company
• Work on a task for a different group
• Work on an open source project
• 1 on 1 mentoring
Games of Gangs Objectives
• Improve code quality
• Improve developer productivity
• Find repeating patterns across projects - generalize
a solution or improve the infrastructure
• Learn other projects (easier to step in if necessary)
• Unbiased review of other projects
• Learn about problems and solutions other teams
faced and solved that you may also encounter.
• It fun and breaks the day to day routine
How it is Done
• Tasks are being done in pair programing (pair
with a developer from a different group)
• For each task you make you get bragging points
• Tasks are being suggested on a public board by
the developers
• Tasks need to meet one of the following
motivations (Improve quality, productivity, help
on a different project or knowledge sharing).
Games of Gangs Task Board
0pt - Single person task
1pt - Blog post or other branding activities
2pt - Pair with someone in your team
3pts - Pair programming with a person from a different group
3pts - Tech talk for the guild
4pts - Tech talk in dedicated meetups and conferences
4pts - Pair with off-shore developer
Project Rotation within company
• Team usually has more than one project
• Avoid having one developer working on same
service for long period of time
Project Rotation within company– Why?
• There is no single person with a knowledge on
a specific component
• Ongoing review
• Keep it interesting
• Team is the 24/7/365 production focal point
• Everybody owns everything
CFO asks CEO: “What happens if we
invest in developing our people and they
leave us?”
CEO: “What happened if we don’t and
they stay?”
Wix.com Back-end Engineering Guild Manifesto

More Related Content

What's hot

Agile testing - Testing From Day 1
Agile testing - Testing From Day 1Agile testing - Testing From Day 1
Agile testing - Testing From Day 1Kaizenko
 
New Lean-Agile Coach self-assessment radars v3.2
New Lean-Agile Coach self-assessment radars v3.2New Lean-Agile Coach self-assessment radars v3.2
New Lean-Agile Coach self-assessment radars v3.2Luca Minudel
 
The Product Management Vacuum and the 3 V's
The Product Management Vacuum and the 3 V'sThe Product Management Vacuum and the 3 V's
The Product Management Vacuum and the 3 V'sDon McGreal
 
Scrum Training (One Day)
Scrum Training (One Day)Scrum Training (One Day)
Scrum Training (One Day)beLithe
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test AutomationNaveen Kumar Singh
 
ISTQB Agile Extension
ISTQB Agile ExtensionISTQB Agile Extension
ISTQB Agile ExtensionDavis Thomas
 
Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...
Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...
Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...Amazon Web Services
 
Scrum - Agile Methodology
Scrum - Agile MethodologyScrum - Agile Methodology
Scrum - Agile MethodologyNiel Deckx
 
Certified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photosCertified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photosAlexey Krivitsky
 
Scrum guide presentation (Scrum Guide in easy to read PPT format)
Scrum guide presentation (Scrum Guide in easy to read PPT format)Scrum guide presentation (Scrum Guide in easy to read PPT format)
Scrum guide presentation (Scrum Guide in easy to read PPT format)Aloke Bhattacharya
 
Agile retrospectives
Agile retrospectivesAgile retrospectives
Agile retrospectivesToni Tassani
 

What's hot (20)

Retrospectives
RetrospectivesRetrospectives
Retrospectives
 
Agile testing - Testing From Day 1
Agile testing - Testing From Day 1Agile testing - Testing From Day 1
Agile testing - Testing From Day 1
 
Test Strategy
Test StrategyTest Strategy
Test Strategy
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
 
Introduction to Scrum@Scale
Introduction to Scrum@ScaleIntroduction to Scrum@Scale
Introduction to Scrum@Scale
 
New Lean-Agile Coach self-assessment radars v3.2
New Lean-Agile Coach self-assessment radars v3.2New Lean-Agile Coach self-assessment radars v3.2
New Lean-Agile Coach self-assessment radars v3.2
 
The Product Management Vacuum and the 3 V's
The Product Management Vacuum and the 3 V'sThe Product Management Vacuum and the 3 V's
The Product Management Vacuum and the 3 V's
 
Scrum Training (One Day)
Scrum Training (One Day)Scrum Training (One Day)
Scrum Training (One Day)
 
QA in Agile World
QA in Agile WorldQA in Agile World
QA in Agile World
 
Agile Testing by Example
Agile Testing by ExampleAgile Testing by Example
Agile Testing by Example
 
Ale2015 Agile Facilitation
Ale2015 Agile FacilitationAle2015 Agile Facilitation
Ale2015 Agile Facilitation
 
Agile Retrospectives
Agile RetrospectivesAgile Retrospectives
Agile Retrospectives
 
Learn Spotify (an Agile Framework)
Learn Spotify (an Agile Framework)Learn Spotify (an Agile Framework)
Learn Spotify (an Agile Framework)
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
 
ISTQB Agile Extension
ISTQB Agile ExtensionISTQB Agile Extension
ISTQB Agile Extension
 
Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...
Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...
Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...
 
Scrum - Agile Methodology
Scrum - Agile MethodologyScrum - Agile Methodology
Scrum - Agile Methodology
 
Certified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photosCertified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photos
 
Scrum guide presentation (Scrum Guide in easy to read PPT format)
Scrum guide presentation (Scrum Guide in easy to read PPT format)Scrum guide presentation (Scrum Guide in easy to read PPT format)
Scrum guide presentation (Scrum Guide in easy to read PPT format)
 
Agile retrospectives
Agile retrospectivesAgile retrospectives
Agile retrospectives
 

Viewers also liked

Microservices - it's déjà vu all over again
Microservices  - it's déjà vu all over againMicroservices  - it's déjà vu all over again
Microservices - it's déjà vu all over againArnon Rotem-Gal-Oz
 
Scaling wix.com to 100 million users
Scaling wix.com to 100 million users Scaling wix.com to 100 million users
Scaling wix.com to 100 million users Aviran Mordo
 
Microservices and Redis #redisconf Keynote
Microservices and Redis #redisconf KeynoteMicroservices and Redis #redisconf Keynote
Microservices and Redis #redisconf KeynoteChris Richardson
 
Building reliable systems from unreliable components
Building reliable systems from unreliable componentsBuilding reliable systems from unreliable components
Building reliable systems from unreliable componentsArnon Rotem-Gal-Oz
 
Scaling Wix engineering
Scaling Wix engineering Scaling Wix engineering
Scaling Wix engineering Aviran Mordo
 
Handling Eventual Consistency in JVM Microservices with Event Sourcing (javao...
Handling Eventual Consistency in JVM Microservices with Event Sourcing (javao...Handling Eventual Consistency in JVM Microservices with Event Sourcing (javao...
Handling Eventual Consistency in JVM Microservices with Event Sourcing (javao...Chris Richardson
 
Scaling wix with microservices architecture devoxx London 2015
Scaling wix with microservices architecture devoxx London 2015Scaling wix with microservices architecture devoxx London 2015
Scaling wix with microservices architecture devoxx London 2015Aviran Mordo
 

Viewers also liked (7)

Microservices - it's déjà vu all over again
Microservices  - it's déjà vu all over againMicroservices  - it's déjà vu all over again
Microservices - it's déjà vu all over again
 
Scaling wix.com to 100 million users
Scaling wix.com to 100 million users Scaling wix.com to 100 million users
Scaling wix.com to 100 million users
 
Microservices and Redis #redisconf Keynote
Microservices and Redis #redisconf KeynoteMicroservices and Redis #redisconf Keynote
Microservices and Redis #redisconf Keynote
 
Building reliable systems from unreliable components
Building reliable systems from unreliable componentsBuilding reliable systems from unreliable components
Building reliable systems from unreliable components
 
Scaling Wix engineering
Scaling Wix engineering Scaling Wix engineering
Scaling Wix engineering
 
Handling Eventual Consistency in JVM Microservices with Event Sourcing (javao...
Handling Eventual Consistency in JVM Microservices with Event Sourcing (javao...Handling Eventual Consistency in JVM Microservices with Event Sourcing (javao...
Handling Eventual Consistency in JVM Microservices with Event Sourcing (javao...
 
Scaling wix with microservices architecture devoxx London 2015
Scaling wix with microservices architecture devoxx London 2015Scaling wix with microservices architecture devoxx London 2015
Scaling wix with microservices architecture devoxx London 2015
 

Similar to Wix.com Back-end Engineering Guild Manifesto

Scaling r&d org while maintaining quality
Scaling r&d org while maintaining qualityScaling r&d org while maintaining quality
Scaling r&d org while maintaining qualityAviran Mordo
 
Steve loos agile operationalizing your org
Steve loos   agile operationalizing your orgSteve loos   agile operationalizing your org
Steve loos agile operationalizing your orgPaul Ellarby
 
Design thinking: Building a developer experience from scratch
Design thinking: Building a developer experience from scratchDesign thinking: Building a developer experience from scratch
Design thinking: Building a developer experience from scratchBecky Todd
 
DevTalk: The Road to Continuous Delivery: Driving Lessons
DevTalk: The Road to Continuous Delivery: Driving LessonsDevTalk: The Road to Continuous Delivery: Driving Lessons
DevTalk: The Road to Continuous Delivery: Driving LessonsPerforce
 
XebiCon'17 : //Tam-tams// Voici l’histoire de la disparition des dinosaures d...
XebiCon'17 : //Tam-tams// Voici l’histoire de la disparition des dinosaures d...XebiCon'17 : //Tam-tams// Voici l’histoire de la disparition des dinosaures d...
XebiCon'17 : //Tam-tams// Voici l’histoire de la disparition des dinosaures d...Publicis Sapient Engineering
 
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareLessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareDevOps for Enterprise Systems
 
SharePoint Saturday Cambridge 2017: Training your organisation on Office 365
SharePoint Saturday Cambridge 2017: Training your organisation on Office 365SharePoint Saturday Cambridge 2017: Training your organisation on Office 365
SharePoint Saturday Cambridge 2017: Training your organisation on Office 365Marijn Somers
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - UXPA International
 
Transition to feature teams - Gil Wasserman - Agile Israel 2013
Transition to feature teams - Gil Wasserman - Agile Israel 2013Transition to feature teams - Gil Wasserman - Agile Israel 2013
Transition to feature teams - Gil Wasserman - Agile Israel 2013AgileSparks
 
Intro agile development methodology abhilash chandran
Intro agile development methodology   abhilash chandranIntro agile development methodology   abhilash chandran
Intro agile development methodology abhilash chandranAbhilash Chandran
 
[Case Study] Adopting an Agile Content Development Process with Debra Brinson...
[Case Study] Adopting an Agile Content Development Process with Debra Brinson...[Case Study] Adopting an Agile Content Development Process with Debra Brinson...
[Case Study] Adopting an Agile Content Development Process with Debra Brinson...Information Development World
 
Design your own BPM Program Strategy with Alfresco Process Services
Design your own BPM Program Strategy with Alfresco Process ServicesDesign your own BPM Program Strategy with Alfresco Process Services
Design your own BPM Program Strategy with Alfresco Process ServicesPiergiorgio Lucidi
 
Progettare la propria strategia di BPM per Alfresco Process Services
Progettare la propria strategia di BPM per Alfresco Process ServicesProgettare la propria strategia di BPM per Alfresco Process Services
Progettare la propria strategia di BPM per Alfresco Process ServicesCommit University
 
Just Married: User Centered Design and Agile
Just Married: User Centered Design and AgileJust Married: User Centered Design and Agile
Just Married: User Centered Design and AgileMemi Beltrame
 
Gearing Startups for Success through Product Engineering
Gearing Startups for Success through Product EngineeringGearing Startups for Success through Product Engineering
Gearing Startups for Success through Product Engineering99X Technology
 
How to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one roomHow to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one roomMatthias Luebken
 
Lightweight Documentation
Lightweight DocumentationLightweight Documentation
Lightweight DocumentationStephen Ritchie
 

Similar to Wix.com Back-end Engineering Guild Manifesto (20)

Scaling r&d org while maintaining quality
Scaling r&d org while maintaining qualityScaling r&d org while maintaining quality
Scaling r&d org while maintaining quality
 
Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016
 
Steve loos agile operationalizing your org
Steve loos   agile operationalizing your orgSteve loos   agile operationalizing your org
Steve loos agile operationalizing your org
 
Design thinking: Building a developer experience from scratch
Design thinking: Building a developer experience from scratchDesign thinking: Building a developer experience from scratch
Design thinking: Building a developer experience from scratch
 
DevTalk: The Road to Continuous Delivery: Driving Lessons
DevTalk: The Road to Continuous Delivery: Driving LessonsDevTalk: The Road to Continuous Delivery: Driving Lessons
DevTalk: The Road to Continuous Delivery: Driving Lessons
 
XebiCon'17 : //Tam-tams// Voici l’histoire de la disparition des dinosaures d...
XebiCon'17 : //Tam-tams// Voici l’histoire de la disparition des dinosaures d...XebiCon'17 : //Tam-tams// Voici l’histoire de la disparition des dinosaures d...
XebiCon'17 : //Tam-tams// Voici l’histoire de la disparition des dinosaures d...
 
Agile
AgileAgile
Agile
 
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareLessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
 
SharePoint Saturday Cambridge 2017: Training your organisation on Office 365
SharePoint Saturday Cambridge 2017: Training your organisation on Office 365SharePoint Saturday Cambridge 2017: Training your organisation on Office 365
SharePoint Saturday Cambridge 2017: Training your organisation on Office 365
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience -
 
Transition to feature teams - Gil Wasserman - Agile Israel 2013
Transition to feature teams - Gil Wasserman - Agile Israel 2013Transition to feature teams - Gil Wasserman - Agile Israel 2013
Transition to feature teams - Gil Wasserman - Agile Israel 2013
 
Intro agile development methodology abhilash chandran
Intro agile development methodology   abhilash chandranIntro agile development methodology   abhilash chandran
Intro agile development methodology abhilash chandran
 
[Case Study] Adopting an Agile Content Development Process with Debra Brinson...
[Case Study] Adopting an Agile Content Development Process with Debra Brinson...[Case Study] Adopting an Agile Content Development Process with Debra Brinson...
[Case Study] Adopting an Agile Content Development Process with Debra Brinson...
 
All Apps, What About Suport
All Apps, What About SuportAll Apps, What About Suport
All Apps, What About Suport
 
Design your own BPM Program Strategy with Alfresco Process Services
Design your own BPM Program Strategy with Alfresco Process ServicesDesign your own BPM Program Strategy with Alfresco Process Services
Design your own BPM Program Strategy with Alfresco Process Services
 
Progettare la propria strategia di BPM per Alfresco Process Services
Progettare la propria strategia di BPM per Alfresco Process ServicesProgettare la propria strategia di BPM per Alfresco Process Services
Progettare la propria strategia di BPM per Alfresco Process Services
 
Just Married: User Centered Design and Agile
Just Married: User Centered Design and AgileJust Married: User Centered Design and Agile
Just Married: User Centered Design and Agile
 
Gearing Startups for Success through Product Engineering
Gearing Startups for Success through Product EngineeringGearing Startups for Success through Product Engineering
Gearing Startups for Success through Product Engineering
 
How to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one roomHow to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one room
 
Lightweight Documentation
Lightweight DocumentationLightweight Documentation
Lightweight Documentation
 

More from Aviran Mordo

Platform as a Runtime - PaaR QCON 2024 - Final
Platform as a Runtime - PaaR QCON 2024 - FinalPlatform as a Runtime - PaaR QCON 2024 - Final
Platform as a Runtime - PaaR QCON 2024 - FinalAviran Mordo
 
Scaling Engineering by Hacking Conway’s Law - Geecon,2022
Scaling Engineering by Hacking Conway’s Law - Geecon,2022Scaling Engineering by Hacking Conway’s Law - Geecon,2022
Scaling Engineering by Hacking Conway’s Law - Geecon,2022Aviran Mordo
 
Arrested by the cap devoxx uk 2018
Arrested by the cap devoxx uk 2018Arrested by the cap devoxx uk 2018
Arrested by the cap devoxx uk 2018Aviran Mordo
 
Mircoservices, dev ops and Engineering best practices at Wix.com
Mircoservices, dev ops and Engineering best practices at Wix.comMircoservices, dev ops and Engineering best practices at Wix.com
Mircoservices, dev ops and Engineering best practices at Wix.comAviran Mordo
 
Scaling wix with microservices and multi cloud - 2015
Scaling wix with microservices and multi cloud - 2015Scaling wix with microservices and multi cloud - 2015
Scaling wix with microservices and multi cloud - 2015Aviran Mordo
 
Road to Continuous Delivery - Wix.com
Road to Continuous Delivery - Wix.comRoad to Continuous Delivery - Wix.com
Road to Continuous Delivery - Wix.comAviran Mordo
 
Advanced A/B Testing - Jax London 2015
Advanced A/B Testing - Jax London 2015Advanced A/B Testing - Jax London 2015
Advanced A/B Testing - Jax London 2015Aviran Mordo
 
Scaling wix with microservices architecture jax london-2015
Scaling wix with microservices architecture jax london-2015Scaling wix with microservices architecture jax london-2015
Scaling wix with microservices architecture jax london-2015Aviran Mordo
 
The Art of A/B Testing
The Art of A/B TestingThe Art of A/B Testing
The Art of A/B TestingAviran Mordo
 
Scaling Wix with microservices architecture and multi-cloud platforms - Reve...
 Scaling Wix with microservices architecture and multi-cloud platforms - Reve... Scaling Wix with microservices architecture and multi-cloud platforms - Reve...
Scaling Wix with microservices architecture and multi-cloud platforms - Reve...Aviran Mordo
 
Experimenting on Humans - Advanced A/B Tests - QCon SF 2014
Experimenting on Humans - Advanced A/B Tests - QCon SF 2014Experimenting on Humans - Advanced A/B Tests - QCon SF 2014
Experimenting on Humans - Advanced A/B Tests - QCon SF 2014Aviran Mordo
 
Wix Architecture at Scale - QCon London 2014
Wix Architecture at Scale - QCon London 2014Wix Architecture at Scale - QCon London 2014
Wix Architecture at Scale - QCon London 2014Aviran Mordo
 
Wix Dev-Centric Culture And Continuous Delivery
Wix Dev-Centric Culture And Continuous DeliveryWix Dev-Centric Culture And Continuous Delivery
Wix Dev-Centric Culture And Continuous DeliveryAviran Mordo
 
Introduction to HTTP protocol
Introduction to HTTP protocolIntroduction to HTTP protocol
Introduction to HTTP protocolAviran Mordo
 
Lessons Learned Monitoring Production
Lessons Learned Monitoring ProductionLessons Learned Monitoring Production
Lessons Learned Monitoring ProductionAviran Mordo
 
Strategies in continuous delivery
Strategies in continuous deliveryStrategies in continuous delivery
Strategies in continuous deliveryAviran Mordo
 
Scaling up to 30M users - The Wix Story
Scaling up to 30M users - The Wix StoryScaling up to 30M users - The Wix Story
Scaling up to 30M users - The Wix StoryAviran Mordo
 

More from Aviran Mordo (17)

Platform as a Runtime - PaaR QCON 2024 - Final
Platform as a Runtime - PaaR QCON 2024 - FinalPlatform as a Runtime - PaaR QCON 2024 - Final
Platform as a Runtime - PaaR QCON 2024 - Final
 
Scaling Engineering by Hacking Conway’s Law - Geecon,2022
Scaling Engineering by Hacking Conway’s Law - Geecon,2022Scaling Engineering by Hacking Conway’s Law - Geecon,2022
Scaling Engineering by Hacking Conway’s Law - Geecon,2022
 
Arrested by the cap devoxx uk 2018
Arrested by the cap devoxx uk 2018Arrested by the cap devoxx uk 2018
Arrested by the cap devoxx uk 2018
 
Mircoservices, dev ops and Engineering best practices at Wix.com
Mircoservices, dev ops and Engineering best practices at Wix.comMircoservices, dev ops and Engineering best practices at Wix.com
Mircoservices, dev ops and Engineering best practices at Wix.com
 
Scaling wix with microservices and multi cloud - 2015
Scaling wix with microservices and multi cloud - 2015Scaling wix with microservices and multi cloud - 2015
Scaling wix with microservices and multi cloud - 2015
 
Road to Continuous Delivery - Wix.com
Road to Continuous Delivery - Wix.comRoad to Continuous Delivery - Wix.com
Road to Continuous Delivery - Wix.com
 
Advanced A/B Testing - Jax London 2015
Advanced A/B Testing - Jax London 2015Advanced A/B Testing - Jax London 2015
Advanced A/B Testing - Jax London 2015
 
Scaling wix with microservices architecture jax london-2015
Scaling wix with microservices architecture jax london-2015Scaling wix with microservices architecture jax london-2015
Scaling wix with microservices architecture jax london-2015
 
The Art of A/B Testing
The Art of A/B TestingThe Art of A/B Testing
The Art of A/B Testing
 
Scaling Wix with microservices architecture and multi-cloud platforms - Reve...
 Scaling Wix with microservices architecture and multi-cloud platforms - Reve... Scaling Wix with microservices architecture and multi-cloud platforms - Reve...
Scaling Wix with microservices architecture and multi-cloud platforms - Reve...
 
Experimenting on Humans - Advanced A/B Tests - QCon SF 2014
Experimenting on Humans - Advanced A/B Tests - QCon SF 2014Experimenting on Humans - Advanced A/B Tests - QCon SF 2014
Experimenting on Humans - Advanced A/B Tests - QCon SF 2014
 
Wix Architecture at Scale - QCon London 2014
Wix Architecture at Scale - QCon London 2014Wix Architecture at Scale - QCon London 2014
Wix Architecture at Scale - QCon London 2014
 
Wix Dev-Centric Culture And Continuous Delivery
Wix Dev-Centric Culture And Continuous DeliveryWix Dev-Centric Culture And Continuous Delivery
Wix Dev-Centric Culture And Continuous Delivery
 
Introduction to HTTP protocol
Introduction to HTTP protocolIntroduction to HTTP protocol
Introduction to HTTP protocol
 
Lessons Learned Monitoring Production
Lessons Learned Monitoring ProductionLessons Learned Monitoring Production
Lessons Learned Monitoring Production
 
Strategies in continuous delivery
Strategies in continuous deliveryStrategies in continuous delivery
Strategies in continuous delivery
 
Scaling up to 30M users - The Wix Story
Scaling up to 30M users - The Wix StoryScaling up to 30M users - The Wix Story
Scaling up to 30M users - The Wix Story
 

Recently uploaded

Python Programming for basic beginners.pptx
Python Programming for basic beginners.pptxPython Programming for basic beginners.pptx
Python Programming for basic beginners.pptxmohitesoham12
 
Novel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending ActuatorsNovel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending ActuatorsResearcher Researcher
 
11. Properties of Liquid Fuels in Energy Engineering.pdf
11. Properties of Liquid Fuels in Energy Engineering.pdf11. Properties of Liquid Fuels in Energy Engineering.pdf
11. Properties of Liquid Fuels in Energy Engineering.pdfHafizMudaserAhmad
 
Research Methodology for Engineering pdf
Research Methodology for Engineering pdfResearch Methodology for Engineering pdf
Research Methodology for Engineering pdfCaalaaAbdulkerim
 
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...Stork Webinar | APM Transformational planning, Tool Selection & Performance T...
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...Stork
 
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESCME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESkarthi keyan
 
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书rnrncn29
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfBalamuruganV28
 
Immutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdfImmutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdfDrew Moseley
 
Turn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxTurn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxStephen Sitton
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating SystemRashmi Bhat
 
OOP concepts -in-Python programming language
OOP concepts -in-Python programming languageOOP concepts -in-Python programming language
OOP concepts -in-Python programming languageSmritiSharma901052
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxRomil Mishra
 
Ch10-Global Supply Chain - Cadena de Suministro.pdf
Ch10-Global Supply Chain - Cadena de Suministro.pdfCh10-Global Supply Chain - Cadena de Suministro.pdf
Ch10-Global Supply Chain - Cadena de Suministro.pdfChristianCDAM
 
List of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfList of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfisabel213075
 
signals in triangulation .. ...Surveying
signals in triangulation .. ...Surveyingsignals in triangulation .. ...Surveying
signals in triangulation .. ...Surveyingsapna80328
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdfAkritiPradhan2
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxsiddharthjain2303
 
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTSneha Padhiar
 
Earthing details of Electrical Substation
Earthing details of Electrical SubstationEarthing details of Electrical Substation
Earthing details of Electrical Substationstephanwindworld
 

Recently uploaded (20)

Python Programming for basic beginners.pptx
Python Programming for basic beginners.pptxPython Programming for basic beginners.pptx
Python Programming for basic beginners.pptx
 
Novel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending ActuatorsNovel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending Actuators
 
11. Properties of Liquid Fuels in Energy Engineering.pdf
11. Properties of Liquid Fuels in Energy Engineering.pdf11. Properties of Liquid Fuels in Energy Engineering.pdf
11. Properties of Liquid Fuels in Energy Engineering.pdf
 
Research Methodology for Engineering pdf
Research Methodology for Engineering pdfResearch Methodology for Engineering pdf
Research Methodology for Engineering pdf
 
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...Stork Webinar | APM Transformational planning, Tool Selection & Performance T...
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...
 
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESCME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
 
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdf
 
Immutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdfImmutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdf
 
Turn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxTurn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptx
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating System
 
OOP concepts -in-Python programming language
OOP concepts -in-Python programming languageOOP concepts -in-Python programming language
OOP concepts -in-Python programming language
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptx
 
Ch10-Global Supply Chain - Cadena de Suministro.pdf
Ch10-Global Supply Chain - Cadena de Suministro.pdfCh10-Global Supply Chain - Cadena de Suministro.pdf
Ch10-Global Supply Chain - Cadena de Suministro.pdf
 
List of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfList of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdf
 
signals in triangulation .. ...Surveying
signals in triangulation .. ...Surveyingsignals in triangulation .. ...Surveying
signals in triangulation .. ...Surveying
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptx
 
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
 
Earthing details of Electrical Substation
Earthing details of Electrical SubstationEarthing details of Electrical Substation
Earthing details of Electrical Substation
 

Wix.com Back-end Engineering Guild Manifesto

  • 2. Guild Objectives • Dev velocity & developer productivity • Ensure products meet Wix production quality • Promote code quality and maintainability • Be the glue between the different groups. • Teach and promote Wix culture • Promote transparency • Enabling the overall alignments • Knowledge share • Provide professional guidelines & tool-set • Responsible for the professional development of the guild members (training, workshops, conferences etc.)
  • 3.
  • 5.
  • 6.
  • 7. • Software architecture • Data architecture • Scalability • Performance • Availability • Fallbacks • Monitoring • Maintenance • Deployment • Networking • Recovery Back-end engineer’s responsibilities
  • 8.
  • 9. Help groups to be more efficient Understand developer’s time wasters and solve them. Provide feedback on infrastructure & dev experience. Manage dependencies (system & organization). Smart use of shared infrastructure and code base.
  • 10. Dev velocity Build tools for developers Development infrastructure improvements (build tools, deployment system…) Platform infrastructure & framework
  • 11. Looking into the future Code quality. Shared lesson learned. Code maintainability. Support company growth.
  • 12. Knowledge share and alignments 1 on 1 mentoring Develop training courses content Mentoring Workshops Tech talks
  • 13. Ensure production level quality Best practices. Post-mortem. Peer review. Production debuging .
  • 14. Teach and share best practices Project spotlight Retrospective Bug Hunts Post mortems
  • 15. Attract & Keep top talent Build and enhance R&D Brand. Engineers professional development .
  • 16. Professional development & R&D brand Tech talks Blog posts Pair programing Meetups Open source
  • 17. When do you meet the guild Before coming to Wix • Attract and recruit talent When you join • New employee training (Kickstart / Pairing) Daily • Dedicated “guild masters” working continuously with the teams Dedicated time • Guild day
  • 18. New Employee Training Culture Knowledge gaps (TDD, Scala, Java, Design…) Production scale (Patterns, Best practices…) Continuous delivery DevOps
  • 19. Guild Masters • Distribute knowledge cross teams • Teach best practices • Help in execution • Help in education • Review architecture Guild masters are the guild’s top engineers dedicated to support different groups
  • 20.
  • 21. Guild Day • Engineers work 4 days for their company • Thursday is Guild day. • Developers conduct quality enhancing activities with the Guild.
  • 22. Guild Day – Why? • Builds cross-team relationships • Shares knowledge • Assimilate the culture • Lesson learned cross teams • Continuous improvement • Promotes innovation • Professional development
  • 23. Weekdays guild activities: Sun,Tue,Wed 10:15-10:30 – Representatives daily​ Mon 10:15-10:45 - Weekly meeting + Bug hunt ​Thu - Guild day​ ​Guild day schedule: 10:00-11:00 Retrospec​tive 11:00-11:15 Break 11:15-11:30 Project spotlight ​11:30-13:00 Tech talk or Workshop 13:00- End of day: Lunch + Guild tasks (Games of Gangs)
  • 24. Production Bug Hunt • Service owner picks a service running on production • Open the monitoring system • Explains the service to all Guild’s members – What the service does – Exceptions thrown in production – Performance matrix – Build warnings • Get a list of AI from group feedback (sometimes for dependent services)
  • 25. Production Bug Hunt - Why? • Improve service stability • Teach developers about services they don’t own • Understand how services behave on production • Open discussion and ideas from guild members • Discover unexpected use patterns • Find bugs on production • Lessons learned from other teams experience
  • 26. Retrospective • Main tool for continuous improvement • Share lesson learned. • Solve problems • Suggestions on how to improve: – Our team – Quality of products – Process – Effectiveness of the R&D organization.
  • 27. Retrospective – How ? • Whenever developers encounter issues / dilemmas, they are encouraged to post them on a board (daPulse) for public discussion • Topics posted on the board during the week constitute the agenda for the retrospective
  • 29.
  • 30. Tech Talks • Developers give a tech talks every week • People from other departments in the company • Guest speakers • Open to anyone from Wix • Using Meetup http://www.meetup.com/at-wix/ to invite outsiders to our internal talks (if appropriate) • Talks videos http://goo.gl/IDqXTi
  • 31. Tech Talks – Why ? • Training employees • Knowledge sharing • Educating about other activities at Wix • Professional development • Recruitment funnel
  • 32. Project Spotlight • Team presents an interesting project • Present the new product • Present the challenges • Share interesting patterns / architecture • Lessons learned
  • 33. Empower a Company (Group) • When a company/group needs help it can request the Guild members to help in: – Reviews – Tests – Infrastructure enhancements – Training – Extra manpower
  • 34. Games of Gangs – Guild Tasks • Build tools that help developers • Enhance platform / framework • Pay legacy technical debt • Improve tests • Research something new for your company • Work on a task for a different group • Work on an open source project • 1 on 1 mentoring
  • 35. Games of Gangs Objectives • Improve code quality • Improve developer productivity • Find repeating patterns across projects - generalize a solution or improve the infrastructure • Learn other projects (easier to step in if necessary) • Unbiased review of other projects • Learn about problems and solutions other teams faced and solved that you may also encounter. • It fun and breaks the day to day routine
  • 36. How it is Done • Tasks are being done in pair programing (pair with a developer from a different group) • For each task you make you get bragging points • Tasks are being suggested on a public board by the developers • Tasks need to meet one of the following motivations (Improve quality, productivity, help on a different project or knowledge sharing).
  • 37. Games of Gangs Task Board 0pt - Single person task 1pt - Blog post or other branding activities 2pt - Pair with someone in your team 3pts - Pair programming with a person from a different group 3pts - Tech talk for the guild 4pts - Tech talk in dedicated meetups and conferences 4pts - Pair with off-shore developer
  • 38. Project Rotation within company • Team usually has more than one project • Avoid having one developer working on same service for long period of time
  • 39. Project Rotation within company– Why? • There is no single person with a knowledge on a specific component • Ongoing review • Keep it interesting • Team is the 24/7/365 production focal point • Everybody owns everything
  • 40. CFO asks CEO: “What happens if we invest in developing our people and they leave us?” CEO: “What happened if we don’t and they stay?”

Editor's Notes

  1. זה לא מספיק להיות מעורב, התרבות והפעילות חשובות לא פחות
  2. It is not just development it is production maintenance