5 ms·
Nobody in this Twitter thread seems to know or understand what a commons problem is. Training up new devs is good for the industry, sure. But your own company
by Eliezer 9y ago
Nobody in this Twitter thread seems to know or understand what a commons problem is. Training up new devs is good for the industry, sure. But your own company doesn't capture all of that value.
If you are trying to solve this problem by yelling at companies to be more altruistic, then, as previously stated, you don't know or understand what a commons problem is.
- strictnein 9y agoEmployees aren't fish or trees. If you train an employee and treat them well they stay with your company longer. Your training increases the value the provide to you. Unlike a fish, which is sold and consumed one day and needs to be replaced the next.
- vinceguidry 9y ago> If you train an employee and treat them well they stay with your company longer. That's a huge assumption.
- K0nserv 9y agoSeems fairly rational. I recon two of the most common reasons people leave are boredom and unsatisfying career progression. So all you have to do is ensure people have interesting work and pay/promote them at a rate that is competitive with their option of switching jobs to achieve that goal.
- vinceguidry 9y ago> So all you have to do is ensure people have interesting work and pay/promote them at a rate that is competitive with their option of switching jobs to achieve that goal. I think similarly. But these are also the two things that require companies to restructure in order to be able to reliably offer them to employees. I went through this two years ago with my last employer. When it came right down to it, I didn't really have a place there. When my job was made redundant, my departure was bittersweet. There was a time when they were open to expanding my role and giving me a direct report. But they decided to move in another direction. It's more than just "treating employees well." A lot more.
- scarface74 9y agoI recon two of the most common reasons people leave are boredom and unsatisfying career progression. So all you have to do is ensure people have interesting work My current job is very interesting - I’m leading a team building a brand new green field system and building a modern software development shop simultaneously (CI/CD, automated testing, newest version of everything), I have almost complete autonomy in how things are architected and the resources (money, people) to make it happen. But once I get done, I don’t see anything the company can do to keep my job “interesting”. If you were on the iPhone team in 2006 at Apple, what could Apple possibly do to keep you from getting bored?
- talmand 9y agoWell, I'm fairly certain that treating them badly doesn't guarantee that employees will stay. I'd rather try the huge assumption.
- s73ver_ 9y agoI don't think so. How many people do you know who feel they are being treated well leave their companies?
- vinceguidry 9y agoHappened to me. See my above comment.
- s73ver_ 9y agoSo one instance. Yes, it's not going to be 100% retention. Nothing ever will be, unless you decide to bring back slavery. I asked how often does it happen. I can almost guarantee you that the retention rate of developers who feel they're being treated well is much, much higher than otherwise.
- vinceguidry 9y agoLet's rehash your argument here. You think that companies that need skilled devs should train up junior devs instead of looking for skilled devs on the job market. Your answer to the retention issue that creates is "treat employees better." You don't understand why that's a bad deal for employers? You want them to take on all of the risk and get none of the reward. Look, I like the current system where you have to build the skills yourself and find some way to get into the job market. I was able to navigate that system and build a career in it. I look at the current code-school infrastructure as basically "easy mode." That's what we need more of. Companies still snap up code school grads like nobody's business. Asking companies to play the role of code schools is just way too much.
- s73ver_ 9y agoNo, I'm saying that if they're not able to find senior devs, that they should train junior devs. And I reject the idea that it creates a retention issue, unless you have no intention to treating those people well. "You don't understand why that's a bad deal for employers?" No, I don't, at least not for employers that respect their employees. It may be a bad deal for employers that don't, but for them, I really don't care. "You want them to take on all of the risk and get none of the reward." As opposed to now, where the employee takes all of the risk and gets no reward? "Look, I like the current system where you have to build the skills yourself and find some way to get into the job market." Yes, people who have been through hazing like the system of hazing and have no desire to stop it for the next class. "Asking companies to play the role of code schools is just way too much." I don't agree. But if that's the case, then they can stop complaining that there aren't enough skilled developers out there if they're not willing to help out.
- buryat 9y agoIt's easier to give a higher salary, filter candidates, and then don't invest into training. Training must be done by someone, and that person's time is valuable too, so there're also other things for consideration.
- pascalxus 9y agoWell companies would be able to capture more of that "value", if they didn't lay off all those new devs at the first downturn in a product cycle.
- maxsilver 9y ago> But your own company doesn't capture all of that value. If they paid their employees properly, with adequate salary bumps as their experience grew, then the company would capture all of that value, most of the time. People jumping every 2 years isn't exactly something most employees want to do, it's something companies force upon them.
- btilly 9y agoNo, the employers won't capture that value by following your recommendation. What you are recommending is that employers pay for training, and then pay employees exactly the same that they would get for hiring someone with equivalent skills from the market. This leaves employers out by the cost of training from the cost of hiring from the market. So the business is strictly behind where it would have been. But worse yet, a non-trivial fraction of the time when you train someone for a role that they aren't currently in, you find that by ability or inclination they are not actually suited for that role. Which means that you're now just out the cost of training and may well have also lost the employee. By contrast someone that you hire externally who is already in the role is more likely to be a fit. Furthermore businesses tend to run on lean margins. You're hiring because you need those skills now, not in a year. A lot can change in a year. Now against this you have to balance the fact that hiring people is expensive, new hires take time to come up to speed, and not all new hires work out. Furthermore a loyal employee with institutional knowledge has value because of that. It isn't a one-sided deal. Companies do train people. However it is more common for it to be someone that they know already. Such as an internal promotion, or someone who did an internship. Hiring strangers expecting to train them with no particular reason to believe that you will keep them is a losing proposition. Businesses that consistently pay for losing propositions usually wind up going out of business.
- throwaway79475 9y ago> What you are recommending is that employers pay for training, and then pay employees exactly the same that they would get for hiring someone with equivalent skills from the market. This leaves employers out by the cost of training from the cost of hiring from the market. So the business is strictly behind where it would have been. This is in the context of businesses complaining about a shortage of developers. If every mid or senior level position was getting filled without much grief or effort, then there wouldn't be any issue. But in a situation where the business can't seem to find anyone that fits the bill, the obvious solution is to look at the talent they CAN train, instead of hoping the exact right candidate walks through the door. Furthermore, in any reasonable organization where things like positive/negative code review, respectful seniors, mentorship, and a general respect of all developers are part of the company culture, the cost of training a junior developer to be useful to the project is largely absorbed. Of course, a company where everyone is isolated and heads-down will consider training to be a huge burden, because it's completely orthogonal to their workflow. > Businesses that consistently pay for losing propositions usually wind up going out of business. Businesses that focus on the short term "we need this now, get the butt in the seat" aren't thinking about the workforce as people, which is just as insidious.
- tareqak 9y agoFrom what I understand, the issue that describe happens because the company doing the training doesn't re-evaluate the now trained developer as more experienced, and therefore, more valuable and deserving of better compensation. A junior is a junior, until they're not. Pretending that the now trained new developer is still worth the same is foolish, but that's exactly what some employers do to their own detriment.
- SatvikBeri 9y agoSo, say you hire a junior developer and spend a year training them to the next level of seniority, at significant training / opportunity cost expense. They now command a much higher market rate - you can pay the higher salary and retain them, or not and they'll leave. Either way, the company is out the training cost relative to hiring someone senior from the beginning. (I say this as someone who hires 90% junior people and trains them. I think there are good reasons to do so, but the commons problem is real.)
- vonmoltke 9y agoYou need to balance the training cost (offset by revenue generated) of growing juniors against the cost of acquiring and onboarding senior hires.
- SatvikBeri 9y agoRight - as of recently, I would claim that the market is distorted in a weird way where hiring senior people is just a better deal for most startups than hiring juniors and training them, even factoring in all the associated costs, because a weird effect where market rates for senior developers are maybe ~2-3x higher but they are 5-10x more effective. Market rates for senior developers relative to juniors should go up in this scenario, but they haven't really, and I don't understand why. The main selfish economic reason to hire junior developers is if the marginal return of hiring someone sooner swamps the relatively higher total cost, which is why you'll see companies like Google that have huge RoI on engineers hiring many more college grads.
- 9y ago
- s73ver_ 9y agoI think it's more that, the companies are the ones complaining, so if they're not willing to be part of the solution, then we don't care about their problems. If they don't want to train, then that's fine, but then they don't get to complain about the lack of developers.
- tomjen3 9y agoThat is called an apprenticeship: you work for very low wages while learning the trade, so the company gets something out of the deal. Of course then the people you hire are not also college educated.
- thisisit 9y ago> your own company doesn't capture all of that value. This is the general thought of the industry. But I wonder if is this true from a long term value perspective? For example - Glassdoor says, for San Franciso, a junior iOS developer is paid 100k USD [1] while senior iOS developer is paid 156k USD [2] If there is no hike, the senior developer costs 56k USD more each year. So, assuming an average turnover of 2 years that is 112k USD. So are we to say that the cost of training and capturing of 2 years of that value is not equal to at least 112k USD? [1] https://www.glassdoor.com/Salaries/san-francisco-jr-ios-developer-salary-SRCH_IL.0,13_IM759_KO14,30.htm https://www.glassdoor.com/Salaries/san-francisco-jr-ios-deve... [2] https://www.glassdoor.com/Salaries/san-francisco-senior-ios-developer-salary-SRCH_IL.0,13_IM759_KO14,34.htm https://www.glassdoor.com/Salaries/san-francisco-senior-ios-...
- finnthehuman 9y agoBut your own company doesn't capture all of that value. That will never happen as long as we pay wages. Look at all that value going out the door as payroll. The benifit of on the job training is to hire a $X dev at <=$X and turn them into $Y devs at even less than a $Y would cost to hire.
- purplezooey 9y agoYeah it does, you just need to take a 5 year horizon and not a 1 year one.