Engineering Career Series: Career paths for engineers at Yelp
-
Yoann Roman, Director, Engineering & Chief of Staff
- Jun 3, 2021
About 5 years after joining Yelp, I was managing several teams in our Hamburg, Germany office and asked my manager, a director at the time, what were the expectations for an engineering manager versus a director. While the conversation was helpful to me at that moment, the gist was basically “we haven’t written that down.” As you can imagine, it’s hard to know both where you stand and how to grow if that’s not captured anywhere for you to read.
Where we started
For many years, the career track for engineers at Yelp was not documented. People still advanced in their careers; we just didn’t have written, consistent guidelines on how. For example, some engineers took on Tech Lead responsibilities, but it wasn’t always clear whether that was a temporary role or a level. In early 2016, we introduced our first directors within engineering management, but there was no engineering-wide documentation on what led to one title vs. another.
How did we get here?
With over 500 engineers by this time in early 2016, you’re probably wondering what led us to this point. There are even 10-person startups with leveling systems in place. A couple of concerns made us hesitant to roll out anything:
- Many of our engineering leaders came from organizations with toxic leveling systems, characterized by contentious career conversations between managers and engineers that, instead of focusing on growth, involved stressful political games and quid pro quo schmoozing around annual performance reviews and promotion periods.
- We associated leveling with titles in our minds, and we wanted to avoid the latter. We saw at other organizations how titles led to folks earlier in their careers having their input disregarded purely due to their title. Many of Yelp’s greatest accomplishments come from interns having an equal seat at the table, and that’s an aspect of our culture we were keen to retain.
That said, we all agreed the status quo was no longer working. Folks who joined, and even long-timers, weren’t sure what was expected of them since expectations were not explicitly captured anywhere. Similarly, it wasn’t clear why their compensation changed or didn’t over time. And, as we continued to grow, interviewers weren’t consistent in what they expected of candidates, so we needed a small group of calibrators to vet candidates. That process also wasn’t scaling and was susceptible to implicit bias.
First attempt
With that in mind, we set out on our first attempt to capture expectations of software engineers and tech leads. We produced two documents along with self-assessment sheets that engineers could use to assess themselves on a scale of 1 to 5 from “no experience” to “very confident.”
What worked
This was a good exercise in turning the implicit into explicit and prompted all of engineering leadership to think about and write down what we’re looking for in engineers and what we value as an organization. It also was a good starting point for interviewers to calibrate on what to look for in candidates.
What didn’t work
For starters, it was a single set of expectations for all engineers. For example, one of our expectations, “be a stabilizing force within your team, technically, emotionally, and culturally,” means something very different for someone who just joined Yelp for their first job or for someone with 15+ years of experience. Since these expectations were one-size-fits-all, they weren’t linked to compensation, which left that part still ambiguous for folks. Finally, the self-assessment was entirely voluntary, and not everyone completed it.
Second attempt
We felt it was important to address the one-size-fits-all aspect of the expectations. We reviewed a number of blog posts and articles from our peers that helped us break out our expectations into a two-dimensional grid (shout-outs to Spotify, Rent the Runway, Chartbeat, and Fog Creek for sharing their journeys and results).
We established 5 milestones to indicate the scale of impact an engineer was having:
- Self: You’re focused on what you can personally deliver.
- Team: You have a significant impact on your whole team.
- Group: Your contributions are recognized and sought out by engineers across several teams or your tech community.
- Company: Your work is impactful across the entire company.
- Industry: You drive changes that advance Yelp’s interests across the industry.
And we assessed those against 5 dimensions that captured what we valued as an engineering organization:
- Technical Skill: Your depth of knowledge and expertise in your specific domain or current position.
- Ownership: You take responsibility for your actions as well as those of your team, and you hold others to the same standards. You deliver projects with tangible results consistently and in a timely fashion.
- Business Insight: You understand how projects and decisions benefit Yelp as a company. You design & build solutions to deliver long-term value while also being flexible to accommodate rapid change.
- Continuous Improvement: You continuously learn and grow, and you invest time in mentoring others. You never accept the status quo for yourself, your peers, or the org as a whole.
- Leadership: You communicate clearly and effectively. You optimize for the group’s success and advocate Yelp’s values of inclusivity and support. You strengthen your team by championing Yelp internally & externally.
This time, we also asked that all engineers have an assessment conversation with their manager to see where they stood in the milestones instead of making it optional.
What worked
This addressed the main pain point of our first attempt by providing a graduated scale that outlined different responsibilities for someone just starting out in their career, versus for someone who had been at Yelp for several years already. We also established a clear expectation around progression by requiring all engineers move from Self to Team in every dimension within two years. We also made this exercise mandatory at rollout, which helped us collect data across the organization.
What didn’t work
Post rollout, many engineers weren’t motivated to keep having the conversation with their manager. Since the framework still wasn’t tied to their compensation, it wasn’t clear how this benefited them. It also wasn’t granular enough for the makeup of our teams at the time. Most of engineering sat at either Self or Team with more senior engineers approaching Group. The Company and Industry milestones, while aspirational, felt out of reach. Lastly, our framework didn’t summarize up to a single level, which made it hard for recruiters to explain to candidates that were accustomed to level terminology from other companies.
Third attempt
So with all that, in 2018, we embarked on a third attempt. We still didn’t want to introduce titles for the same reasons we avoided them initially, so our levels would be kept private and not be associated with titles.
Our third framework addressed some of the key lessons from our first two attempts:
- We dropped the top Industry milestone as being too aspirational, and we added more steps between the remaining milestones. We now had six levels, IC1 through IC6, for the four steps in our second attempt. The IC1-IC6 terminology also matches what other companies use.
- Most importantly, we did what the previous frameworks didn’t with this third attempt: we tied it to compensation. Each level has an associated merit band, equity band, and cash bonus target based on role and location.
- Finally, as Kent and Grace wrote about previously, we revamped our interview process to be based on our dimensions and began using levels and associated compensation bands when hiring.
This framework also came with a web app, based on Medium’s Snowflake, to navigate the dimensions and levels.
What worked
Everyone in engineering uses the leveling system; it’s not optional. Job offers include a level, we record them as part of their employee profile, and compensation adjustments are based on their progress in or across levels. Seeing our success, other departments throughout Yelp adopted our model, and we now have levels using the same format for our Product, Business Systems Analyst, IT, and Engineering Management roles, with other teams adopting it every quarter. All of these various leveling frameworks are visible to everyone at Yelp, so people know what to expect if they’re considering a role change.
What we missed
I didn’t call this section “third time’s the charm” because, let’s be honest, we didn’t get everything right even with this third attempt.
After the initial rollout, managers were mostly left on their own to calibrate. Senior levels, IC5+, required calibration discussions with the Chief Technology Officer, but the process was adhoc for levels prior to that. Transparency around leveling was also inconsistent, with some managers having a shared document with their engineers, and others keeping the whole process opaque.
In recent quarters, we’ve been addressing these pain points by rolling out an organization-wide calibration process among manager groups that happens every quarter before promotions are submitted. In addition, managers now maintain a historical record of an engineer’s progression that is shared with them and allows them to contribute to the leveling process with their own data points.
There is no “done”
As an organization grows, its leveling framework and processes will start to break down. What was once widely understood will become foreign to newer members of the team. For that reason, we’re constantly reviewing and iterating on what we have.
While employees now have a tool at their disposal to understand the expectations once they join, hiring managers still have to verbally walk through all this with potential new hires, making it challenging for them to clearly understand what’s expected of a certain level. To address this, we’ll be publishing our engineer and engineering manager leveling frameworks in the coming months. We believe everyone should know what they’re signing up for and what career growth looks like at the company they’re joining.
Up next: Technical leadership at Yelp
One area that overlaps our career framework is technical leadership. Unlike some of our peers, we view technical leadership as a role, not a level. In our next post, Jason Sleight and Josh Walstrom, two of our Group Technical Leads, will walk us through why we approach it that way and how we’ve worked to build a collaborative, cross-pollinating community of technical leaders who work together regularly to solve some of Yelp’s biggest problems.
If you also dream of leveling frameworks and are passionate about fostering an environment for career growth, we’re hiring!
Read the other posts in the series:
- Building a happy, diverse, and inclusive engineering team
- Hiring a diverse team by reducing bias
- Using structured interviews to improve equity
- How we onboard engineers across the world at Yelp
- Career paths for engineers at Yelp
- Technical Leadership at Yelp
- How we think about engineering management
- Ensuring Pay Equity & Career Progression in Yelp Engineering
- Fostering inclusion & belonging within Yelp Engineering
- Building a thriving engineering team