SlideShare une entreprise Scribd logo
1  sur  40
Télécharger pour lire hors ligne
Onboarding
at Scale
Tomer Gabel
Velocity 2016 Amsterdam
Image: Akheree Monajat (CC BY-SA 3.0)
Wix is…
• A web publishing platform
• Distributed R&D
– Tel-Aviv (Israel)
– Be’er-Sheva (Israel)
– Dnipropetrovsk (Ukraine)
– Kiev (Ukraine)
– Vilnius (Lithuania)
• Growing rapidly
– Jul 2013: 120 engineers
– Now: 400+ engineers
Scaling up is hard
Fundamental premise:
RESEARCHImage: Martine Perret / UNMEER (CC BY-ND 2.0)
Guilds and Companies
Company
Guild
Our Customers
Server Guild
React Guild
NG Guild
Challenges
Onboarding
Doctrine
Recruiting
Proposed Solution:
Product Suite
KickstartTraining Kit Crash Course
Images: Jeff Robins (CC BY 2.0), Vernon Cunningham (Public Domain), Paul Fisher (CC BY-SA 2.0)
Training Kit
Training Kit: Customers
As a Guild Lead, I want to:
• Start onboarding early
• Reduce overhead
• Have quality reference
material
Image: KCNA
Training Kit: Customers
As a Team Lead, I want to:
• Simplify training of new
hires
• Minimize disruption to
my team
• Have quality reference
material
Image: John Kennicutt, USMC (Public Domain)
Training Kit: Customers
As a new hire, I want to:
• Understand the
technology stack
• Be productive quickly
• Learn on my own
(and not be a pest)
Image: Cubmundo (BY-SA 2.0)
Training Kit: Design Goals
Guided self-learning
Customizable
Based on external resources
Kickoff
• Meet the Guild Lead
– Validate assumptions
– Identify key (technical)
partners
• Scope definition
– Meet key partners
– Set scope and expectations
– Generate “bucket list” of
desirable topics
• Review and prioritize
Development
• Guild Days
– Ask for some volunteers
– Host them for a full day
– Volunteers pick subjects
– Volunteers search &
evaluate material
Development
• Postprocessing
– By a professional
training developer
– Wording, formatting
– Consistent structure
Feedback Collection
• Per-subject feedback
– Simple web form
– Highlights substantial issues (if
any)
• Guild Day (one-off)
– Technical review by experts
• Interviews (one-off)
– Team leads
– New hires
Lessons Learned
Assumptions
• Content
– Only developers can
evaluate content
– Minor post-processing
– Focus on learning
• Structure
– Topics are atomic units
– Customizable set/order
Reality
– Dedicated professional
can take over
– Most of the actual work
– Need actionable content
(exercises, koans etc.)
– Topics are interrelated
– Modules are necessary
Lessons Learned
Assumptions
• Marketing
– R&D will self-market
– No need for special effort
• Maintenance
– Mostly ad-hoc
– Developer pull requests
• Future efforts
– Proper UX
Reality
– Little known, little used
– Initial push insufficient
– Constant, significant work
– Little participation
– Not that useful, for now
So what’s next?
1. Dedicated
content/training
developer
2. Revise structure for
modularity
3. Significant in-house
marketing effort
Image: Booyabazooka (CC BY-SA 3.0)
Kickstart
Kickstart: Overview
Takes juniors as input, outputs web developers
9 weeks, fully salaried
End result: professional web developers
Kickstart: Tiers
1. Individual self-learning
2. Teamwork and agile methods
3. Full product lifecycle
Kickstart: Challenges
Expensive (salaries, resources)
Tightly coupled recruiting effort
Mentorship and preparation
Recruitment
• Unique requirements
– Experience/skill level
– Recruiting in bulk
– Cost mitigation
• A dedicated pipeline
– “Recruiting days”
– Carefully orchestrated
Lessons Learned
Why do this?
• The social element
– Company culture
– Built-in “buddy system”
• Sustainable recruiting
– Easy to plan for
– Marketing-bound, really
– Great people!
Why not?
• Expensive
– Facilities, staff, amenities…
– And fully salaried to boot
• Hard to do consistently
– Staff turnover
– Buy-in is a constant effort
– Dedicated staff is critical
Crash
Course
Crash Course: Overview
Mid- to senior-level onboarding course
Recurring, every ~2 months
3 weeks
End result: a working MVP
Crash Course: Rationale
End-to-end production experience
Groups mimic team structure
Focus on methodology, philosophy
Crash Course: Challenges
Cost-prohibitive below 10 participants
Requires mix of server/front-end
Mentorship and preparation
Planning
• Week 1: Ramp-up
– Heavy on doctrine (TDD, CD)
– Tech stack (Scala, TypeScript)
• Weeks 2-3: Project time
– Guided bootstrapping
– Constant mentorship
Lessons Learned
Why do this?
• Break down the wall
– The server-client divide
– Reinforce TDD, CD etc.
– Makes our stack accessible
• Reduces new employee
friction
• Huge marketing boon
Lessons Learned
Why not?
• Expensive
– Facilities, staff, amenities…
– And fully salaried to boot
• Tight scheduling
– Lots of ad-hoc adjustments
– Everything needs a backup
• Minimal recruiting rate
Image: Jenny Poole (CC BY 2.0)
POST-MORTEMImage: Daniel X. O’Neil (CC BY 2.0)
Lessons Learned
• These are long-
running projects
• For best results:
– Assign dedicated staff
– Long-term
• This means you can’t
rely on engineers
– Trust me, I am one…
Program
Manager
Project
Manager
Training
Developer
Lessons Learned
• Scaling up is hard
• Doing it ad-hoc works!
• Until it doesn’t
– It’s not about size
– It’s about growth
• Consider ROI carefully!
Image: Damian Gadal (CC BY 2.0)
Lessons Learned
• Mentors are your biggest asset
– You need their buy-in
– You need them to come back
• Give them what they need
– “Soft skills” workshops, simulations
– Expectation setting and guidance
– Hold status/venting sessions. Pay attention!
Lessons Learned
• These are big projects
• Success is about logistics
– Huge todo list
– Scheduling hell
– Constant interruptions
– Follow-ups
• That’s a lot to keep track of
• Hire a Project Manager.
“Behind every great
leader there was an
even greater
logistician.”
- M. Cox
Image: Rom Logistics (CC BY-SA 3.0)
QUESTIONS?
Thank you for listening
tomer@tomergabel.com
@tomerg
http://engineering.wix.com
To contact Wix academy (ask us anything!):
academy@wix.com
This work is licensed under a Creative
Commons Attribution-ShareAlike 4.0
International License.

