Upload
tomer-gabel
View
940
Download
1
Embed Size (px)
Citation preview
Onboarding at Scale
Tomer GabelVelocity 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
RESEARCHImage: Martine Perret / UNMEER (CC BY-ND 2.0)
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: 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)
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 LearnedAssumptions• 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 LearnedAssumptions• 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: 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 LearnedWhy 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: 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 LearnedWhy 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 LearnedWhy 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
@tomerg
http://engineering.wix.com
To contact Wix academy (ask us anything!):
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
International License.