Developer Onboarding
Best Practice

Developer Onboarding Checklist: Put DevEx First

Discover the key to successful developer onboarding with our comprehensive onboarding checklist, designed to boost productivity and culture fit.

By
Cortex
-
June 7, 2024

Anyone who has been reading this blog or who has worked at Cortex can tell you that we are quite passionate about Developer Experience (DevEx). But just what is DevEx, and how does it relate to onboarding new developers? It's a fair question, since the word can mean different things in different contexts. We are even on the record as saying that definitions are necessarily vague to allow for DevEx being inherently subjective to a given environment. We would love to use the word "vibes", but unfortunately, this is an engineering blog. Let's get into it.

The Role of Onboarding in DevEx

DevEx is a measure of how well a development culture and environment incentivize and enable good work. It encompasses everything from technology, architectures and work processes to communication, incentives and emotional support. Because it is a holistic measure of culture and expectations, your onboarding program is central to good DevEx as a way to set the tone and get new employees up to speed. High performance organizations are exceptional by definition, and onboarding imparts these standards and expectations that drive these cultures right from the start.

Employee onboarding is not just an opportunity to inform and educate about your company's DevEx. If done right, it should be seen as the first step in driving standards and optimizing your developer experience. Ambitious companies should see onboarding as a proactive driver of DevEx, rather than a passive means of passing on information. It allows you to streamline the integration of new developers, ensuring they quickly become valuable, contributing members of your team.

So if onboarding helps optimize DevEx, how can you optimize your onboarding plan?

Benefits of a Developer Onboarding Checklist

While DevEx is subjective in aggregate, a great deal of it can be defined by best practice. Checklists are the best way to systematize expertise and good practice when delivering repeated tasks. Using a developer onboarding checklist ensures that crucial parts of onboarding are delivered as standard and to spec.

This can in turn lead to the following benefits:

Streamline the Onboarding Process

A well-crafted checklist ensures that all necessary onboarding steps are followed systematically, reducing the risk of oversight or inconsistency. It provides a clear roadmap for the new employee, the hiring manager and the onboarding team, ensuring that key tasks are completed in a structured and methodical way. Benefits include:

  • Reduced time-to-productivity for new hires: By providing all necessary tools, access, and information upfront, an onboarding checklist enables even junior developers to start contributing quickly. Laying out documentation, tools and ownership gets joiners up to speed quickly, and providing clear and specific milestones helps them understand their new role and start adding value from the off.
  • Enhance job satisfaction and retention rates: An organized and supportive onboarding fosters a sense of belonging and confidence among new hires. This positive initial experience helps new team members to build confidence and foster positive relationships from the start, which leads to higher job satisfaction and the associated benefits in retention rates.
  • Facilitate Consistent Knowledge Transfer: A standardized onboarding checklist ensures that all new hires receive the same foundational knowledge and training, promoting consistency across the team. This guarantees the uniform understanding and knowledge retention needed for a high standard of work, while preserving institutional knowledge with its associated competitive advantage.

Common Challenges in Developer Onboarding

Building an onboarding process is not easy. Maybe some of the software engineers defining technical standards are unwilling to get involved, you’re lacking capacity or you are unsure how to define the DevEx that you wish to impart. It can feel overwhelming.

Some challenges include:

Navigating Diverse Tech Stacks and Tools

On their first day, software developers often encounter a variety of tech stacks and tools, some specific to the organization. Understanding and learning how to use these new tools can be overwhelming, delaying productivity and even causing new hires to become frustrated. A checklist that includes tutorials and access to comprehensive documentation can help move through this phase quickly.

Bridging Knowledge Gaps and Learning Curves

As well as new tools, there are often new development processes and knowledge gaps in how to build software. These inconsistent skill levels can lead to a longer ramp-up time, delaying the time to value for new hires. Your checklist might include mentorship and buddy programs to help bridge this gap, or even personalized learning paths with relevant training resources.

Building Team Cohesion and Culture Fit

Helping new hires to quickly feel that they are part of the team and aligning them on company culture is an essential part of improving DevEx. Failure to get it right can lead to isolation, disengagement and even churn. Your checklist should include cultural sessions and team-building or social activities, including for remote workers. Culture is too important to be left to chance.

A Sample Developer Onboarding Checklist

Let's consider what you might include on your checklist to ensure that your new developers all get the best treatment.

