Solving turnover (unusual dailywtf)
thedailywtf.com
thedailywtf.com
That point really hit home with me. You can beat around the bush and say "hit by a bus". You can put a positive spin on things and say "win the lottery". Or you can actually embrace a common social phenomenon and reap the benefits.
The word "alumni" in the article really hit me. Three years later I still occasionally join that team for a beer, and I'm actually introduced to new members as an alumnus. So, yes, such places do actually exist.
If you run an organization that experiences the phenomenon of a lot of an organization's alumni become customers, then this is a pleasant and welcome side effect of what is described in this article.
Rather, it's simply that they're already aware of their old employers strengths and weaknesses, so vendor evaluation is made a lot simpler.
That doesn't describe my personality, but it certainly fits the personality of some of my favorite ex-coworkers. Aren't these folks exactly the type a company wants to hire?
Personally, I think having those sorts around as a script writer/mentor/troubleshooter is probably vastly more valuable than promoting another really excellent technical person to become a mediocre manager.
What ABOUT the really good engineer with a family, who's content to stay even if the work isn't bleeding-edge exciting? Are they ignorable just because they don't fit into this model? Do we stigmatize them because they're neither churning nor making partner?
http://www.cravath.com/Cravath.html
(the original "Cravath firm," of course) right after law school, having previously done his summer job between second and third year of law school there. He figured from the beginning that he would be very unlikely to make partner there. But I really envied the mentoring he received during his summer associate summer--mine was nothing at all like that. Cravath invests immense resources in developing talent, even though the firm knows it can't keep all the talent it develops. It still can keep relationships with many of the best lawyers who end up in other law firms by making that investment. My law school classmate has had a great career in another city since leaving Cravath.
I ended up going down the contractor/consultant route; for some reason, nobody seems to have a problem with job hopping as long as you call it consulting. I guess there are no false pretenses and it avoids the legal baggage that comes with being an employee (notice periods, arbitrary holiday limits, etc.). It also makes me more money, at least now, ~2 years later.
OK, depending on where you are, hiring an employee can drag you into a ton of legal obligation (as I mentioned in my original post) but typically that burden is reduced if the employee doesn't stay for too long. So as long as the company knows what they're getting into, I'm not sure why hiring a mediocre performer for all eternity is preferable to an overachiever who gets bored after a couple of months but hits the ground running. Sure, someone has to stay longer term, but that could be a pretty lean team.
I guess it's assumed that people job-hop because they're not good enough to hold down a job, and it's assumed that contractors know what they're doing. Why is that? You choose your contractors based on their reputation. You should be doing the same for your employees anyway.
FWIW, it may sound like it, but I'm not arguing out of some kind of bitterness here, I quite enjoy contracting because it means I always work on something that is important to the customer - I'm just genuinely curious why such different standards are applied, and if that's rational and sensible.
The advantage of the contractor is that most companies have policies that make it more difficult to fire full time people than to fire contractors. Sure, in an at-will state, if you hire an employee, you can technically fire them the next day, but most companies don't work that way. Most companies do, however, have the ability to fire contractors the next day.
The advantage of hiring a contractor is that it's easier to cut your losses if you are stuck with policies that make it hard to fire your regular employees at the drop of a hat. We're expecting to get let go when the job is done, or if you don't like us, so generally we aren't as offended either.
I once worked for a company which, by implying through its actions that life-long employment was possible, was able to convince IT employees to accept new roles such as software maintenance that would have a detrimental medium-term effect on their employability elsewhere. To keep up this system of incentives, inept long-timers were put out to pasture rather than fired -- a signal to those fearing market irrelevance that their own risks were bounded. Offenses entirely under one's own control such as stealing would still result in termination; Because others would not change their own risk assessments as a result and the company had to deter others from such mis-deeds, similar signaling was not required. It was notable that those put out to pasture could end-up fired later if they complained too much about their newfound state of affairs -- a strong signal to shut up and take it. Needless to say, this was not a happy place.
On one hand it was a nicely documented theory that 'makes sense' but I have my doubts about how connected to reality it is. On the other it was written by someone who has had a series of bad managers and is pointing out the flaws with them.
From the studies I read, the biggest correlation between leaving a company and variables is the relationship with your direct manager.
Good managers will take the time to understand an employees ambitions and goals, and work with them to meet those exceptions in their current role or provide a path to a new role which will meet the employees goal. Neglecting to do this due diligence with your employees will leave them feeling isolated and itching to switch jobs.
That's where I think this guy's theory falls apart. There is no value apex, software is software everywhere you go, the only variable is how it is managed. Instead of a value apex I would replace it with a fulfillment meter, consider is each of your employees fulfilled at their current position and if not why not? That's the question you should be asking and those are the problems you should be solving.
OTOH, I don't agree that "software is software everywhere you go". I've worked in specialties like games / computer graphics, and that kind of work is inherently more interesting to me than for loops and sql statements style dev.
This isn't to say that less sexy areas can't have really good tech. They just often don't, and the exceptions are usually the leaders.
This is the first time I've read something which makes complete sense to me and helps get rid of the "ifs and buts" from my head (I still am looking for work). My ideas would never have been implemented, the organization was too resistant to change. The curve makes sense- it was fun for a while, but after "getting it all", the daily monotony would have killed me. At the same time other employees came in, did their work, and went home. They felt the whole system was very rigid, but they were ok with tolerating it. After quitting I've often found myself wondering if its something in my head that prevented me from "sticking it out". This post makes some good sense and I hope more employers read it.
The signal given to other employees will hurt them in the long-term. Nobody will ever let on that they might be thinking about leaving. "Why did Bob, who had just begun to lead the new project, decide to take some other job? Wow, what a jerk!"
The thing I have found is that in most work environments the good engineers accomplish great things, get burned out, then leave, while the bad engineers become exceptionally good at playing political games. You know, the same engineers that have appalling work performance are the ones that are ass-kissing all day long, forming alliances, playing the office politics game like they are desperate to keep from getting voted off a reality TV show.
The sad thing is, it actually works in most companies. The really unqualified employees will never be let go, or even disciplined, because they are "friends" with the management.
I think this creates a low morale for everyone. In some companies, the really talented engineers just quit because they get too frustrated with the general lack of motivation and laziness of the "political" engineers, and either drop out or burn out, knowing full well that the "political" engineer will probably be promoted to become their superior, even though they are grossly incompetent at their present job.
How do you solve this problem?
If you have a culture where employees are expected to move on after a few years, the people who are playing politics and trying to get entrenched for job security are really easy to pick out. (They've been there 10 years while the average stay is maybe 3 or 4).
No amount of ass kissing will save you from being the weird guy who can't move on.
This method probably works very well for large scale, non-technical corporates because the aptitude to practice politics successfully would logically have strong correlations with other useful soft work skills (sales, negotiation, social skills). However in a highly technical company this might not be as effective. I wonder how Google does it?
People leave because they get bored, so they would switch teams from time to time, give new responsibilities and try to keep everyone motivated. Didn't always work, but they managed to keep some top guys for very long...
Not wanting to be interrupted, to know how things work, when you are working on your next interesting stuff, is reason enough to make things better maintainable.
I personally held that belief and worked through such challenges for over 8 years, until I got bored switching teams and creating new stuff for my employer. I now do the "creating new stuff" for myself at my startup.
If the talent is trying to make itself irreplaceable - like say, only one person knows how something works and they do not like documenting it or training others. It shows insecurity of the person who does not want to lose the job, which is bad for the organization as well as for the person.
Bad for the organization because, if the person either wants to quit or cannot turn up for work, a crucial piece of work cannot be completed.
Bad for the person because, though the person might think he/she is crucial for something work and cannot be fired, they are making themselves tied up to the work and hence cannot be promoted to better opportunities.
A talent should learn and grow. And then to teach others and make them grow. And keep repeating the process. If there is not much you can learn to grow, then quit and join some place where you can.
This is from my first link to HN (545 days ago).. http://news.ycombinator.com/item?id=309262
For a privately published 3-volume history of one law firm, I was surprised that so many libraries had a copy of the history of the Cravath law firm. Not a lot of them are available on interlibrary loan.
It's a college - you spend 2-3-4 years, learn all you can and then graduate to better things in life. The only way you can stay here is by becoming a TA or a prof, but that'd be an entirely different job, and most people don't want that.
It seems to me that's probably a good way to keep highly skilled employees riding the wave of that 'value apex', rather than just cresting over it and then leaving.
Does anyone know what Google's turnover rates are compared to other technology companies? A quick search didn't turn up anything interesting, but I figure there might be some Googlers here with an idea...
Background: I provided the hiring guy with architecture diagrams of some pretty large scale systems that I had designed: database clusters with 1TB of RAM and 72TB of disk, 10GbE network, etc. I not only designed, I also implemented these systems, so I'm a pretty senior architecture engineer with 18 years of solid UNIX/Linux, SAN storage, and networking experience.
Long story short, I missed a very basic question "what does setting the sticky bit on a directory do?" I blanked because I wasn't expecting to answer basic sysadmin questions, and hadn't honestly set the sticky bit on a directory for several years.
So, they sent me a nicely worded email that after careful consideration, we don't have a position that matches you, etc.
The hiring process at Google is really messed up. I gather that the only qualifications they are really looking for are:
1. Fresh college graduates that memorized man pages. 2. Willing to work 80 hour weeks. 3. Don't care about salary because we're not going to pay much.
I mean seriously, you don't turn down a senior architecture engineer with 18+ years of experience because he blanked on a stupid memorization question that can be googled in 10 seconds.
How do you know that the basic question is what sank you? Is it possible that the interviewer didn't like the architectures that you came up with? Or perhaps you left the impression that you would not like to find yourself in a hands on position where you have to do things like set the sticky bit? (Based on this post I'd get that impression myself. But everyone here is hands on. "Architecture Astronaut" is not a job type we want to encourage.)
But whatever the cause, I absolutely guarantee that all three of the qualifications that you think we have are wrong. Because I am none of the three and managed to get hired.
Self-selection (in both directions)?
Well, yeah. New employees aren't going to want to start off on a bad foot, so they won't say anything. But I have several friends who've been hired by Google and they all told me they found the recruiting process to be extremely frustrating and, at times, insulting. Their experiences are really no different than mine (I applied for an APM internship a couple years ago, and passed two rounds of interviews and submitted an essay before being turned down, so you guys must have been at least a little interested in me).
When you interview with Google, you're operating on faith that the interminable, silly process will result in a position that makes you happy. But there's rarely any assurance that you'll get a job that you enjoy, or even that you'll work with people that you don't find extremely annoying. This sort of interview process works better for inexperienced people than it does for more senior employees, who tend to want luxuries like career growth and cultural fit.
In addition you interview with a bunch of sometimes friendly, yet sometimes extremely condescending engineers. Some of the engineers I interviewed with were very respectful and corteous, while others acted as if I were wasting their time.
In general, I got the impression that Google is full of huge egos and that I should feel lucky if I had the opportunity to work there. No other company would act like this toward potential employees.
In any case, another disadvantage to working at Google is that they are getting involved in so many businesses, almost any side project is likely to become their property. The company I work at now is great because as long as I don't compete with their vertical, I can start any business I want on the side.
* I applied for both APM and dev, and chose the APM route after passing first round for both.
What I found insulting was the lack of communication, complete disregard for my time, and general attitude of the HR people. It shouldn't take three weeks to let me know if I passed an interview, for an internship, when I tell you I'm under time pressure. I had an exploding offer from Microsoft, which they graciously extended so I could keep interviewing with their rival, and Google still took their sweet time. I was told I couldn't write the essay until they'd decided I'd passed the second round interview, even though it would have cost them nothing to let me write it and then throw it out if they decided I hadn't passed the interview. And when I turned it in, I was told it had to be "reviewed by the hiring committee, which meets every Friday, but they're not going to look at it this Friday, you'll have to wait a week and a half." When I basically told them that I wasn't going to let my other offer expire, they begrudgingly looked at it that week, but they made it very clear they weren't happy about doing me the "favor".
As someone else said, Google gives the impression of being full of huge egos who think that everyone is just dying to work for them, and that working anywhere else is a distant second choice. It's arrogant and egotistical. Think that if you want (even though it's not true, at least among Stanford CS students), but it shouldn't come off so blatantly to potential recruits.
Edit: timr just reminded me of something else - the interviewers seem trained to emanate disinterest. They were the least friendly interviewers I've ever had. And like I said, Google seemed at least a bit interested in me, since I got through both rounds of interviews, so I doubt it was personal.
However I didn't see the insulting bit of it. I really didn't.
When I think hard about it I do note that they ask some basic CS questions that many people forget the answers to. And people tend to avoid cognitive dissonance by finding excuses for their failings. So certainly some people walk away (as the grandparent poster did) upset that they are asked questions which are "below" them. Someone who has done this may become insulted at being asked questions.
But focus on the critical facts. The questions are asked because they are relevant to Google. When you operate at Google's scale, having people with good gut instincts about scalability matters. Most software developers don't develop that. Therefore is it really an insult to try to find out whether someone has that knowledge?
I wondered this of myself. It's a reasonable question. But like I said, I spoke to people who've been hired by Google and their experiences matched mine.
>So certainly some people walk away (as the grandparent poster did) upset that they are asked questions which are "below" them.
That wasn't my problem. I thought the questions were fine. See here: http://news.ycombinator.com/item?id=1205593
The problems are clear; unfocused interview loops leading to poor feedback, much too long process between phone screen and receiving approval from MTV, a focus on hiring those good at interviewing and not those good at engineering (hiring scores do not correlate with performance scores), and ignoring experience by offering salaries or positions significantly below candidate's current levels in the industry.
We end up being a place which is great for college hires and those getting their first chance, e.g. moving from test to dev, but not for experienced hires. And the effect is larger in some groups than others, but the senior engineers on my floor are mainly those without motivation to advance their careers and move on, even to internal projects.
unfocused interview loops leading to poor feedback
Yes, and it sounds like that is an issue they are trying to address that.
much too long process between phone screen and receiving approval from MTV
Absolutely. I am an outlier there. I took over a year from initial interview to hire thanks to the hiring freeze. I'd like to see us A/B test different interview formats to figure out how much of the process we can remove without hurting the performance of the people we hire.
a focus on hiring those good at interviewing and not those good at engineering (hiring scores do not correlate with performance scores)
This is not so simple. There is a skill to impressing people, and everyone has trouble limiting its impact on interviews. My impression is that Google does much better than most. For instance how many times have you heard someone say that their impression was really good, but when they went through the notes the person wasn't as good as they seemed. That is a case where someone's interview skills didn't have its usual impact.
The best anyone has managed do with any hiring process is to filter out the vast majority of bad people. Successfully ranking the best is pretty much impossible. The toy model I offer at http://bentilly.blogspot.com/2010/02/what-is-intelligence.ht... is a pretty good explanation of why. Just replace TST with "interview skills", INT with "actual performance" and IQ with "hiring scores". Since both actual performance and ability to interview affect your interview results, being really selective winds up with people who are good at both, and not those whose performance is truly exceptional.
ignoring experience by offering salaries or positions significantly below candidate's current levels in the industry.
This I'll actively disagree with. Google is in a strong negotiating position. They would be amiss to their shareholders to not negotiate well. Particularly since the ability difference between "got in solidly" and "just missed the cut" is rather small. But even so, if you're good at negotiating, the salary drop is much less. And there are various kinds of incentives that make your overall compensation significantly more than just your salary.
Besides, whenever you put people into a different kind of job than they have had before, you run a real risk that they will prove not to be a good fit. A drop in compensation is only appropriate in that situation. And Google's environment is different enough that lots of people wind up in that situation. (For instance I'm an SRE. That's a Google role that you don't find elsewhere.)
For someone with a short tenure at Google, I'm worried that you haven't seen the larger picture yet.
The corporate policy is to hire the best and treat them well. But we are not hiring the best with consistency, instead often weighing cost and patience higher than talent and experience.
Ask around about your colleague's referrals. For the very few that get through HC, many of those engineers pass up the opportunity to work at Google precisely because our offers were to drop them a level or two and 10-15% salary. Make no mistake, that this hurts Google. We would be much stronger to have the talent from Cisco, Amazon, and Microsoft that I've seen turn away Google.
What happens if you include the people who would have been worse here and get lost for that reason?
Unless you can make the case that the ones who are unwilling to come really are better than the ones who do come, then there is no net difference. Given the difficulties with measuring relative talent at that level, this is a really hard case to make. (You could try to do it by A/B testing two different hiring processes...)
In fact my inclination is to believe the opposite. People who are more excited by the culture, co-workers, and problems that Google has are generally willing to take that drop. Which is a sign that they will fit in better here in the long run.
> ignoring experience by offering salaries or positions significantly below candidate's current levels in the industry.
I've heard Microsoft also does that. Though I don't know their rationale, I think it's in line with these two assumptions:
1) There's a large variation in skill among programmers 2) There's no strong correlation between programming skill and years of experience
So while newly grads with no work experience will likely get an above average pay in those companies, more experienced people might take a pay cut. I think it makes sense.
The entire process took about 3 months, and at the end of it all, I was told: "At this point, we're going to be pausing on the recruiting for this position and therefore will not be scheduling any additional candidates for this role. Because the company is in a major push to meet certain software hiring numbers soon, the majority of our operations positions are slowing down at this point. I really appreciate your patience and flexibility with us. I'll be keeping your information here on file and once things begin to move again, AND if you're still interested in us, I'll be in contact."
This was back in 2007, now they contact me in 2010, and I don't even make it past the initial phone screen.
The interview process at Google is probably one of the worst I have been through. I understand you want to put everyone on the spot and make them write code on a white board right in front of you, without any access to a computer, compiler, tab completion, or any of the niceties of a modern IDE, but please:
If you're a software engineer interviewing system engineers, don't expect them to regurgitate code verbatim without errors every time. I can write a quick Perl or shell script when needed but I don't live in an IDE all day long and I don't think of every solution as a software solution. Sometimes a good hardware solution can fix bad software. I do it every day, over-engineering hardware to accommodate bad code.
But seriously, if anything, I'm overqualified for a position there and perhaps that is the problem. Google just comes off as a company that wasted a lot of my time in their hiring process. I'm happy to work in my corporate job and pull in $200K/yr. as a senior systems engineer. Google probably wouldn't pay me that much anyway.
They seem to hire good people on average. But they are not infallible.
At least the much maligned headhunters (sorry, "IT Recruiters") are more honest about their intentions.
This has happened multiple times, every one unsolicited. I'm sure it'll happen again in 12 to 18 months.
If a place could provide me with a new challenge, puzzle whatever, I'd stick around, but a lot of places that have good environments are small, and therefore one product shops.
It's this kind of thinking that I fear is far more prevalent among new hires, and in my opinion is far more damaging. The company shouldn't need to "provide" you with a new challenge -- you should be seeking them out and creating your own challenges.
There was ALWAYS things to do. I guess I get my rocks off by actually accomplishing things. That means doing a really good job no matter what challenge I'm dealing with. There are a lot of challenges in software development. I think too often folks are looking for glamorous problems to solve. It's more about ego than anything else.
You could have someone who is just great in job description X, but you promote them to Y and they suck at it. I see this all the time.
Not everyone's goals are the same as your goals. It's crucial that a manager try to understand his employee's goals and motivations, without imposing his own.
There's also an implicit assumption that we should derive most of our satisfaction from our jobs. It's okay to have a job that's "just a job", while doing interesting hobbies or side projects.
The result of such a system would be constant job shopping to get a better wage, and low satisfaction for many workers. I think this would have destructive effects on most organizations, although if you managed to survive that initial change, it might be self-sustaining.
The Up or Out promotion system used by most companies (and for officers in the US military), the advantages of the cravath system were removed and only the up or out was retained. The most prominent example of how this perverted version of the cravath system came to permeate US industry was Jack Welch's GE. Welch is seen as a hero by business majors and every stupid thing he said or did is worshipped as gospel.
The quintessential example of Welch's stupidity came during a discussion with employees, where an employee asked about loyalty and Welch responded: "it's Friday, you got paid, we're even."
Is this true for all organizations, or just bad ones? It feels like the best devs are not on the market long, and tend to "nest" too once they find a good situation.
I wonder if the attitude here is a product of short product lifecycles and rapid gratification. In my industry, a short project is 2-3 years. An average one is 5-7 years from concept to first release.
Of course, that only works if there are other companies who are content to accumulate them. If everyone is constantly swapping jobs and never reaching partner, it's hard to distinguish the good employees from the bad ones.
But 2008 does sound about right.
Or maybe, you're attracted to flash and arrogance. Maybe you only think they were good because they told you they were and then left. Maybe you're like a pathetic person who fawns over a lover who treats them poorly.
Maybe, since you're still in business, the good ones stayed behind. Maybe you need redefine your definition of 'good'.
"Flash and arrogance" are not the same as skill, but they're not inversely correlated either.
No kidding. I don't think anyone could argue that Linus, for just one example, is unskilled... It's a pretty well established fact that he can also be arrogant.
The reality is, company loyalty is nothing like family loyalty. Here's the key difference: the moment an employee stops being a net win for the company, they are let go. Yet somehow management expects employees to stick around because of some imaginary "loyalty". It does not exist.
That curve there doesn't look exponential, buck-o.
This is what the biglaw partners produced by creating a professional environment in which only a few percent have a chance at making partner, and the rest have essentially wasted years of their life for nothing.
But what evidence is there that the structure of the hiring practices is what attracted these people? My unsubstantiated hunch is that Wall Street professionals might be there because they're after money or prestige, not because they're inevitably attracted by the hiring methods.
That decidedly is NOT the outcome of the Cravath approach, although it may be the outcome of the Latham and Watkins approach.