Lever Engineering Onboarding: 5 ways we ramped up our ramp-up

Emily Shenfield
Lever Engineering
Published in
7 min readJan 11, 2017

--

Have you ever had that nightmare where it’s the first day of school or work and you’ve forgotten something important, like your pants? In your dream, you stand mortified as hordes of unfamiliar faces gawk at your embarrassment.

In real life, even if you remembered pants, first days can be pretty difficult! And beyond that — first weeks, and months. For engineers, with so much to learn and a lot of pressure to contribute, a great onboarding program can make or break a new hire’s success. When I started at Lever a year ago, we had a robust company-wide onboarding program (Ramp Camp), but little in the way of formal engineering on-boarding. We’ve done major work to improve over the past year by learning from other great onboarding programs and injecting our core principles like empathy, independence, and supportiveness into the process. And so, here are five ways we’ve improved our engineering onboarding to optimize for repeatability, impact, and efficiency (illustrated in the spirit of Lever’s love of gifs and cute animals):

How can we define successful onboarding?

1. Make it clear where a new engineer can go for help.

Why?

No matter how self-sufficient you are, it’s impossible to find the answers to questions if you don’t know where to look. As our search for the perfect tools for documentation and standardization continues, sometimes knowledge ends up spread across multiple platforms with no obvious single source of truth.

How?

Each new hire is provided a central table of contents that links to other helpful resources. We put this into a GitHub repo called lever/guides in order to centralize it with the other important text you’ll be spending a lot of time with in those weeks, the code. Housing it in GitHub also allows a standardized process for requesting changes and adding resources to that guide. It includes links to internal READMEs and cookbooks and also to helpful external blogs and articles about engineering-related topics that our team continues to contribute to and draw from.

When they arrive, every engineer gets their own document that details their onboarding schedule and provides helpful links, allowing them to add notes, check off completed tasks, and work at their own pace.

Lever/guides and the onboarding checklist template

New engineers are also assigned an “engineering buddy” on their first day who becomes their go-to source of knowledge and pillar of stability through a whirlwind first few weeks. The whole team rotates through as engineering buddies.

New Lever engineers always have an engineer buddy to watch their back.

2. Empower new engineers to contribute.

Why?

Whether you’ve just learned how to code or you’re a seasoned industry veteran, starting in a new role takes a lot of transition work. Not only do you have to get to know a new team and company, you also have to get to know a new codebase, new tech stack, potentially even a new language. Ensuring that engineers feel needed and able to thrive in a new environment improves morale and helps develop a safe space where there is a continuing sense of success and support.

How?

We’re always keeping our eyes out for bugs that could be good candidates for new engineers. They’re tagged in JIRA with the eng-onboarding label so they’re easily available to be tackled by a new hire just after their first few days of setting up and attending Ramp Camp sessions. Then, after a week or two of bug fixes, new engineers are assigned a Starter Project as a way to begin to step into the project lifecycle and to learn about tackling more complex problems in the codebase. This way, a new engineer is never waiting to be assigned work and can feel useful right away.

Sometimes catching bugs requires assistance.

Some companies aim to have every engineer “release on the first day”, but we choose to focus on different goals. First days of work have enough pressure without adding to it! We instead schedule a release pairing session for the engineer and their buddy once the engineer has fixed a bug from the eng-onboarding list. This provides the flexibility to take your own timeline as you get started but still retains the satisfaction of getting to contribute and fix a real problem for the users or the team.

3. Celebrate successes

Why?

With a new job, there’s so much to learn, so many new people to meet…in the midst of being so busy, it can be easy to overlook the things you’re doing well. This makes it that much more important to celebrate successes large and small.

This is what I look like everyday at stand-up.

How?

Celebrate successes (even small ones) with new engineers! We love to share on Slack when we notice that another engineer has done something helpful or exciting. In our dev environment setup instructions, the last step is to send a message to our slack channel letting the team know that you’ve finished so we can barrage you with congratulations and gifs and emojis. The same happens for first releases. A simple, private congratulatory message can make a world of difference; we’ve all been the new person before, eager to prove ourselves and we understand from those times that a little bit of positive feedback can go a long way. Use cheers, high fives, and fist bumps liberally.

First releases warrant a lot of excitement.

4. Encourage new engineers to update, clarify, and add to the onboarding process

Why?

When you’ve been working on the same piece of code for a long time — it all becomes so familiar that it can be difficult to see bugs. It’s the same concept for onboarding. The best people to find the flaws in your process are the freshest eyes: the people actually going through the onboarding themselves! At Lever, it’s the way that we ensure our documents are up to date with changes in dev setup or tech changes. It’s also one way we find out if we’re duplicating work or if sessions are no longer helpful.

How?

This is one of the ways our engineering buddies comes into play. They work to gather and document feedback about the onboarding process the whole way. Engineers who lead sessions do the same thing and adapt their sessions often based on that feedback.

We also encourage new engineers to make changes or pull requests against any of the documentation that could be clarified or updated. One place this happens quite often is in the dev environment setup instructions — new engineers are quick to find and correct outdated or mistaken information in this document as they work through it. Our onboarding documentation is a living body of work that’s evolving as our team grows.

It would be exhausting to keep up documentation alone.

5. Emphasize the importance of “getting to know you”

Why?

It can be tempting to immerse yourself in code and documentation, and only come up briefly for air. But new engineers have more to discover than just a new stack. We’ve found new hires find most success in the long-term when they’re able to form personal bonds with fellow engineers and feel like a part of the broader company.

How?

At Lever, we’re all about the 1:1s, the walk-and-talks, the coffee runs, and new hires are encouraged to make casual cross-functional connections, which in aggregate turn into a more united, inclusive company. Having personal relationships with coworkers on other teams also ties you into a greater understanding of company-level goals and the importance of every job function. A year later, I’m still getting to know people across the organization while enjoying tea and some sunshine.

Visit a neighbor in the next cubicle!

On a team level — for the first few weeks, engineers are set up in sessions with other engineers about different parts of the tech stack, or the codebase, or processes. This allows the new engineer to get to know someone else on the team, but it also allows other engineers on the team to take ownership over something, to become an expert and share that expert knowledge, and to be more involved and invested in the onboarding process.

So, there you have it. Five things we’ve worked to improve over the past year that have made our engineering onboarding more delightful. And it is a living, breathing process! Things change with every new batch of engineers and there’s always things to improve and grow. Want to help? Check out our jobs page!

--

--