First you'll want to cover off everything that needs to be done internally ahead of their arrival.

Pre-Onboarding Preparations

  • Prepare a workstation with all necessary hardware and software (if in-person)
  • Arrange for delivery of necessary hardware setup (if remote)
  • Ensure all access credentials and accounts are set up
  • Schedule a casual welcome meeting with their new team lead and/or buddy that touches on company culture
  • Prepare welcome materials, including an employee handbook, welcome letter and introductory documents

Then consider what they will need to feel welcome and relaxed on their first day.

First Day Essentials

  • Schedule a welcome meeting with HR and the immediate team to form a positive first impression
  • Share a new hire announcement with the wider team
  • Introduce developer to essential tools, apps and platforms  
  • Ensure access to relevant technical documentation and knowledge base
  • Organize office tour and setup of the development environment (virtual tour if remote)

It helps to build in clear objectives from the first week to give the new engineer something to get their teeth into, and to emphasize a culture of getting stuff done.

First Week Objectives

  • Complete technical setup, including IDEs, version control, and project management tools
  • Provide detailed briefing on your company's products and clients
  • Conduct meetings with key stakeholders and extended team members
  • Attend initial training sessions covering company policies, security protocols, and development practices
  • Complete small, non-critical tasks that can ease the new employee into the role and help them to build confidence

During the first month you want the developer to feel like they belong and start adding real value to the engineering team.

First Month Goals

  • Establish feedback loops formally and informally, including regular one-on-one meetings with managers and buddy: ensure multiple touchpoints to prevent single points of failure
  • Assign small, manageable projects or tasks to help new hires get hands-on experience
  • Conduct regular progress reviews, including a formal evaluation at the end of the month to assess progress and address any concerns
  • Start training to improve skills and/or get coding style more in line with company culture

When we talk about access to tools, it helps to list these out in detail to ensure nothing slips through the gaps.

Access to Essential Tools and Platforms

  • Set up accounts for version control (e.g. GitHub, GitLab, Datadog)
  • Provide access to project management tools (e.g. Jira, Trello, Asana)
  • Ensure setup of communication tools (e.g. Slack, Zoom, Microsoft Teams)

Putting in the work required for a functional development environment early on is a way to put new hires at ease and allow them to get to grips with the role.

Development Environment Setup

  • Install and configure necessary IDEs and development tools (e.g. Visual Studio Code, IntelliJ IDEA, Eclipse)
  • Assist in cloning necessary repositories to the local machine
  • Support setup of local databases, including installation and configuration (e.g. MySQL, PostgreSQL, MongoDB)
  • Explain the branching model employed (e.g. Gitflow, trunk-based development) and describe the branches corresponding to various environments (e.g. develop, production)
  • Guide through the setup of local development environments, including databases and containerization tools if used (e.g. Docker, Kubernetes)

The orientation on your codebase should be thorough, and conducted as soon as the new hire feels comfortable and settled.

Codebase Orientation

  • Conduct review of key projects and services for their team, touching on wider company goals
  • Offer a detailed walkthrough of the project's repository structure, highlighting key directories
  • Introduce coding standards, including code review processes, standards and tools
  • Provide an overview of the CI/CD pipelines, including what happens at each stage and the tools and technologies used
  • If applicable, give an overview of microservices architecture that includes external dependencies or libraries

Security and compliance warrant a specialized work stream with its own section on your onboarding checklist. While there is overlap between this section of onboarding and other technical streams, software developers will benefit from covering this more than once.

Security and Compliance Training

  • Provide overview of security protocols, laying out the organizations security and data handling policies as well as explaining why they are important
  • Touch on secure coding practices, emphasizing coding standards and code scanning tools that are covered elsewhere in technical onboarding
  • Offer further briefing on security scanning tools installed while setting up the developer environment (e.g. Snyk, OWASP ZAP)
  • Brief on incident reporting and response protocol for reporting security incidents and vulnerabilities, including an overview of the incident response plan
  • Introduce tools for managing passwords and credentials securely (e.g. Vault, AWS Secrets Manager)

It is important to take the time to help a new hire feel welcome and included in the team, so your checklist needs to formally include and prioritize this aspect of onboarding.

