It’s so strange, you’d think the cost of recruiting, hiring, and ramping up a new employee would be much more than just bringing your existing productive employee up to market rate, yet few employers seem willing to do this.
I left my previous employer on very good terms and on the way out made it clear that I liked working there and all it would have taken to retain me was to adjust my comp up to market rate. They looked at me as if I just escaped the lunatic asylum.
> It’s so strange, you’d think the cost of recruiting, hiring, and ramping up a new employee would be much more than just bringing your existing productive employee up to market rate, yet few employers seem willing to do this.
Not strange at all. The company is willing to sacrifice employees to send the message that people are replaceable and will be let go if they demand salary raises.
It's a way to keep salaries from growing.
> They looked at me as if I just escaped the lunatic asylum.
Good old gaslighting. You get the same look from managers even in high turnover company.
I think a lot of companies think of themselves as the better side of a tradeoff between QoL and compensation. "Sure, you could make more money elsewhere, good luck with that!"
Makes sense when you think about it from a business perspective. Some people like running lifestyle businesses. These businesses won't make anyone rich, but one can carve out an economic niche regardless. That niche is predicated on being willing to accept less comp than the broader market pays.
My last job was just such a compromise, and, I gotta tell you, if they had listened to me when architecting their new ecomm platform, I'd still be working there, not moved on for $20k more comp.
Corporate feudalisms are actually really nice when you're living in the castle, not working the fields.
Sometimes I think it would be worth it to just quit and re-interview for your current job every year as an outside candidate--you'd end up ahead of just staying there.
From my experience, one of the causes of this issue is that in some companies, the people who are in charge of the money (upper/top management) are rarely also people with software engineering backgrounds. These people are often unable or unwilling to fully grasp the concept of "ramping up a new employee" in the context of software development. The fact that any large codebase will take a smart person 3-6 months to acclimate to and become productive. The fact that other people on the programming team have to help these new people (and therefore lose productivity themselves). The fact that the new person is going to produce more errors and the number of defects in the product will temporarily increase.
If you look into the history of a company (e.g. by looking at how many users in the issue tracker are no longer in the company etc.), it's usually quite obvious when there's a systemic problem - the employee turnover is high. The management is interested in saving money by looking at the market and trying to hire at or just below the average compensation levels. In their eyes, it's cheaper to bring a new employee to the team (and there's always some fresh meat on the shelves of the job market) than to pay the current (experienced) employee more. And in the short term, they're probably right. But in the medium to long term, this approach tends to have a cumulative effect resulting in high employee churn rate.
The problem? Software development is not fast food industry. You can't have high employee churn rates without it manifesting somewhere. But pointing out exactly where and how is not easy (linking causation and effect in a discipline involving multiple people across multiple years is not trivial), especially when you need to link it to the bottom line (the market state and marketing efficiency will mess with your analysis... not that you typically even have access to the financials as a run-of-the-mill employee) and even if you do, there is no reason to expect that you would be able to effectively bring these findings to the management (such work would probably be seen as you overstepping the bounds) or that the management would change the processes responsible (that would be expensive). It's an uphill battle. When you are in a company with high employee turnover, there's typically not much you can do other than to start looking elsewhere. These types of companies will have problems (lower level of respect/loyalty, higher level of product defects, lower productivity, higher technical debt), it's best to leave them as soon as the opportunity presents itself.
People who hire contractors are usually not developers. I've had my fair bit of working with contractors, let's just say that if you get them to work in domain logic without very strict oversight, you are going to have a bad time. Tooling, purely technical matters - that's more like something you can give them to work on.
I left my previous employer on very good terms and on the way out made it clear that I liked working there and all it would have taken to retain me was to adjust my comp up to market rate. They looked at me as if I just escaped the lunatic asylum.