Contenu connexe

Similaire à Onboarding at Scale

Technical stories v1.2
Technical stories v1.2Technical stories v1.2
Technical stories v1.2Jim Brisson
 
Technical Excellence Doesn't Just Happen - AgileIndy 2016
Technical Excellence Doesn't Just Happen - AgileIndy 2016Technical Excellence Doesn't Just Happen - AgileIndy 2016
Technical Excellence Doesn't Just Happen - AgileIndy 2016Allison Pollard
 
CHAMP MOOC Meeting Feb 13 2014
CHAMP MOOC Meeting Feb 13 2014CHAMP MOOC Meeting Feb 13 2014
CHAMP MOOC Meeting Feb 13 2014cccschamp
 
New experiential Masters online
New experiential Masters onlineNew experiential Masters online
New experiential Masters onlineMICProductivity
 
Neo4j GraphDay Munich - How to make your GraphDB project successful
Neo4j GraphDay Munich - How to make your GraphDB project successfulNeo4j GraphDay Munich - How to make your GraphDB project successful
Neo4j GraphDay Munich - How to make your GraphDB project successfulNeo4j
 
Maintaining lean and agile principles in a fixed date/budget/scope project
Maintaining lean and agile principles in a fixed date/budget/scope projectMaintaining lean and agile principles in a fixed date/budget/scope project
Maintaining lean and agile principles in a fixed date/budget/scope projectCorecom Consulting
 
