Our compensation calculator is a regular hot topic on places like Hacker News – pretty much any thread about GitLab has a comment about us paying local rates. As with everything GitLab does, we continue to iterate on our compensation model, and implemented a number of changes at the start of 2019. In addition to adjusting the salaries of backend developers, which were raised considerably so that we are "at or above market," according to GitLab CEO Sid Sijbrandij, the location factor was also revised to better reflect the respective areas covered.
But first, let's take a step back to see how we got to here.
Why did GitLab start paying team members according to location in the first place?
"It’s something that kind of happened organically," Sid says. "Every time we hired someone, we’d discuss what a reasonable compensation would be. And many times, it came back to what they were making beforehand, and that really depended a lot on where they were. So we kind of started out having local market salaries as we grew. At a certain point, we said, 'Okay, this is apparently the standard. We’re basing it not just on your function and the seniority you have in the function, but also where you live.'"
GitLab no longer uses salary history as a factor in compensation offers and does not ask candidates about their previous pay. Instead, we ask all candidates, regardless of location, for their salary expectations.
Understanding the rent index
The compensation calculator's rent index came from a noted correlation between the aforementioned local market rate salaries and rent prices in the area. Using limited data sets with more than 100 locations across the globe, an analysis was run to determine the best gauge for local rates. The rent as listed on Numbeo was found to have the highest correlation.
"When you think about it, the correlation we found made sense," Sid explains. "If there’s a place where people pay high wages, it tends to attract people. And then the rents, almost by force of nature, start rising. It’s not that we want to pay you based on your rent or compensate your cost of living. We want to make sure that we pay at or above market. We found that the rent was a great way to calculate that, and it’s why there’s a rent index as part of our global compensation formula."
New improvements on local market calculations
"Instead of using [just the rate index], what we do now is look at a number of different sources, usually four or five, to get market data for a city," says GitLab's outgoing Chief Culture Officer Barbie Brewer. "Then we find the median of that, and use it as our benchmark. That being said, you can't do this in all cities. We have a lot of employees in jobs that aren't typically available where they are located. In those instances, we fall back on the other equation. Generally speaking, it's pretty close. When we've had to go back and check those benchmarks, we found that it required very few adjustments. We were getting it right 95 percent of the time, so doing that check was good. It helped us understand that we were not that far off."
Barbie also noted that some employees in low-income communities could fare better than expected because people in towns within 90 minutes of a large city will have their salaries calculated according to the higher metropolitan factor.
Now that we know how GitLab got started with local rates, here's a look at why we have continued down this path.
Standard pay eats away at production and personnel
If everyone is paid the same role-based salary, the company would not be able to hire as many team members, and those that are brought on would not be as widely distributed, according to Sid. Ultimately, this approach would cut away at GitLab's ability to produce as well as be geographically diverse, he argues.
"If we pay everyone the San Francisco wage for their respective roles, our compensation costs would increase greatly, and we would be forced to hire a lot fewer people. Then we wouldn’t be able to produce as much as we would like," Sid explains. "And if we started paying everyone the lowest rate possible, we would not be able to retain the people we want to keep.
"So you end up in a place where the compensation is somewhere in between. And that would cause us to have a concentration of team members in low-wage regions because it’s a better deal for them. They’re getting more than the market rate, so they’re more likely to apply and accept an offer. And they’re more likely to stay regardless of how happy they are, which is not healthy for them or the company."
Standard pay for all roles may not be as fair as it seems
Another problem with paying everyone the same salary, Sid says, comes down to how far a dollar goes in one place compared to another. If everyone is paid a standard salary, those who live in high-income areas would have less discretionary income when compared to their counterparts in lower-income communities.
Remote companies using a standard pay structure are reportedly running into problems with their compensation plans.
"The most recent company I talked to has everybody getting paid the same, no matter where they're located. It's very, very different from GitLab, and it is causing problems for them," says Barbie. "We have very strong communication with that company. They're hoping that we can help influence them to move away from paying everyone the same no matter their location. They're finding that it's extremely inequitable."
Closing the gap on local rates for distributed workers
As remote, or distributed, workplaces continue to take hold and grow across all industries, Sid hopes the location-based compensation gaps will narrow.
"I think the core difference is there’s people saying, 'Same work, same pay.' And there’s people like us saying we should be at market," Sid says. "I hope the distance between those stances becomes smaller as more companies offer remote work opportunities. I think that’s the way to fix it – just make sure the market rates become higher and consistent.
"And that’s why we will be promoting remote work a lot. We have a great page in our handbook about running an all-remote company. Hopefully, that is the way we will contribute to having people across the world get paid the same wages. We will track with that trend; but we won't be ahead of it or behind it. If you see what remote work is doing in a country like the Ukraine, it’s a great source of income for the people there. And I want to contribute to that."
Still have questions or thoughts on GitLab's compensation structure? Sound off in the comments below (or on HN, inevitably 😁) or ping us on Twitter @gitlab.