Company and Team Introductions

  • Organize a welcome meeting with the team and key stakeholders, including developers, product managers, designers and QA analysts
  • Share the company history, mission, values, and culture
  • Explain the organization structure, highlighting key departments and leadership
  • Assign a mentor and/or buddy for the first few months (if you haven't done this in advance of starting)

As well as technical policies and approaches, it is important to provide an overview of broader company procedures and policies.

Overview of Company Policies and Procedures

  • Discuss HR policies, typical work hours, norms around booking and attending meetings, and communication protocols, both within the development team and more broadly
  • Explain remote work policies and office space usage, if applicable
  • Introduce any diversity policies or training
  • Showcase employee recognition programs and celebration of milestones, if applicable

Company culture is too important to pick up by osmosis, and should feature in your checklist.

Integration into Company Culture

  • Invite to company-wide and team-specific events, explaining the role these play and why they are important
  • Conduct a session on your company's values and mission orientation, providing tangible examples of how these effect day-to-day decision making
  • Clarify any norms around political speech or other non-core communication
  • Introduce to interest groups or clubs within the company, if applicable

Clarifying expectations around growth and professional development helps your new developers to start setting and pursuing goals from day one.

Professional Growth and Expectations

  • Set clear expectations for the first 30, 60, and 90 days
  • Lay out roles and responsibilities at all levels, indicating what is needed to secure a promotion
  • Discuss professional development opportunities and career paths within the company

Feedback is essential to DevEx, as management will only ever get a limited insight into developers' experience on the coalface. Your checklist should actively schedule sessions and help you to collect feedback for the continuous improvement of the developer and the organization.

Feedback and Continuous Improvement

Regular Check-ins

  • Schedule weekly one-on-ones with the manager or mentor for the first month
  • Establish clear feedback mechanisms for discussing company matters, starting with the onboarding process

Feedback Sessions

  • Conduct a formal onboarding feedback session after the first month
  • Provide a platform for continuous feedback on the onboarding process, with the option of sharing feedback anonymously

Why Tools and Environment Are Important for Developer Onboarding

Considering DevEx relates to your ability to do good work sustainably, it stands to reason that tooling and environment are crucial to getting it right. Onboarding ties all of this together, reducing the learning curve required to operate in this development environment and use relevant tools efficiently. Margaret-Anne Storey concluded in a recent DevEx study that working environment determines flow states and ability to focus, which are crucial to satisfaction and productivity. Your environment should enable communication while minimizing interruptions - this requires careful and deliberate planning. A sense of shared mission and belonging allows team members to do their best work, so it's important to ensure that onboarding proactively fosters this.

Cortex's Justin Reock, in an excellent piece on DevEx, quotes the researchers behind SPACE when saying that DevEx comes not from one metric but from "a constellation of metrics in tension". He explains that DevEx derives from the full stack of build, deployment and management tools. These tools accelerate learning and productivity: best practice tool selection and environmental setup need to be built into onboarding to prioritize DevEx for new hires.

Using tools in onboarding

An Internal Developer Portal can make a big difference to onboarding if used correctly.

Start with consistency. Consistent development standards across teams improves DevEx, and here the Cortex Scaffolder can help from day one. By enabling project templates and boilerplate code, your new hires can get from idea to production-ready code quickly. Templated services and resources provide them with efficient bootstrapping for new entities, including input validation for owners, groups, and dependencies.

Onboarding is a jump-off point to allow new recruits to start adding value, and developers will want to stand on their own feet as soon as possible. They will be quickly assessing needs and requirements for projects, documentation and dependencies for software entities, and visibility across the development environment. Our Catalog gives new and existing developers access to all dependencies, documentation, change history and ownership information in one place. New hires can complete onboarding comfortable in their ability to find and assess details for all software entities.

DevEx is about more than just culture and environment: it requires clear expectations on what developers should work on and how. Scorecards allows setting and tracking standards for production readiness, development quality, security compliance and more, using dynamic, real-time data. This gives clear indications of what is expected from new hires, and places their work in the broader context of the organization's goals. Scorecards  allow new developers to make informed decision-making using insights into software health, progress, while identifying bottlenecks and risks.

Incorporating Feedback and Continuous Improvement in Onboarding

Like all that we love in technology and capitalism, onboarding is a living process that cannot remain static. It is a journey not a destination, and getting it right means having incentives and constraints to improve the process, as well as feedback mechanisms to surface opportunities and concerns.

Efforts to gather feedback and data, such as one-to-one catch-ups or surveys on completion of onboarding, should be included on your onboarding checklist. Surveys and questionnaires are good ways to review the process, and should be administered at several intervals. Just make sure that it doesn't become a chore: track completion rates and consider reducing the length or number of open-ended questions to get this number up. Ongoing mentorship and coaching should also provide a capacity for both parties to informally share feedback on the process, even months after it has concluded.

This feedback and data should be compiled and reviewed, paying particular attention to recurring pain points and bottlenecks in the process. It helps to review historical feedback in the context of a given developer's contributions at the company, to ensure that your changes are optimized for identifying and enabling high performers.

Any insights that you glean should lead to incremental changes over sweeping reforms, unless you find something that has gone very wrong. This might include enhanced documentation captured in the Catalog, or streamlined communication enabled by scorecards. It might also cause you to make onboarding paths more personalized to the individual, or increase the interactivity of training sessions. Having the data from your feedback gives you more credibility when implementing these changes in your company.

Measuring the Success of Your Developer Onboarding Process

Metrics relating to engineering and code quality double up as useful indicators of successful onboarding. If you use SPACE or DORA metrics more broadly then find a way to tailor them to onboarding, and it's worth considering DevEx metrics specifically.

Metrics that you can use to assess your onboarding include the below:

  • Code Review Feedback: Measure the quality and frequency of feedback received during initial code reviews for new starters. A low level of issues raised from early on indicates effective training on coding standards.
  • Commit Frequency: Track the rate at which new developers are committing code. A quick ramp up in commit frequency suggests growing confidence and integration into the development workflow from the beginning.
  • Bug Rates: Monitor the number of bugs reported in the code written by new hires. Starting from a low base reflects a firm understanding of code quality from onboarding.
  • Lead Time for Changes: Measure the time it takes for new hires to go from code committed to code successfully running in production. Shorter lead times suggest quicker adaptation to the development culture and workflow.
  • Pair Programming Sessions: Measure the number and quality of pair programming sessions attended by new hires. Higher participation suggests better knowledge sharing and collaboration.

Case study: Greenhouse

As a SaaS company in the recruitment space, Greenhouse knows the value of onboarding. After a bumper year for new hires in 2019, the company replaced an ad-hoc onboarding experience with a structured approach. This emphasized the need to get hires contributing as quickly as possible, adding a formal buddy program and taking a product mindset based on iterative improvement. As well as improving outcomes for new hires, Greenhouse was able to codify findings within its onboarding product and turn internal innovation into a product improvement that drives revenue.

Case study: Asana

Asana focuses on new developers as teammates and individuals first, and technical contributors second. They combine an onboarding process packed with meetings, training and walkthroughs with a rule that new hires must ship something on their first day. This provides engineers with a soft landing and psychological safety, without neglecting the importance of technical contribution.

Asana's emphasis on team over speed differs from Greenhouse, and shows the subjectivity of onboarding processes that should be reflected in your associated checklist.

Case study: Zapier

Onboarding for a fully-remote company comes with its own challenges, something that we are familiar with at Cortex. Zapier emphasizes communication with HR, mentors, team members and other stakeholders, explaining meeting etiquette and how to use Slack and Zoom from the start of onboarding. The company invests in relationships, flying new hires to California for a week after the four-week onboarding process is completed. It combines this with a decentralized approach to learning, sharing self-service materials prepared to help those who prefer to learn alone on their own time.

Onboarding remote developers: Strategies and considerations

All checklists should take into account the subjective needs of your company, and this is especially true when onboarding remote workers. Getting hardware setup as well as account creation and login details sorted in advance helps joiners to focus more on their role from day one, and checklists should set work to start dates while allowing for delays or bottlenecks to get this right.

When building or revising a checklist for remote employees, consider how you may need to adjust your delivery for each item. Every training session, buddy intro and code review will be perceived differently over video call, so observe how this works in practice and gather data as you go. Team building is more difficult when done remotely but that makes it all the more important: consider annual or quarterly meet-ups to build camaraderie.

It is particularly important to set clear norms and expectations around remote communication. Deep work is central to good DevEx, and it is impossible with frequent interruptions. Good DevEx often translates as getting out of your developers' way, and once you have solved for this you should build it into your onboarding.

For more information on how Cortex might help with developer onboarding, take a tour of the product, or book a custom consultation today.

Developer Onboarding
Best Practice
By
Cortex
What's driving urgency for IDPs?