Our organization has a policy that it hires developers on 3-year contracts, and renews them no more than two times. So when you have reached 9 years in the org; when you have become intimately familiar with the domain, and the codebase, and the way the org works etc., you are out.
I am still incredulous that someone has thought that yes, this is exactly how an organization should manage its software engineers.
> I am still incredulous that someone has thought that yes, this is exactly how an organization should manage its software engineers.
I'm not I have literally heard a software engineer which was since recently responsible for hiring just saying just a few sentences apart:
- oh we shouldn't hire this person they only ever worked for the same company so they must not interested in learning and improving themself
and then
- oh we shouldn't hire that person they have switched companies every 2-3 years so they must be bad at their job and jump companies before they get fired
... wtf
and that person didn't get that opinion due to being crazy or so but from spending ~2 days to read up on what you need to look out for when hiring people, i.e. from other software enginers, software project managers and people which founded startups
the problem is not only is there a lot of nonsense out their there are multiple different conflicting engineering cultures out their each insisting only their way is the right way and convincingly pursuing people why the other way is supposedly terrible. Not few of them also pushing a rather toxic culture or a live style which only work for a singles with workoholic like traits or people which at some point in their live had the luck to get rather wealthy and no assume any software enginer in the world is in their position. It's just shit.
I think that the issue is continuous raises. Instead the raises should slowly decrease but also the expectation of time commitment should decrease. It should be expected that someone with 10yrs experience at the firm only spent 10 or 15 hours per week working. They are exponentially more efficient. If it's then not expected that the company pay more, then the tenured employee isn't seen as a drain on resources. Hell they could even get payed less. It think it is fair because it allows people to seek out more work to fill their time.
Not that I am insensitive to one’s predicament, but who takes 9 years to become familiar with a domain? Unless it’s some kind of software that runs a special kind of nuclear submarine that no one knows how it works and no one want to change more than one line of code per year.
Honestly that sounds fine and quite honest to have such a policy. I think in my career I've met like 2 or 3 engineers who would have been at one place longer than that.
Doesn't matter. It is a lopsided relationship. As an employee, it is massive portion of your life. From the employer perspective you are a resource, and can be replaced (not making a moral judgement, just saying that you can...). So the fact that someone can leave after 2 years is less impactful on the company than a company that forces you to leave after X years.
If on the other hand you are just saying "well it is unlikely you will get to 9 years" the problem with that thinking is that the closer you get to 9 years and the more you have invested the more likely you will want to stay for 9 and being forced out for no reason is silly. It is a job, not the presidency.
This is exactly the disconnect between people's salary expectations and their actual salary. It's not really based on how valuable your work is, but how easily replaced you are.
Yes and to be completely fair, the benefit for an employee is to get to focus on one specialty rather than run a business. And have a known paycheck. And get experience while being paid to do so.
Honestly as long as a company has enough variety internally I (slightly) prefer staying with until they "go bad".
Now I also prefer startups and my carrier isn't yet that old (like ~8 years) so never is still the answer.
Through companies being often way less likely to give a trusted long term employee a payrise or trust them with more responsibilities then they are to do so with a new hired employee they have hard times to properly judge the skill of is still an (absurd but not IT specific) issue.
Our organization has a policy that it hires developers on 3-year contracts, and renews them no more than two times. So when you have reached 9 years in the org; when you have become intimately familiar with the domain, and the codebase, and the way the org works etc., you are out.
I am still incredulous that someone has thought that yes, this is exactly how an organization should manage its software engineers.