50500113 spiral-model
50500113 spiral-model50500113 spiral-model
50500113 spiral-modelasidharath
 
Session 3b The SF SaaS Framework
Session 3b   The SF SaaS FrameworkSession 3b   The SF SaaS Framework
Session 3b The SF SaaS FrameworkCode Mastery
 
Badges at pipingdesignu.com
Badges at pipingdesignu.comBadges at pipingdesignu.com
Badges at pipingdesignu.comwbeazley
 
CHAMP Math MOOC Meeting Feb 13 2014
CHAMP Math MOOC Meeting Feb 13 2014CHAMP Math MOOC Meeting Feb 13 2014
CHAMP Math MOOC Meeting Feb 13 2014cccscoetc
 
Software Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a TeamSoftware Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a TeamSoftheme
 
Increasing your SharePoint ROI with End-User Training
Increasing your SharePoint ROI with End-User TrainingIncreasing your SharePoint ROI with End-User Training
Increasing your SharePoint ROI with End-User Trainingjendodd
 
LeSS at an Austrian Insurance Company - A Case Study
LeSS at an Austrian Insurance Company - A Case StudyLeSS at an Austrian Insurance Company - A Case Study
LeSS at an Austrian Insurance Company - A Case StudyAgile Austria Conference
 

Similaire à Onboarding at Scale (20)

Technical stories v1.2
Technical stories v1.2Technical stories v1.2
Technical stories v1.2
 
Technical Excellence Doesn't Just Happen - AgileIndy 2016
Technical Excellence Doesn't Just Happen - AgileIndy 2016Technical Excellence Doesn't Just Happen - AgileIndy 2016
Technical Excellence Doesn't Just Happen - AgileIndy 2016
 
CHAMP MOOC Meeting Feb 13 2014
CHAMP MOOC Meeting Feb 13 2014CHAMP MOOC Meeting Feb 13 2014
CHAMP MOOC Meeting Feb 13 2014
 
Unlearning Agile DA day talk
Unlearning Agile DA day talkUnlearning Agile DA day talk
Unlearning Agile DA day talk
 
New experiential Masters online
New experiential Masters onlineNew experiential Masters online
New experiential Masters online
 
Neo4j GraphDay Munich - How to make your GraphDB project successful
Neo4j GraphDay Munich - How to make your GraphDB project successfulNeo4j GraphDay Munich - How to make your GraphDB project successful
Neo4j GraphDay Munich - How to make your GraphDB project successful
 
Maintaining lean and agile principles in a fixed date/budget/scope project
Maintaining lean and agile principles in a fixed date/budget/scope projectMaintaining lean and agile principles in a fixed date/budget/scope project
Maintaining lean and agile principles in a fixed date/budget/scope project
 
SAFe and DevOps - better together
SAFe and DevOps - better togetherSAFe and DevOps - better together
SAFe and DevOps - better together
 
50500113 spiral-model
50500113 spiral-model50500113 spiral-model
50500113 spiral-model
 
Session 3b The SF SaaS Framework
Session 3b   The SF SaaS FrameworkSession 3b   The SF SaaS Framework
Session 3b The SF SaaS Framework
 
Badges at pipingdesignu.com
Badges at pipingdesignu.comBadges at pipingdesignu.com
Badges at pipingdesignu.com
 
Feb Apln OC Shawna C
Feb Apln OC  Shawna CFeb Apln OC  Shawna C
Feb Apln OC Shawna C
 
MagSlideDeck_17_External_v1.0
MagSlideDeck_17_External_v1.0MagSlideDeck_17_External_v1.0
MagSlideDeck_17_External_v1.0
 
