An employee’s first few weeks at a company are critical; it’s during this time that the company sets the stage for life as an engineer at Flatiron, and the employee begins to absorb the day-to-day culture of the company. It’s also when details on both sides are laid bare. On the company’s side, anything that was perhaps glamorized or obfuscated during the interview process is suddenly readily apparent. For the employee, all of their existing expectations are put to the test. For both sides, it’s a time of first impressions and lasting effects.
Over two years ago, Charlie Taveras, a software engineer at Flatiron Health, identified the need for the company to have an onboarding program specifically for engineers. The team was just large enough that not everyone knew what everyone else was working on. This led to the idea to standardize knowledge across the engineering team while setting up new engineers to make informed decisions about which team they wanted to join. It was through Charlie’s Bootcamp that I onboarded into three weeks of classes, product demos, tech lead introductions, social events and individualized mentorship. It was my first experience with an onboarding program, and its rigor and organization blew me away. A year later, I volunteered to be the next standard bearer of Bootcamp, and carry it forward to its next iteration.
Flatiron currently has about 100 engineers, and onboards anywhere from 1–6 new engineers a month. Bootcamp’s original vision — to expose engineers to technology across Flatiron and help with an informed team decision — was now a much bigger challenge. In the time since Bootcamp began, Flatiron had unified a two-stack engineering team into one culture, and was onboarding engineers from a variety of backgrounds into a variety of distinct roles. It is no longer feasible for Bootcamp to demo all of our products and technologies, and introduce a new hire to all of our tech leads (18 and counting!) without being overwhelming. We needed to reconsider how to welcome engineers and ensure their success at the company in a sustainable way.
Last fall, I began to consider what the next version of onboarding might look like, and critically, what was important to us as a company during the Bootcamp process. Most of what I know of onboarding is gleaned from interviews from other companies. At some point during the interview process, I inquired what the first few weeks would look like and was told some variation between “you deploy code on your first day!” and “after three months you pick one of the six teams that best worked for you and then the onboarding truly begins.” Neither of these fits our mold, but they represent the spectrum of what onboarding can look like; anything from trial by fire to slow and steady is fair game.
To decide what worked for us, I spent a lot of time talking with others and reflecting on my Bootcamp. Of all of the things I had learned during my Bootcamp, what was most important? What was most critical to my initial experience at the company? As a company, what is most important to us as an engineer transitions to a new team? How do we preserve the strength and communication of our teams over time with the help of our new hires? These questions led me to a new philosophy around Bootcamp — one steeped in the unified engineering culture Flatiron had worked so hard to create.
At the beginning of this year, Flatiron launched a new Bootcamp program designed to immerse new hires in the culture and technologies of engineering at Flatiron. We spent a few days getting our engineers set-up for any stack they want to engage with, a week highlighting in-house technologies — what we’ve built and how we’ve built it, another week enumerating developer etiquette, culture, code reviews, and other standardized engineering behaviors, and finally wrap up with a broad strokes overview of engineering culture at Flatiron. This curriculum is structured to expose an engineer to both of our stacks (Windows and Linux), introduce many of our tech leads, and emphasize what matters to us as a team.
The goal of Bootcamp is to expose our new engineers to the engineering culture, which we see as a more essential part of their experience on our team overall, as well as let all new hires try out different parts of our stack while exploring team fit.
At some point, an engineering team no longer has one giant set of common knowledge, but that’s no reason it can’t have a common culture, unified developer etiquette, and collective commitment to code quality.
Our new Bootcamp program has undergone only a few rounds so far, and we’re still collecting feedback on what works and what doesn’t. But we hope it’s a program that will grow with us as our team continues to grow, and most importantly, preserve and enhance our engineering culture.