KubeCon Q&A: Onboarding Engineers

5G
0

Author: Pip Taylor, Product Engineer, incident.io


  • How can you make sure that you’re giving new joiners the most impactful work from day one?

Preparation is essential here. Review upcoming work that you have and find something that doesn’t require too much deep context of your product, but that is still a valuable piece of work. Ideally something that will give them a flavour of the different parts of their role. For example, if they’re a full stack engineer, choose work that has both front and backend parts.

Make sure that it’s something you were going to do anyway–anything else can come across as giving a new starter busywork which isn’t beneficial to either the company or them. It’s important to make new joiners feel like they’re doing worthwhile work.

  • On the other hand, how do you make sure that you aren’t overloading a new joiner and setting them up for failure?

Some folks like to be thrown in the deep end to figure things out, while others like to pair on things while they get up to speed. Sometimes it’s in the middle. Everyone learns in different ways, so it’s worthwhile to ask a new joiner how they like to learn, and then to tailor the onboarding to them.

If you have an onboarding checklist for new joiners to follow, review it periodically to make sure that everything on there is absolutely needed. It can be daunting otherwise to be confronted with a long list of tasks to complete without the context needed to know what’s truly essential.

  • How can you best align on expectations around specific timeframes, e.g. 30, 60 and 90 days?

Being explicit is key here. Work out ahead of time where you expect a new joiner to be after 30, 60, 90 days based on their skills and experience, and then tell them. Have a conversation about these expectations and answer any questions they may have.

Be careful about what you include in the expectations. It should be within a new joiner’s control to meet them, so don’t include things which are situational. For example, if you expect new joiners to be comfortable implementing database migrations in the first 30 days, make sure they have work that needs them to do that.

  • What are some things that you can do to make sure you’re iterating on your onboarding processes?

Onboarding is just another process, so you can use the same techniques you’d use to improve any process. Solicit feedback from new joiners (a regular retro with new joiners is a great way to do this). Periodically review the onboarding process and remove anything that is no longer applicable, and add in anything that feedback has shown new joiners are missing.

  • What are some best practices for setting up and documenting a developer environment?

Reproducibility is a huge help here. It can be really painful if every developer’s environment is a manually set-up snowflake. The first step is to document the set-up process. Have new joiners follow the documentation and if it’s wrong, work with them to figure out what’s wrong and fix it. Empower them to do this themselves if they’re comfortable with that.

The next step is to automate the setup. The ideal is a repo that you clone and run a script and everything’s done. That might not be practical in reality, but aiming for it is a good plan. I find Docker Compose really useful for this as it makes it easy to make sure a developer’s environment has all the required dependencies.

Making development environment set-up reproducible isn’t just a win for new joiners, but also for when developers get new machines (either because of upgrades, or an unfortunate accident with a glass of water).

  • How can you make new engineers feel comfortable with your tech stack?

Try and stick to familiar technology where you can. If you have a custom build system, bespoke continuous integration, and your own web app framework then there’s more for new joiners to get up to speed with than if you use something more standard. And that’s on top of the product specific context that they need to get up to speed with.

  • What are some things you can do to make sure that engineers are bought into your product vision before joining?

Be public with your product vision and process! Write about it on your company blog, speak about it on podcasts, give talks at conferences. The more you share, the more people can learn about how you work before they join.

As well as being a great recruiting tool, it helps people work out if they’re a good fit for your company and also gives them a head start on onboarding.

  • How can you make sure that the support you extend to new joiners goes beyond the first 30 days?

The important thing here is that new joiners shouldn’t feel abandoned as the onboarding process progresses. It’s a horrible experience to have loads of support for the first few weeks, and then feel like you’re on your own.

Have check ins with new joiners to scope out where they’re at with onboarding, what support they still need, and where they’re ready to receive less support. Maybe they’re super comfortable with solo backend work after a month but still need more pairing time when it comes to frontend work. Tailor the support they get to what they need.

###

To learn more about Kubernetes and the cloud native ecosystem, join us at KubeCon + CloudNativeCon Europe in Paris from March 19-22.

Kubernetes adoption will continue to grow in 2024 | Julian Fischer

Previous article

JFrog announces new technology integration with MLOps platform Qwak

Next article