CHAMP Math MOOC Meeting Feb 13 2014
CHAMP Math MOOC Meeting Feb 13 2014CHAMP Math MOOC Meeting Feb 13 2014
CHAMP Math MOOC Meeting Feb 13 2014
 
Software Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a TeamSoftware Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a Team
 
Increasing your SharePoint ROI with End-User Training
Increasing your SharePoint ROI with End-User TrainingIncreasing your SharePoint ROI with End-User Training
Increasing your SharePoint ROI with End-User Training
 
LeSS at an Austrian Insurance Company - A Case Study
LeSS at an Austrian Insurance Company - A Case StudyLeSS at an Austrian Insurance Company - A Case Study
LeSS at an Austrian Insurance Company - A Case Study
 
Mike Walls (Revera)
Mike Walls (Revera)Mike Walls (Revera)
Mike Walls (Revera)
 
UNIFIED CONTENT AT USAA
UNIFIED CONTENT AT USAAUNIFIED CONTENT AT USAA
UNIFIED CONTENT AT USAA
 
ID, UP, & RUP.pptx
ID, UP, & RUP.pptxID, UP, & RUP.pptx
ID, UP, & RUP.pptx
 

Plus de Tomer Gabel

How shit works: Time
How shit works: TimeHow shit works: Time
How shit works: TimeTomer Gabel
 
Nondeterministic Software for the Rest of Us
Nondeterministic Software for the Rest of UsNondeterministic Software for the Rest of Us
Nondeterministic Software for the Rest of UsTomer Gabel
 
Slaying Sacred Cows: Deconstructing Dependency Injection
Slaying Sacred Cows: Deconstructing Dependency InjectionSlaying Sacred Cows: Deconstructing Dependency Injection
Slaying Sacred Cows: Deconstructing Dependency InjectionTomer Gabel
 
An Abridged Guide to Event Sourcing
An Abridged Guide to Event SourcingAn Abridged Guide to Event Sourcing
An Abridged Guide to Event SourcingTomer Gabel
 
How Shit Works: Storage
How Shit Works: StorageHow Shit Works: Storage
How Shit Works: StorageTomer Gabel
 
Java 8 and Beyond, a Scala Story
Java 8 and Beyond, a Scala StoryJava 8 and Beyond, a Scala Story
Java 8 and Beyond, a Scala StoryTomer Gabel
 
The Wix Microservice Stack
The Wix Microservice StackThe Wix Microservice Stack
The Wix Microservice StackTomer Gabel
 
Scala Refactoring for Fun and Profit (Japanese subtitles)
Scala Refactoring for Fun and Profit (Japanese subtitles)Scala Refactoring for Fun and Profit (Japanese subtitles)
Scala Refactoring for Fun and Profit (Japanese subtitles)Tomer Gabel
 
Scala Refactoring for Fun and Profit
Scala Refactoring for Fun and ProfitScala Refactoring for Fun and Profit
Scala Refactoring for Fun and ProfitTomer Gabel
 
Scala in the Wild
Scala in the WildScala in the Wild
Scala in the WildTomer Gabel
 
Speaking Scala: Refactoring for Fun and Profit (Workshop)
Speaking Scala: Refactoring for Fun and Profit (Workshop)Speaking Scala: Refactoring for Fun and Profit (Workshop)
Speaking Scala: Refactoring for Fun and Profit (Workshop)Tomer Gabel
 
Put Your Thinking CAP On
Put Your Thinking CAP OnPut Your Thinking CAP On
Put Your Thinking CAP OnTomer Gabel
 
Leveraging Scala Macros for Better Validation
Leveraging Scala Macros for Better ValidationLeveraging Scala Macros for Better Validation
Leveraging Scala Macros for Better ValidationTomer Gabel
 
A Field Guide to DSL Design in Scala
A Field Guide to DSL Design in ScalaA Field Guide to DSL Design in Scala
A Field Guide to DSL Design in ScalaTomer Gabel
 
