Some companies will simply pay people whatever it takes to convince them to join the company, which results in compensation that’s all over the place.
Some companies have surprisingly uniform compensation, some to the extreme that all developers are paid the same compensation in lock-step. This is usually an attempt to make things fair, but it creates a lot of animosity when people feel they deserve more than their coworkers.
And some times, it really does make sense to hire less experienced people into high-paying roles of their career trajectory looks promising. Hiring isn’t just about selecting for the height of experience on a bar chart. It’s also about looking at the slope. Less experienced employees who are growing very fast are best hired at high salaries, otherwise they’re just going to leave in a year when they grow even more. Conversely, if they fail to grow into the role they might need to be let go to make room for someone more appropriate for the position.
One of the tricky things about teams sharing compensation is that there is almost never a specific ordering of salaries that everyone on the team would agree is appropriate. It’s one of those situations where 80% of people on a team might see themselves as being in the top 20%.
As always, it helps to collect competing offers elsewhere. It helps even more to be prepared to take those offers if they pay more and higher salary is your highest priority.
How many places fire people because they thought they might be a star performer but turn out to be only average? I thought Netflix was newsworthy for being "ruthless" in that way, that it was rare and that few companies have followed their example.
Couple rotations through the ranking process and if you're not jumping you're on the way out. Smart devs will read the room and find a new gig before then.
Netflix also offers amazing, most-cash, compensation, and demands results up front. Throw 300k cash at me and I'll play those games for a while, too.
If you have virtually unlimited budget then keeping an over-leveled person in an overpaid position can slide if they’re still adding some value. However, it’s still better to demote them (difficult) or remove them to prevent animosity from brewing in their peers.
If you only have the budget to hire a few people, then having an overpaid and underperforming person taking up a valuable slot in your limited budget is a pressing issue. You need to get them off the team to free that budget up for someone who can earn it appropriately.
You need software engineers to make software, we are the necessary commodity of the future economy, nee grads arent getting in person experience, bootcamps arent doing as great at teaching during the pandemic, the visa program was also reduced. Are we sreing a supply side squeeze and a demand side rush on devs?
Plenty of engineers effectively have 1 year of experience 12 times.
Do you mean they've been doing the same things year after year? I.e. without growing their skills in breadth or depth?
Experience alone doesn’t mean much.