40
Onboarding at Scale Tomer Gabel Velocity 2016 Amsterdam Image : Akheree Monajat (CC BY-SA 3.0)

Onboarding at Scale

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

Scaling up is hardFundamental 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: 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 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

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

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 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

• 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

[email protected]

@tomerg

http://engineering.wix.com

To contact Wix academy (ask us anything!):

[email protected]

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0

International License.