Functional Leap of Faith (Keynote at JDay Lviv 2014)
Functional Leap of Faith (Keynote at JDay Lviv 2014)Functional Leap of Faith (Keynote at JDay Lviv 2014)
Functional Leap of Faith (Keynote at JDay Lviv 2014)Tomer Gabel
 
Scala Back to Basics: Type Classes
Scala Back to Basics: Type ClassesScala Back to Basics: Type Classes
Scala Back to Basics: Type ClassesTomer Gabel
 
5 Bullets to Scala Adoption
5 Bullets to Scala Adoption5 Bullets to Scala Adoption
5 Bullets to Scala AdoptionTomer Gabel
 
Nashorn: JavaScript that doesn’t suck (ILJUG)
Nashorn: JavaScript that doesn’t suck (ILJUG)Nashorn: JavaScript that doesn’t suck (ILJUG)
Nashorn: JavaScript that doesn’t suck (ILJUG)Tomer Gabel
 
Ponies and Unicorns With Scala
Ponies and Unicorns With ScalaPonies and Unicorns With Scala
Ponies and Unicorns With ScalaTomer Gabel
 
Lab: JVM Production Debugging 101
Lab: JVM Production Debugging 101Lab: JVM Production Debugging 101
Lab: JVM Production Debugging 101Tomer Gabel
 

Plus de Tomer Gabel (20)

How shit works: Time
How shit works: TimeHow shit works: Time
How shit works: Time
 
Nondeterministic Software for the Rest of Us
Nondeterministic Software for the Rest of UsNondeterministic Software for the Rest of Us
Nondeterministic Software for the Rest of Us
 
Slaying Sacred Cows: Deconstructing Dependency Injection
Slaying Sacred Cows: Deconstructing Dependency InjectionSlaying Sacred Cows: Deconstructing Dependency Injection
Slaying Sacred Cows: Deconstructing Dependency Injection
 
An Abridged Guide to Event Sourcing
An Abridged Guide to Event SourcingAn Abridged Guide to Event Sourcing
An Abridged Guide to Event Sourcing
 
How Shit Works: Storage
How Shit Works: StorageHow Shit Works: Storage
How Shit Works: Storage
 
Java 8 and Beyond, a Scala Story
Java 8 and Beyond, a Scala StoryJava 8 and Beyond, a Scala Story
Java 8 and Beyond, a Scala Story
 
The Wix Microservice Stack
The Wix Microservice StackThe Wix Microservice Stack
The Wix Microservice Stack
 
Scala Refactoring for Fun and Profit (Japanese subtitles)
Scala Refactoring for Fun and Profit (Japanese subtitles)Scala Refactoring for Fun and Profit (Japanese subtitles)
Scala Refactoring for Fun and Profit (Japanese subtitles)
 
Scala Refactoring for Fun and Profit
Scala Refactoring for Fun and ProfitScala Refactoring for Fun and Profit
Scala Refactoring for Fun and Profit
 
Scala in the Wild
Scala in the WildScala in the Wild
Scala in the Wild
 
Speaking Scala: Refactoring for Fun and Profit (Workshop)
Speaking Scala: Refactoring for Fun and Profit (Workshop)Speaking Scala: Refactoring for Fun and Profit (Workshop)
Speaking Scala: Refactoring for Fun and Profit (Workshop)
 
Put Your Thinking CAP On
Put Your Thinking CAP OnPut Your Thinking CAP On
Put Your Thinking CAP On
 
Leveraging Scala Macros for Better Validation
Leveraging Scala Macros for Better ValidationLeveraging Scala Macros for Better Validation
Leveraging Scala Macros for Better Validation
 
A Field Guide to DSL Design in Scala
A Field Guide to DSL Design in ScalaA Field Guide to DSL Design in Scala
A Field Guide to DSL Design in Scala
 
Functional Leap of Faith (Keynote at JDay Lviv 2014)
Functional Leap of Faith (Keynote at JDay Lviv 2014)Functional Leap of Faith (Keynote at JDay Lviv 2014)
Functional Leap of Faith (Keynote at JDay Lviv 2014)
 
