In part because you have to jave enough sr people able to mentor. There's not a great industry framework.
As a plumber, you pay your apprentice usually 60% sr/journyman salary with a 5% increase every 6 months to match the value of the skill up.
There are also industry standard, industry funded classroom settings, that teach things like building codes and industry standards and some adjacent trade craft.
Instead you just throw a Jr to an overworked mid/Sr and they can help with some design and questions and code review but that takes 10-20 hours per week so you have to pretty much have one or more per Jr. Position. Then, after 18 months when the Jr hasn't received a 15% pay raise to reflect the enormous amount of time an knowledge you've sucked out of a Sr position, they go elsewhere for a 20% raise and it looks like you've waisted your time.
In truth, it wastes the talent you've built to not be aggressively increasing their comp to match the skill increase you're providing.
one difference though is that varying levels of skill can be staggeringly different for SWE compared to a plumber. There are people that have been coding in basic since 12 and hacking their entire childhoods, and you have some people that coded for the first time in a cs program which they completed in an average fashion.
Not everyone is equally good of course but I would be very cautious about making hacking since 12 a requirement for a developer job. It certainly doesn't have its equivalent in any other branch of engineering or indeed just about anywhere else other than the arts.
And yet every other technical field which has no expectation that this has been a passion since childhood and applicants should have personal projects in the field manages somehow to hire people.
That's what I'm saying. We could train a base of knowledge so that skills transfer and we don't have to find super specialized operators for every role. When you get a union plumber to the shop, you know that they passed their certification. You may not like working with them or they may do sloppy work or something but as a whole, you're going to get a competent operator once the apprenticeship is finished.
That will work once the world has decided upon a single web stack with standardized API design and security and every company uses that web stack. When that happened hiring web stack developers will be a standardized process similar to plumbers today as you say. But be are very far from that level of standardization.
I'm not sure about other industries, but for me personally, my competency is in large part based on my ability to quickly pick up domain knowledge and apply it successfully.
I'm not really sure how you test for a base level of that, besides proven demonstration on your resume and doing semi-correlated coding quizzes.
True, I started sorting parts in a plumbing shop when I was 12, you still have to get certified and to get certified you take the same classes as everyone else. That's the same for doctors, and lawyers and all that shit.
This is why we don't have a base of expected knowledge in the field and why we do strange coding tests to try to guess if someone is competent.
> In truth, it wastes the talent you've built to not be aggressively increasing their comp to match the skill increase you're providing.
The issue is that we don't quantify what hiring someone actually costs. We're willing to spend $20k on finding a candidate for 160k yet the people in the same position are sitting at 120k and getting a 3-4% raise.
The new person needs time so expect at least a month of training, yet no one quantifies that as well.
yes, the JR to SR path should be a methodical planned progress with expectations of big raises as they skill up.
I'm fine with an annual cost of living adjustment once I get to a SR level because I'm not increasing skill at a rapid pace, I'm exercising my skill in the expected way. For a Jr path, that doesn't make sense. getting a cost of living adjustment and being twice as good as you were last year means you're a flight risk and that will cost the company more than just paying people what they are worth.
All of them, you pay some for the classes, If I remember I paid 300/semester for classes which is nothing really. usually your firm will pay your share.
But industry standard groups, unions, people who have a vested interest in having a supply of quality labor so they can do business. Some of the classes are sponsored (especially in smaller places where there's not enough support) and in return, they get to train you on a specific product or just hang a banner and give you a 10% tools coupon.
As a plumber, you pay your apprentice usually 60% sr/journyman salary with a 5% increase every 6 months to match the value of the skill up.
There are also industry standard, industry funded classroom settings, that teach things like building codes and industry standards and some adjacent trade craft.
Instead you just throw a Jr to an overworked mid/Sr and they can help with some design and questions and code review but that takes 10-20 hours per week so you have to pretty much have one or more per Jr. Position. Then, after 18 months when the Jr hasn't received a 15% pay raise to reflect the enormous amount of time an knowledge you've sucked out of a Sr position, they go elsewhere for a 20% raise and it looks like you've waisted your time.
In truth, it wastes the talent you've built to not be aggressively increasing their comp to match the skill increase you're providing.
reply