Scala Back to Basics: Type Classes
Scala Back to Basics: Type ClassesScala Back to Basics: Type Classes
Scala Back to Basics: Type Classes
 
5 Bullets to Scala Adoption
5 Bullets to Scala Adoption5 Bullets to Scala Adoption
5 Bullets to Scala Adoption
 
Nashorn: JavaScript that doesn’t suck (ILJUG)
Nashorn: JavaScript that doesn’t suck (ILJUG)Nashorn: JavaScript that doesn’t suck (ILJUG)
Nashorn: JavaScript that doesn’t suck (ILJUG)
 
Ponies and Unicorns With Scala
Ponies and Unicorns With ScalaPonies and Unicorns With Scala
Ponies and Unicorns With Scala
 
Lab: JVM Production Debugging 101
Lab: JVM Production Debugging 101Lab: JVM Production Debugging 101
Lab: JVM Production Debugging 101
 

Dernier

Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 

Dernier (20)

Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 

Onboarding at Scale

  • 1. Onboarding at Scale Tomer Gabel Velocity 2016 Amsterdam Image: Akheree Monajat (CC BY-SA 3.0)
  • 2. Wix is… • A web publishing platform • Distributed R&D – Tel-Aviv (Israel) – Be’er-Sheva (Israel) – Dnipropetrovsk (Ukraine) – Kiev (Ukraine) – Vilnius (Lithuania) • Growing rapidly – Jul 2013: 120 engineers – Now: 400+ engineers
  • 3. Scaling up is hard Fundamental premise:
  • 4. RESEARCHImage: Martine Perret / UNMEER (CC BY-ND 2.0)
  • 9. Product Suite KickstartTraining Kit Crash Course Images: Jeff Robins (CC BY 2.0), Vernon Cunningham (Public Domain), Paul Fisher (CC BY-SA 2.0)
  • 11. Training Kit: Customers As a Guild Lead, I want to: • Start onboarding early • Reduce overhead • Have quality reference material Image: KCNA
  • 12. Training Kit: Customers As a Team Lead, I want to: • Simplify training of new hires • Minimize disruption to my team • Have quality reference material Image: John Kennicutt, USMC (Public Domain)
  • 13. Training Kit: Customers As a new hire, I want to: • Understand the technology stack • Be productive quickly • Learn on my own (and not be a pest) Image: Cubmundo (BY-SA 2.0)
  • 14. Training Kit: Design Goals Guided self-learning Customizable Based on external resources
  • 15. Kickoff • Meet the Guild Lead – Validate assumptions – Identify key (technical) partners • Scope definition – Meet key partners – Set scope and expectations – Generate “bucket list” of desirable topics • Review and prioritize
  • 16. Development • Guild Days – Ask for some volunteers – Host them for a full day – Volunteers pick subjects – Volunteers search & evaluate material
  • 17. Development • Postprocessing – By a professional training developer – Wording, formatting – Consistent structure
  • 18. Feedback Collection • Per-subject feedback – Simple web form – Highlights substantial issues (if any) • Guild Day (one-off) – Technical review by experts • Interviews (one-off) – Team leads – New hires
  • 19. Lessons Learned Assumptions • Content – Only developers can evaluate content – Minor post-processing – Focus on learning • Structure – Topics are atomic units – Customizable set/order Reality – Dedicated professional can take over – Most of the actual work – Need actionable content (exercises, koans etc.) – Topics are interrelated – Modules are necessary
  • 20. Lessons Learned Assumptions • Marketing – R&D will self-market – No need for special effort • Maintenance – Mostly ad-hoc – Developer pull requests • Future efforts – Proper UX Reality – Little known, little used – Initial push insufficient – Constant, significant work – Little participation – Not that useful, for now
  • 21. So what’s next? 1. Dedicated content/training developer 2. Revise structure for modularity 3. Significant in-house marketing effort Image: Booyabazooka (CC BY-SA 3.0)
  • 23. Kickstart: Overview Takes juniors as input, outputs web developers 9 weeks, fully salaried End result: professional web developers
  • 24. Kickstart: Tiers 1. Individual self-learning 2. Teamwork and agile methods 3. Full product lifecycle
  • 25. Kickstart: Challenges Expensive (salaries, resources) Tightly coupled recruiting effort Mentorship and preparation
  • 26. Recruitment • Unique requirements – Experience/skill level – Recruiting in bulk – Cost mitigation • A dedicated pipeline – “Recruiting days” – Carefully orchestrated
  • 27. Lessons Learned Why do this? • The social element – Company culture – Built-in “buddy system” • Sustainable recruiting – Easy to plan for – Marketing-bound, really – Great people! Why not? • Expensive – Facilities, staff, amenities… – And fully salaried to boot • Hard to do consistently – Staff turnover – Buy-in is a constant effort – Dedicated staff is critical
  • 29. Crash Course: Overview Mid- to senior-level onboarding course Recurring, every ~2 months 3 weeks End result: a working MVP
  • 30. Crash Course: Rationale End-to-end production experience Groups mimic team structure Focus on methodology, philosophy
  • 31. Crash Course: Challenges Cost-prohibitive below 10 participants Requires mix of server/front-end Mentorship and preparation
  • 32. Planning • Week 1: Ramp-up – Heavy on doctrine (TDD, CD) – Tech stack (Scala, TypeScript) • Weeks 2-3: Project time – Guided bootstrapping – Constant mentorship
  • 33. Lessons Learned Why do this? • Break down the wall – The server-client divide – Reinforce TDD, CD etc. – Makes our stack accessible • Reduces new employee friction • Huge marketing boon
  • 34. Lessons Learned Why not? • Expensive – Facilities, staff, amenities… – And fully salaried to boot • Tight scheduling – Lots of ad-hoc adjustments – Everything needs a backup • Minimal recruiting rate Image: Jenny Poole (CC BY 2.0)
  • 35. POST-MORTEMImage: Daniel X. O’Neil (CC BY 2.0)
  • 36. Lessons Learned • These are long- running projects • For best results: – Assign dedicated staff – Long-term • This means you can’t rely on engineers – Trust me, I am one… Program Manager Project Manager Training Developer
  • 37. Lessons Learned • Scaling up is hard • Doing it ad-hoc works! • Until it doesn’t – It’s not about size – It’s about growth • Consider ROI carefully! Image: Damian Gadal (CC BY 2.0)
  • 38. Lessons Learned • Mentors are your biggest asset – You need their buy-in – You need them to come back • Give them what they need – “Soft skills” workshops, simulations – Expectation setting and guidance – Hold status/venting sessions. Pay attention!
  • 39. Lessons Learned • These are big projects • Success is about logistics – Huge todo list – Scheduling hell – Constant interruptions – Follow-ups • That’s a lot to keep track of • Hire a Project Manager. “Behind every great leader there was an even greater logistician.” - M. Cox Image: Rom Logistics (CC BY-SA 3.0)
  • 40. QUESTIONS? Thank you for listening tomer@tomergabel.com @tomerg http://engineering.wix.com To contact Wix academy (ask us anything!): academy@wix.com This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Notes de l'éditeur

  1. Image source: http://walletgroove.com/wp-content/uploads/2015/08/crowded-subways-1.jpg
  2. Image source: https://flic.kr/p/qMJNdx
  3. Image sources: https://upload.wikimedia.org/wikipedia/commons/6/6e/Wikimedia_Foundation_Servers-8055_17.jpg
  4. Icon source: http://www.checkster.com/solutions/automated-reference-checkup/
  5. Icon source: https://pixabay.com/en/user-person-generic-single-general-23874/ and https://pixabay.com/en/people-avatar-green-icon-abstract-306295/
  6. Image source: https://flic.kr/p/4M5Wz1