Hacker News new | past | comments | ask | show | jobs | submit login
Why Good People Leave Large Tech Companies (thinkgrowth.org)
410 points by scdoshi on July 22, 2017 | hide | past | favorite | 245 comments



This post rings eerily true. Recently had a company all-hands where the CEO said basically the exact same lines. The whole "if you don't love working here, then you should leave" bit made me cringe. Easy for you to say when you've got a significant equity share in the company.

The saddest realization I've had working at companies is how power-hungry people are, how little respect the people in power often have for those "below" them, and how important politics is even in a field like engineering that you'd expect to be meritocratic. Sweeping decisions are often made in a small room of a few "higher-ups" without any input or regard for those "below" them. Providing counter-arguments that question the decisions of the executive caste is often seen as a threat (how dare you question your leader?). The shy and humble rockstar coder who kicks ass gets little recognition while the smooth-talking sycophant gets accolades and climbs the ladder.

Corporations are authoritarian tyrannies with strict hierarchies. America was founded on the principles of democracy, but we tolerate tyranny in our workplace. The only way to change this is to remove the asymmetric dependency of the employee on the employer (eg. UBI).


I'll take the unpopular position of supporting a small room of a few "higher ups" making decisions. This is exactly what you want: a small number of people with a lot of skin in the game making important decisions. Good leaders gather feedback and counter-arguments beforehand, but then make a firm decision, and it's diminishingly rare for that decision to please everyone. The people who are not pleased should still follow their lead, despite thinking the decision is wrong. Sometimes the decision is wrong and sometimes the people who think the decision is wrong are the ones who are wrong. There's no way of knowing a priori, and someone needs to be empowered to take the leap on doing what they think is best, and it makes sense for that person to be a "higher-up". Decision by committee or by democracy is too inefficient for a business.


In my professional experience, every time higher ups made a decision without input from worker bees, the project failed, delayed, or cancelled.

I personally love it when higher-ups make a decision without consulting me. Because then I have zero skin in the game. I don't work ridiculous hours. When I am involved in decision making, then I make sure project succeeds. Sometimes that means working late hours, taking pro-active steps to remove blockers etc.

But if I am told what to do without consulting me, then I don't care. There is a lot less stress on me. If it appears decision was stupid and project will not meet deadline, I make sure everyone knows and rarely ever put in more than 40 hours on such projects.


> But if I am told what to do without consulting me, then I don't care. There is a lot less stress on me. If it appears decision was stupid and project will not meet deadline, I make sure everyone knows and rarely ever put in more than 40 hours on such projects.

I envy people who can change into "I just do what I have to do"-mode when they don't have 'skin in the game' ... I always feel as if I have skin in the game and get stressed even on the most ridiculous projects where I knew (and stated) from day 1 that this just won't work the way it has been envisioned by higher ups.


I think you need to learn this ability, otherwise you might suffer a burnout.

You need to remember, whether you put 40, 60 or 80 hours p/w into a death march project, won't be recognised. Everyone will be too busy to tally who's working more. By sacrificing more of your free time, you are just working for free for the people driving the project, who may be doing this purely for political reasons. You will also make it more likely for similar projects in the future.

I maintain it's better to not overstretch yourself and let the project fail. Better for your health, and better for the company, so they manage the next project better and have workers who aren't burnt out.


You say you envy them but I'm not sure you really do. Working without feeling involvement or purpose in what you do is mind-numbing. Of course lots of people have to endure it, and some find solace in hobbies/family. But if you are the type of person who always feel you have skin in the game, I don't think you'd last a month in a position where you don't care :-D


That's an odd viewpoint. Work hands me money, some projects are interesting others less so. But, doing a good job is enjoyable even if you don't care about the end result. Like playing a sport without paying attention to the score.


It's odd only if you have not tasted it. Once you have the experience of work with a sense of purpose, working without it (if you're skilled enough to be in a position to choose) looks like an odd life choice.


I have done work I though was important, as in saving lives etc. But, it's not like I am the only person that can do this stuff. Really when someone else is paying you they could pay thousands or possibly millions of other people to do that job. The fact you happen to be the one doing it is not really important other than a sense you should not mess up.


There's a difference between having A Decider and having your decider make all the important decisions.

Yes, there needs to be a captain of the ship, and when she tells you to do something, you fucking do it because that's what captain means and you can kvetch about it when you're back on land.

But if the captain is making all of the important decisions, something has gone terribly wrong and your boat will not function. The captain is there to

1) make small changes necessary to stay on a long term course

2) push decisions through in moments when speed is critical

3) break conflicts that can't be resolved

They are not the chief achitect or the chief strategist or the chief anything really.

And if you are both the captain and the chief strategist, you need to recognize that you're playing two roles in one body and you need to be very aware at all times of when you're wearing the captain hat and when you're not. You don't get to boss people around when you're doing strategy.


I agree with you, but I'm not arguing for a single "Decider", but rather a small group of what the comment I replied to referred to as "higher-ups" being responsible for making decisions in their areas of responsibility. I think this works in your ship analogy as well, but I don't know enough about sailing to say what those people are called - mates? In any case, you get the drift :-)


If anyone wants to be part of the decision making process, they really should strive to get in that room. And when they get there, they will appreciate the absence of noise from people who think their voices automatically matter. If a company doesn't have a way to gather important feedback from its workers, then that is a failure. But that does not equate to everyone needing to be in that room.

When I started out, my goal was to have a meeting every week and to include everyone. It was a waste of time. People would throw out ideas they had no intent to pursue, and when they were not talking would start fiddling with their phones.

You'd be surprised how many people don't value other people's time, or even other people's ideas. It's easy to imagine you could make a difference or be that difference, but if you truly believed you should have a say, then you should make it known, and either prove yourself, or find a job that comes with the satisfaction you desire. Like, maybe a more team oriented environment.

The truth is, especially at a large tech company, you are replaceable. No one is asking for your personal touch be it at a Foxconn assembly line or an engineer at Cisco. Unless of course, your job title includes "designer" or "architect" etc. But otherwise you're there to do the impersonal work you agreed to do for the impersonal money they're paying you. That's all a job is. You get more for better skills and more experience / less risk. All they are looking for is a guarantee that the work will get done.

This isn't to say you shouldn't have fun or that you shouldn't make the most of it. It's just saying that if fun or "most" entails being heard by execs or barking up the tree, then you will pay for it one way or the other; either with your emotional well being, or with lower pay due to greater overhead for being noisy and needy.

Managers are paid human sound barriers that permit lower quality hires for less pay. This is an important role, as are those being managed. But to think you can get past the manager who's very job is to silence you is the wrong approach. Don't raise your voice or kick harder. You need to become a manager. Either that or go work at a smaller company where the CEO sits across the room.


> The truth is, especially at a large tech company, you are replaceable.

This will sound harsh to many, but I believe it's basically true. At large companies, the innovation has already happened; they found a market and are now mining it. Very few large companies can continue to innovate (Apple being the main example), but the rest just ride off into the sunset. Sometimes the market they're in evaporates, and they die, but usually they muddle along.

Venkatesh Rao[1] wrote a series of blog posts on this that are frightenly accurate and jive perfectly with my experience.

[1] https://www.ribbonfarm.com/2009/10/07/the-gervais-principle-...


You should make a new HN Post with this link. It's quite good.


Everything is replaceable, even and especially the large tech company. The constant reminder sure kills productivity though. People are more productive when they think companies actually give a shit about the hard work they put into the company.


Yes. And this is where it gets sociopathic. Large companies will hire "good" managers to make people feel they make a difference, that they are being heard, and that the company gives a shit. But of course, this is business as usual. Worker satisfaction is just a number on a spreadsheet that execs in a room move up and down with pirks, with corporate philosophy, with company events, and with dangling carrots.

This isn't to say it isn't important. It is, and that is why they will spend time and money on it. But if, say, the cash is low, these are things that go, and rightfully so if it's to stay in business.

And the kicker is, the guys that run the show, the guys that start businesses and come to work with a mission, the guys everyone seems to want to be -- they don't need anything. They're already as motivated as can be, take on all the responsibility, and even sign the checks to pay everyone AND pay for the things they believe they will make them happy.

And this truly is the paradox. There is nothing cushy about an executive job, especially at a tech company. And I'd say never at a startup. It's cut throat as fuck. If you can't deliver, you're out. You should be out. Everyone is watching you, and everyone will complain. But you have no one to complain to. Having someone to complain to, having excuses, these are all pirks.

But if you can deliver, then you have professional freedom and high reward, at least in a capitalist economy. Then you get to make life cushy for yourself if that is what you desire.


You like people telling you what to do and having no control over those decisions? Personally I absolutely loathe such environments, especially when the decisions are made haphazardly without proper rationale, which they often are (executives are human too).

At the end of the day, the "subordinates" are the ones actually doing the far majority of the work, and they far outnumber the managers. I don't see why the workers shouldn't at least have a seat at the table when the decisions are being debated that would affect them. Often the managers are so removed from the work that they lack a lot of the insights from the front lines.

The most common rebuttal I hear when I bring this up is, like you said, "too many people makes things inefficient". Bullshit. Sure a decision ultimately needs to be made, but there's no reason one shouldn't be allowed to provide input.

And in my experience, I do think it's more about people wanting to feel powerful, and fear of losing this power (eg. like the other commenter who mentioned fear of "power inversion"). The people in power are generally the most sycophantic, and thus have the least interest in interacting with or relinquishing power to subordinates because it doesn't personally benefit their position of power or ladder-climbing question.

If a bunch of executives make a bad decision, then "oh well, there's no way we could've known". If a bunch of executives make a bad decision after a meeting with subordinates who questioned their decision, then it makes the executives look bad and threatens their judgement and position of authority. So from a selfish perspective, it's better to keep the minions out.


That would be the idea behind a technical lead no? Having a voice for the tehcnical team.

Everyone should have a voice but not everyone needs to literally be at the table. Seeing companies go from small to larger and seeing how the flat structure begins to show caveats as a team grows, I agree everyone should have a voice, but ultimately a decision needs to be made and a big group of people are never going to agree on everything. You can bikeshed all day on which CI platform to use for example but ultimately a decision gets made by someone that there has been enough discussion and this is the platform to use.

That process can be horribly perverted and have the wrong people making terrible decisions but that is a separate problem, not a problem with the idea of consolidating many voices into a decision.


Of course a decision ultimately has to be made, and I'm not claiming that every decision must garner unanimous agreement from everyone. That's impossible. I'm just advocating for more democracy and inclusion. Although it might be a hit to the ego of a lead higher up in the foodchain, ultimately I think it improves decision-making and increases employee engagement.


Much like voting, being at the table should be opt-out.

Else, as first poster said, the process is tyrannical.


Tyrannical is a bit extreme. You should still get a voice, it's just communicated through someone else who is your advocate and has your best interests in mind. Hopefully he still works along side you or at least understands your concerns.

Not every business decision requires every single persons input either, and although you may be affected that doesn't mean your input was as valuable as everyone elses. The CI team's choices might affect my branching structure. Tough, that is their responsibility. If it's extremely detrimental then you can raise concerns, talk to people, get out of your seat and work with the humans around you.

We don't need another revolutionary management fad, where a hundred employees sit around a satiricaly large table and vote by show of hands. That works amazingly at small companies and it's why I prefer to work at them. But let's get real, management at scale is hard.

Ultimately though, if you feel like you don't have a voice where you are, work to get a voice, or find a company with a structure that works for you.


> You like people telling you what to do and having no control over those decisions?

It honestly depends on how much skin I have in the game.

The founder of my company spent years using his own money and getting personal loans to fund it. So the decisions that he makes directly impacts him.

A lot of the managers here also grew with the company and have invested years of time and money.

For me, this is just a job. It's a good job, but I wouldn't really be willing to sacrifice anything for it. I would leave for another job before it came to that.

I think a more fair way might be how law firms set up partnerships. If you want to be a decision making member, you have to put in a substantial amount of money.


It's the feedback and counter arguments that are often lacking, and being unwilling to admit the decision was wrong.

I've been in this situation a few times and it's very hard to push back on a decision that's been 'made' even if it's not appropriate for the team you're on.


Our CEO has flat out told us that it's incredibly hard for him to get honest feedback from anyone (except for maybe the board and investors), and another executive echoed this. Nobody wants to question the almighty CEO to his face.

Nothing against the CEO. He's an extremely friendly and approachable person. Most people just fear questioning authority and power, and the CEO in a modern day corporation is revered similar to a king in a monarchy. It's always been like that at every company I've worked for.


Your CEO may be an exception, but every time I've seen some given honest feedback after a CEO asked for it, and it was against the CEO's position, they had their career at that company tanked. Most of the time when a CEO asks for feedback in a meeting it feels like that speech Saddam Hussein gave where all his detractors we're dragged out of the building. At this point a CEO would have to make a concerted effort to publicly get corrected and take that advice just to get past the culture that all of his peers have built in the US. Even then people are going to be hesitant because there is no protection for an employee who speaks up


It's not possible to implement some type of anonymous feedback system?

My company sends out periodic anonymous surveys as an attempt to garner feedback from the employees.

The only problem I see is if employees, for whatever reason, don't believe such a system is truly anonymous and thus refuse to give honest feedback. I don't see that being a common trend though.

If so, it probably signals more serious problems between employees and the higher-ups ...


Too many companies have eroded employees trust by lying that something is anonymous when it is not.

I personally will never trust any such survey at work.


I live when we are emailed "anonymous" surveys with a query string. It's even better when they are engineering specific surveys because at that point you have to question if they even think you can do the job if they thought they could get blatant tracking like that past any engineer


I saw such everytime too. These tracking params are to guarantee that the survey is filled only once by a person. But tracking is possible if email and the survey match is stored somewhere. It is all up to trust.


I've seen anonymous surveys that ask for the team you're on. Way to narrow down the possibilities management.


My favorite is where there is a remote team and it asked for team and location. That pretty much uniquely identified everyone. I made sure to give stellar reviews and praise for all things there :-)


it is possible, but most of the times it's not anonymous. I.e. after an anonymous survey for some ridiculous "company of the year" award (by a third party mind you..) it was identified that some women didn't vote the place as meritocratic or equal opportunities. They were dragged into a meeting room to "discuss" about their views. This served as a lesson to all these women and all of their colleagues to never trust "anonymous surveys" in the workplace, ever.


I never trust claims that any given survey is anonymous. To me that's a lie to gently coerce employees to tell the truth.

Not that I give a crap anyway, I still tell the truth knowing full well it might be used against me. If they can't handle honesty, they need to surpass 16-year old mental age. And I can find another job before my notice period expires.


When I worked at Google we did "Googlegeist" (our anonymous feedback system). Many of my peers would hold back because they thought management was keeping tabs on what feedback we gave...


The trackingest company on the planet not tracking its own employees seems very far-fetched!


Heh, I assumed it was tracked and gave profuse accolades to the management team.


Yes. I think it's critical to define three things when making a decision:

a) What was decided (obvious, but you'd be surprised how often people disagree)

b) Why it was decided - Now you can construct a basic "Given X, Y, and Z, it seems like a good idea to A and B"

c) The criteria for success or failure - how would someone who did not make the decision know whether it was successful or not?

Without all three, you can't make empirical decisions and then follow up on them. Decisions without any of those three are unmoored from reality.


There's a good reason it's hard to un-make a decision that has already been made: the thrash is usually more damaging than the decision. A sub-optimal strategy is better than a series of changes in the strategy.

It's like in chess, when people talk about making "principled" moves. It means playing the move that best fits the plan you have been pursuing, rather than a tactically more tempting move that is less consistent with your overall strategy.


That is the same argument kings and emperors used. But over time the abuses, and the frequently stupid decisions, became too much. It's faster in an business but no different.

Democracy is coming to the last bastion of dictatorship in modern western world. It won't be pretty - but it will lead to better companies


Public companies are somewhat a democracy of ownership; they publish accounts and the board is accountable to the owners - the shareholders. Privately held companies are quite different, and there is a strong argument that they simply should not be allowed above a certain capitalisation - say $40m because they create an uncontrolled risk to the economy. For example; if five of the top 10 unicorns fail in the next three years due to Enron style lying this will implode the venture market choking investment for a long, long, long time.

But public company democracy is hugely problematic; modern shareholders think as a herd and work on 60 day time scales. Fortune 500 companies need diverse signals (and sophisticated risk management) and visionary management - creating processes, people and markets over decades. This is the model of the private market, but sans the potential for fraud and collapse.


I worked in a company selling equity research to large pension funds - and one thing that I tried to push was it was possible to give everyone of their pension-holders a vote at every AGM (sonfor exampleninstead of one investment manager block voting 10% of coca-cola shares, the 10 million fire fighters of America could decide for themselves which way to have their 1.4 shares voted).

It still is a feasible idea imo. And would lead to an lot of new agm items !


Yes - it's now a lot more feasible. I'm not sure it'll work though as my guess is that this will lead to end-game democracy quite quickly a-la activist investors vs bunches of equity managers now. I would prefer measures that increase the diversity and long term stake of the decision making groups and diffuses the complexity of the individual decisions that they make. Most of all I would like the short term benefits of financial engineering (and financial engineers) to be better balanced against the long term impact of reduced investment and loss of capability. People capital and data assets should be on the balance sheet.


Ha-Joon Chang is a economist and writer with similar views - just reading the last few chapters of his 2010 book and he says very similar things


Fantastic tip - thank you I will read his work. Amusingly I am watching a documentary called "The Mayfair Set: part 3" by Adam Curtis which is describing the idea of technostructure as developed by JK Galbraith as a response to the robber barons of the depression and how it was dismantled in the 1980's...


But businesses aren't states. If a business makes the wrong decisions, it can fail and be replaced. It is too dangerous for states to go through failure and replacement, but as you note, it's also bad for there to be no mechanism to punish of bad decisions. The goal of a republic is to bring the fail-and-be-replaced mechanism to state governance, but in a controlled way. But this is less efficient, so if it's ok (with respect to society at large) for an organization to fail, it makes sense to just use that mechanism directly.

There's definitely a loophole with "too big to fail" companies. Maybe those should be run more democratically. I'm not sure, I've never worked for a company that couldn't just fail if it persistently made the wrong call.


Interesting comparison of business vs states. The thing is there are an awful lot of businesses larger than states.

Just take simple comparisons of population (I know I know) and the smallest states like islands have tens of thousands - of the 233 nations in the UN we reach only 100k people at 200, and companies like Bank of America employ more people than "real I have heard of them" places like Iceland.

So I like the idea of just letting companies fail - but putting half a million people out of work is pretty bad.


a small number of people with a lot of skin in the game making important decisions

The problem is exposure. Those people will capture all of the upside if they get it right, and their subordinates will take the downside when they don't.


Well, no: share price.


Not many at the ordinary-worker level have a meaningful equity participation or bonuses. 10% of your salary at most at most companies if an impossible set of conditions are met, or laid off when the company needs to save some money, versus executives who will pocket millions whatever happens.


Most big tech companies give a substantial portion of compensation (up to 50%) in the form of RSUs, even for "ordinary" engineers.


> The whole "if you don't love working here, then you should leave" bit made me cringe. Easy for you to say when you've got a significant equity share in the company.

In this field, we can in fact move, so "love it or leave it" is not a hollow demand. People in some other fields are far more stuck. A military officer's career is over if he says no to the hierarchy he is part of. He may find work after the army or navy, but it will be very different work, effectively the start of a different career. We on the other hand can move pretty much down the street and do very similar work.


Of course, now and then, military officers DO go to work for the competition, but in that field, that's kind of frowned upon.


Avoidance of power inversion is, IMHO, the greatest contributing factor to this state. Management have little to no incentive to assisting the upwards mobility of their subordinates as it is, but the social stigma of someday possibly answering to those you have authority over can drive individuals to undermine the aspirations of others.


A colleague at a former company asked his then manager about the track for promotions. Said manager basically laughed and said "if you got that promotion, then you'd be competing with me". This was a company that had bands that were lumped together for purposes of evaluation.


AFAICT, the best route to promotion is a transfer to a separate administrative unit altogether, and so avoid this situation; and the best route to a raise is to leave to another company.

Relying on your loyalty to be rewarded is a fast track to being played for a sucker.


HP?


IBM?


I am in a quickly growing mid-size company which has reduced this problem. The co founders are cool, considerate and have respect for new developers. They provide opportunities to shift across teams and roles based on the principle that not everyone would find right fit in the start. And the CEO answers even mundane questions anonymously. I find it one of the main reasons to stay there even though I have been working there for 2 years now from my graduation.


> America was founded on the principles of democracy, but we tolerate tyranny in our workplace.

While America was founded on the principles of democracy, didn't they make sure that only a select group of people could participate?

In that way, it's similar to how companies are run, with a select group of people making decisions.


Yeah, the people doing the work usually know the most about how it should be done. Even without UBI, collective ownership is a strategy worth considering.


We tolerate tyranny and imbalanced power structures everywhere in this country. Corporations are a cheerio in our cereal bowl of oppression.


From what I've observed, a lot of people 'tolerate' it because they just aren't willing to take the risk to achieve power in the first place.

For example, very few people are willing to leave their cushy jobs and grind it out a few years at a startup that might fail.


It is more often about not having an opportunity to choose, and not about not being unwilling to switch to startups.


I was wondering about a country with a king with a board of directors for a while now


Country? I'd say species.


I read somewhere - possibly here on HN, but I am not sure - of a Russian who migrated to the USA after the end of the Cold War, who remarked that in the Soviet Union, the state had been very authoritarian while the workplace was relatively democratic, and that in the USA, it was the exact opposite.

And sadly, I believe that even with UBI, people will still play their power games, do politics, all that. There might be less of it, but either that is part of human nature (if there is such a thing), or else it would take a massive change in society to make petty turf wars and office politics disappear.


> in the Soviet Union, the state had been very authoritarian while the workplace was relatively democratic

Probably if we're talking engineering bureaus in late 1980-es. But even then the setting is quite Dilbert-esque. At best, the democracy was like you can go to hair salon at working time, but not like you can affect any management decisions or working process in any way.

It can be in part explained by the fact that there was no relationship between how productive or hard-working the bureau or individual is and how good payment is. In fact, at the salary was most of time constant for any given profession, the situation didn't incentivise hard working, so it's not a surprise if there was little production pressure at workplace. Which leads to one of reasons of failure of the USSR.


This is because back then cooperative was most popular form of enterprises in eastern block.


> Providing counter-arguments that question the decisions of the executive caste is often seen as a threat

The key to have an impact is not to pose critical questions, but to make constructive suggestions. Instead of saying "you are doing this wrong", suggest how to do better. Good leaders appreciate and encourage this, in particular if the request comes in an actionable format, i.e. "I suggest to do X in order to achieve Y" is much better than "decision Z is stupid".


I don't find it very comforting that the people who are compensated the best have to be treated with kids gloves just so they can listen to the information coming from their people. I understand that may be how it _is_ but it's not how it _should be_. Additionally, people lower in the management chain are just going to avoid volunteering information if they are not 100% certain that the bosses are gonna take it well


It's not kid gloves so much as laziness. A good leader can listen to the problem, and just turn it back on the staff for a solution without wasting their brainpower, but many leaders can't... They hear the criticism and think they need to go into "formulate appropriate response" mode. That leads nowhere because there's no space left in their brain, and even if they come off sympathetic the net result is they're not really listening.

In those cases, as the underling, it's better to offer a suggestion because they can run with that.

Of course, it's easier said than done. Especially if you're busy, you know, doing your job, it can be hard to find the time to sit down and find solutions to what is probably a pernicious problem if it's being elevated to leadership.


The parent advice works exactly the same way whe you talk with people under you or with peers. Altrought they have less power to retaliate visibly, they will listen better when you do what parent suggested.


Really legendary CEO's don't even give stock options to early employes.

When Steve Jobs Refused To Give Early Apple Employees Stock, Steve Wozniak Offered Them $10 Million Of His

http://www.businessinsider.com/steve-wozniak-gave-early-appl...


I believe in that instance, he did give stock to early employees, but left one of them out (probably because he wanted to be a dick). The rest of the early employees felt bad for the guy since he had been there since the beginning and Woz offered him some of the shares.


Your point? If you wished to imply that because Jobs did it - it's the way to go, you're committing a fallacy of "appealing to authority" [1]

[1] https://en.m.wikipedia.org/wiki/Argument_from_authority


the point that strangely even being a douchebag and treating employees like crap he managed to achieve great perceived success and for some people success it's all that matters.

Amazon could also be another interesting example

Reminder Amazon treats its employees like shit

http://gizmodo.com/reminder-amazon-treats-its-employees-like...


Maybe America wasn't founded on the principle of democracy. Have you watched the movie Killing Them Softly?


In a democracy, if you are unhappy with how the leaders runs the country, you vote them out.

In a workplace, if you are unhappy with how the management run the company, you vote with your feet and leave, nobody's forcing you to stay.


And the guy who points out the emperor has no clothes gets put on probation.


This is why its always possible to hire great developers - because some companies and hiring managers think that people should be not just great developers, but willing to jump through ridiculous hoops to work there.

If you want to hire people, drop the attitude of "we don't want people who aren't willing to prove how much they want to work here". Instead, give them every reason to want to work for you.


Fwiw, one "advantage" of "wanting to work there" is that counterproductive management practices can survive longer. If I'm your boss and am treating you like trash, and you complain, I can just say "oh it sounds like your commitment to this company isn't very high, shall we discuss your future?" That will work a multitude of times with a gaslit employee who really drank the company kool-aid.


Also, companies can use "level of enthusiasm for working here" as an excuse for their poor recruiting practices.

"OH, the candidate dropped out of our recruiting process? But he was only at interview four after 6 weeks.... well it doesn't matter because clearly he didn't want to work here enough - we want people who really want to work here and are willing to do what it takes to get a job with us."

Even worse: "But he'd only done our coding test after 5 weeks, there's still three interviews to go."

The recruiter usually gets a phone call at this point "Got anyone else, this time someone who actually wants to work here?"


Yes this too. Someone I know was interviewing at google (his first choice, he did a few rounds), and then later at some other places. Google took three months to get back to him and gave him a really good offer, but by that time he had already accepted somewhere else.


"But the CEO never noticed that the payoff had ended for the other 95% of his company."

It seems a lot of C*Os forget this after a while. For a lot of rank and file employees the stock price makes no difference.


Those awkward moments at medium-sized growing companies when the CEO gets in front of the company for an all-hands and says "The company is doing so well! Our stock price, as you have noticed, is way up!" The response being a couple of "woooo"s from the long-timers and senior execs and the rest of the room shrugging their shoulders looking at each other.


This happened at demand media right before IPO. Everyone was stoked to finally be able to exercise their stocks. Great opening but we were all blocked from selling. Once any of the non execs could sell the price basically screwed everyone over. Unless you were an early employee you ended up losing money. Not a good position to be in. Moral wasn't very high when I left...


But the vesting schedules sure make a difference. It's amazing how things change once you've made it past that cliff, and how people jump ship once they've got their first year. Also a year is pretty standard to get a signing bonus and relo package covered.


I don't understand why they don't hand out options on a more continuous base the way executives get them. It seems everything is geared towards staying 1-4 years and then jumping ship.


Many (if not most) companies do stock refreshes annually, don't they?


Yes, but after the initial grant has vested entirely your opportunities for growth are limited.

Here's an example - say I'm hired with 1000 units of stock over four years. Each year I receive a refresher grant of 250 units of stock, again vesting over four years. Once I reach Year 4, my stock compensation stabilizes, assuming my refreshers remain the same (I'm am obviously grossly simplifying - you could be promoted and get larger grants, the company could do badly and your dollar value be significantly reduced).

But what you can do, and what the parent is alluding to, is jump ship around year 3-4 and get the company you're going to match your current amount of outstanding stock, meaning your initial grant becomes much higher, and your refreshers do too. At least, that's the idea. It's worked for me.

Additionally, although personally I did very well on my refresher grants I know other people at my employer did not. So that's another factor.


Normally refresher grants are not based on your starting grant, but what you might receive if you were hired for the same position today.


Are you able to put any actual dollar or % amounts against this?


It's meaningless alone. It'll need to be higher at roles with a lower base salary or can be lower at roles with a high base salary. Total annual compensation is what you should pay attention to.


There's refreshes and then there's the speed of the vesting schedule.

Some places offer a bunch to start, but very little after that, which means people tend to leave once they have vested all their options/RSUs.

After the first year, sometimes your vesting schedule will be monthly, quarterly, twice a year, or once a year. As to why they don't allow everyone to be monthly - it's probably because they get to claw back a fair amount of the equity if people leave.


> As to why they don't allow everyone to be monthly - it's probably because they get to claw back a fair amount of the equity if people leave.

I may be being a little cynical, but if you vest annually or bi-annually you can get a pretty good idea of when your employees are going to leave and use that to plan your crunch periods accordingly. People are rather unlikely to quit the month before the annual vesting date.


I think if companies could actually predict crunch times I'd agree with you, but scheduling is not an easy science.


To double down on the cynicism, you also need to be sure your employees value your options for this to be relevant.


My memory is fuzzy but the one place I got options that were worth anything, it would have taken me about 8 years to double the stock grant I was given when we were acquired. So I had this big block of initial options of which hundreds of shares vested every quarter, and then dozens of shares of the subsequent grants came due at a slightly different time.

To me, the first rule of rewarding someone is to make sure the recipient did all of the work before the reward. If you make them work afterward then it sours the desserts.

I would end up holding onto those little blocks until the next batch of original stocks vested because I had to push a bunch of buttons like a monkey (in a UI designed by monkeys) for a couple hundred bucks. Which just reminded me that I could be making more money and a bigger impact working just about anywhere else.

And then they cancelled the only project that any of us thought had any strategic value to the company. So my direct manager quit. Then someone else quit. Then I gave about 3 weeks notice, but was the 5th one out the door because 2 other people resigned in the week after I gave mine. In all about 8 people left in something like 12 weeks.

Because we all quit right after the end of the fiscal year, we were all owed a bonus from the previous one. When we got the bonus check (mine was a little over 2 month's pay, but the majority of the others got better reviews so got bigger payouts) we went out for beers. Someone, probably me, asked if it was worth it to stay for the last four+ months when things started going sideways. Only one person said yes, out of eight.


> To me, the first rule of rewarding someone is to make sure the recipient did all of the work before the reward. If you make them work afterward then it sours the desserts.

For executives and directors, I disagree completely. The shareholders are paying them to make and execute decisions that will grow the company (and share price) over a long period of time. The share-based compensation plan should reflect (and help align) that they are being paid to make long-term decisions.

Those are inherently "promise/award before the hard work is done" type of grants as I see it. (Why would I pay you more for a decision you've already made or work you already did, unless we're just talking about a modest spot bonus for a job well done?)


We aren't discussing keeping directors and executives happy. We're discussing directors and executives making stupid decisions and thinking the people doing the work won't care.

Also, stock options are worth less than nothing several times over if you are not in a position to make decisions. First, they're issued at market rate, so since they're options and not a stock grant, after fees you'd lose money selling them. Except you can't sell them because they are pieces of paper for a year.

And I know this will stick in the craw of a lot of developers, but as a non executive, any control you believe you have over the stock price is either tiny, illusory, or something the executives will take away if they notice. This is their game and to them you are a pawn, no matter how brilliant and indispensable your team and boss think you are. If you're affecting the stock price then it'll be up or out for you. You'll either be made a manager or treated as an unwanted variable.


In that particular line I'm talking more about execution of incentives, then painting options with that brush. Have you ever won a contest or award at work and then they can't seem to deliver it? The check or the tickets never shows up and you have to keep working for something that was already promised you? It sours the whole experience.


Some companies do small refreshes to almost everyone.

Others do performance based refreshes, so job hoppers often think they’re never getting more stock, because they had their eye on the next gig or their side hustle or whatever.


From what I know the refreshes are typically pretty small.


I've never seen it myself. My understanding is that it's pretty rare.


Most people have a hard time understanding other people's different situation. And they don't even try if they don't have to (which they mostly only do when it's their boss or their customer).


>> "I was visiting with an ex-student who’s now the CFO of a large public tech company."

>> "(By coincidence, the CEO was an intern at one of my startups more than two decades ago.)"

Admittedly, this isn't adding to the discussion at hand. Just one amateur writer picking apart another's writing style, but...

Is it just me, or do those lines serve no purpose except to boost the author's own ego and sense of self-importance?

I feel like they don't serve the reader in taking away the lesson in the least. They really strike me as an attempt to remind the reader of the writer's own value and importance.

Maybe I'm being too cynical...


Later on in the story it's become apparent that the line that the CEO is touting is the exact same one that the author told him 20 years ago, so I'd say that part is pretty relevant :)


I noticed that but I didn't understand what he was getting at. Was he saying that the CEO/former student was:

A) Repeating what Steve told him and Steve had changed his mind about that advice?

B) Repeating what Steve told him but in the wrong context?


To me it sounded like the author had truly believed that advice at the startup stage but now in a large company he saw how those words rang hollow as the employees were no longer benefiting from the companies growth. He seemed embarrassed that his words were being used to justify adding 45 ×70 minutes of commute time to a team that wasn't getting early employee equity


Thanks!


I was skimming through the article when I read that line then I assumed the author might be someone important so started reading the rest of the article with more focus.


Shouldn't you care more about the topic and if you find it agreeable or even inspirational instead of judging it by the author's perceived importance?


Ideally yes, in reality you cannot process everything so you filter the information based on the author's importance.

e.g If you read some financial advice on a random blog you might ignore it but the same advice coming from Warren Buffett will be taken seriously.


Its Steve Blank - he's just pointing out facts that support the story, it happens that he works with lots of successful people and companies.


Just another revolution of the wheel of the infamous "How Software Companies Die"[1] which has this balancing note: "The environment that nurtures creative programmers kills management and marketing types - and vice versa."

When a product innovation company turns to medium size, the process comes in with the executives and soon after innovation dies, but the product market value is realized and efficient. The problem comes if the leadership isn't repeating the cycle.

A company can thrive if they stay innovative and invest in new products always though, most of those companies are engineer led because it leads to happy development/value-creation: Amazon, Google, Microsoft (except for the Ballmer era), Valve/Epic in the gaming industry etc.

[1] http://www.cs.cmu.edu/~chuck/jokepg/joke_19970213_01.txt


Good management is fundamental to environment that nurtures creative programmers. Such environment does not appear out of nothing - it is result of a managers work.


When I worked for a large multinational energy services firm, one of the bosses I had (they changed every 2-3 years) was a huge bully. One of those "great coworker, bad manager" types. My wife had passed away, and as a result, my performance had dropped.

One of his lines (verbal in person, not on paper) was "If you don't want to work here, there are plenty of people that do."

He was the only boss I've ever had that made me consider leaving a job I'd had for 7+ years (at the time) simply because of who my manager was. Needless to say, about a year later when he called a meeting to announce that he was leaving for a competitor, my back popped as my shoulders un-tensed.


I had a manager like this.

I scheduled a 1:1 with his boss. Half hour meeting, didn't tell my boss what we talked about beyond "a discussion about my career". My manager didn't even come up in the meeting.

Instant improvement in manager's behavior. Assholes know they're assholes, and the appearance of connectedness (along with deliberate efforts to keep them off kilter) is usually enough to keep them in line.


Oh, I like this. When your boss talks to his boss about the meeting, his boss doesn't have any specifics about him, which looks way scarier. If you brought up the manager, it'll more likely wind up looking like something manageable.


"Managing up" doesn't just involve sucking up. Your knife may be smaller than your boss's, but it's still a knife -- a lot of complaints about the modern workplace would disappear if more subordinates learned to use the tools at their disposal.


I had a boss like this. Talked with his bosses multiple times, no change. When I left a couple of weeks prior to my one year vest and another colleague did the same a couple of months later (both of us key/senior people), they noticed a little bit. Eventually said individuals behavior and reputation impacted his own goals when seeking funding. That said, upper management didn't do anything until after the fact.


Yeah I've noticed that usually you need at least 4 people to quit before anything happens to the boss. Even if they know he sucks they're gonna try and keep him on. No idea why, but it has the appearance of "he's part of the mgmt club and you aren't"


It's because that boss is part of his boss army in the company's game of throne. Don't turn lightheartedly a supporter into an enemy.


It is because people prefer a known bad employee than a wildcard.

With the first you can prepare for their fuck-up, with the unknown things could be a lot worse.


I've had a boss like that and his boss didn't want to remove him because he would have to admit that he made the wrong choice in promoting him.


Excellent point. I'm pretty sure this is a thing, I vaguely remember reading something about how getting promoted gives you some "invisible leverage" (my words) because now the company has decided you are valuable and special and they don't wanna look like they made a mistake. Thanks, this actually helped me understand an instance of where several not very good managers got further promoted and it made no sense to me.


The people at level n+1 to you in an organisation are there because they have the support of people at level n+2. Your issue has to be serious enough to get the attention of someone at level n+3 or nothing will happen. And the problem of one employee not getting on with his or her line manager, isn't serious enough in reality.

The only power you have in this case is to go elsewhere.


My buddy told me a story of what he saw at his company. It was an interaction between a CFO and a new lead developer at a small tech/startup company that actually had been around quite a while.

It went something like this.

Dev: Can we get 2 21" monitors for developers?

CFO: Why? Laptop LCD and that old 19" monitor seem to work together just fine.

Dev: Yeah, but we can be more productive if each dev can get 2 x 21 inch monitors.

CFO: Uhh, no. I get more year end bonus for every dollar I save for the company. So maybe we will revisit this later?


Ugh. So much this. Story time.

Doing work with a 3rd party firm on some simple dev work (integration into a few partner APIs). We're a big Azure customer, 3rd party knows this. Gives us ARM templates for resources needed to deploy.

Get on the phone with the IT folks internally, state we need these ARM templates deployed and monitored. Queue two week (plus) process, 100 questions, and department to department costs (all of it is outsourced) which are quite outrageous.

The costs are so high that they probably wash any revenue/profit from the partnership.

You know what? I have access to one of our Azure subscriptions. I'll just do it myself guys, to hell with the consequences.

Usually this results in noise later, but screw it, I made us money now versus incurring additional cost and made some money later.


This is probably the right thing to do but... Do you realize how many people you're going to piss off because with reduced work and costs they don't get their share of the cake? Some of them might be in the management above you. I wish you good luck.


Haven't been fired yet. :-)

Thankfully I work for someone who thinks making money is more important than self-imposed rules that in most cases just slow us down.


It won't be the first or the last time someone uses their own resources to jump start something while the bureaucracy does its thing.

Problem is that, without that bureaucracy sometimes ,'defectors' as Bruce Schneier would call them, will take advantage of those systems and use them for their own personal gain. The "this is why we can't have nice things" rings true for a lot of things related to purchase, money, benefits, etc.


Very true, but on paper everything relies on everyone not "being an asshole".

Same is true for many of these processes that are put in place. Everyone just needs to remember once in awhile that we all work for the same place, and all want to make money.


Wash any from your side or the partners? If the other company sees this as a breach of trust you could be cutting your company out of future partnerships with this company (or even worse have to undo your code and getting black listed in the industry.)

Best of luck either way, just remember humans aren't rational agents by any use of the word.


Our side. The partner wouldn't care about our internal costs (e.g. this is basically a referral program, etc).

So I see what you're saying, but it's not an issue here.


This attitude of "you really have to want to work here or you ought to leave" justifies a lot of insanity. I've heard it from companies who make potential employees jump through ridiculous hoops to even get a chance at a job. Here's reality for people who suffer from this delusion: most people don't give a fuck and are just looking for a job. They're applying to dozens or hundreds of jobs (yes, even in software), and expecting them to know everything there is to know about your company just to apply (like providing a detailed cover letter) is downright insane. This is how companies with such an attitude problem attract "yes-people," suckups and other undesirables and miss out on real talent that isn't going to stand on its head just to get a chance at an interview. Likewise, as the article points out, this toxic attitude is just as bad at retaining employees as it is at getting them in the first place. What I'd like to see is the second part of this story. How these people then hired another 50 software engineers with actual talent in the bay area. Most companies I speak to have trouble finding one or two, let alone 50. And all because of an incredibly naive and stupid attitude of the company's execs. This is indeed a case where the founders should have been replaced with proper executives, though I'm not sure 'proper' executives would have made a better decision.

As an aside, one shortcut to weeding out shitty companies is to simply filter out companies that say shit like, "we are on a mission to change the world." That's a guaranteed bad time.


As an aside, my 20-something-SF-resident-friends are flabbergasted when I tell them that I, as a person who's spent his whole life is this start up la-la-land that is SV, have absolutely no interest in "changing the world".

I just want to work on interesting business problems, just like many others just want to work on interesting technical problems.


Yup. It's called having some goddamn boundaries. My work persona is there to clean up some code, write some features, and make the business processes we support work slightly better. For this, I get money, which I take home and enjoy through hobbies, friends, and loved ones. It's a good enough life, and I'm perfectly happy with it.


In my experience, the notion of "change the world" has no age bar sadly. Also, "change the world" is often thrown about in arguably shallow contexts. But then look at how Facebook got started, and it is fair to say that it has changed the world. My point? I agree with you, but I am not sure if that's just cynicism because arguably "shallow" companies have changed the world for real.


Facebook might have changed the world, but I don't think it's for the better.


People are applying to dozens or hundreds of jobs at once? How is that possible? I'm generally only considering 1 new employer at a time, and the most I've ever done concurrently was applying to two companies in CA at the same time.

How could there even be dozens of companies that you'd want to work for at any given time?


Maybe it's different in SF but out on the east coast I've seen people be passed for the wrong version of jQuery on the resume, or literally "not enough eye contact". Applying to jobs out here is kind of a crap shoot where you shotgun out to a ton till you get past enough bullshit to be given in person interviews where you can actually demonstrate your skills


> I've seen people be passed for the wrong version of jQuery on the resume

Well, those people dodged a bullet, then...


I agree, but since its difficult to know that ahead of time, you end up applying to multiple companies


If you're putting jQuery on your resume, you might have bigger problems than versioning.


I interviewed someone recently with FTP on their CV. Now, running a big FTP site, that's CV-worthy. Contributing to an open-source FTP client, that's CV-worthy. But no, this person literally listed being able to FTP a file as one of their "skills"...


Are you kidding? Most people don't care where they work. And why should they? Most places are the same, especially--but not exclusively--for lower paying jobs. Is there a big difference between working at McDonald's or Burger King? Hell, there isn't a big difference working at various tech companies. Most people just don't want to starve and be homeless. You can apply to one employer at a time. And if they don't respond? How long are you going to wait for them to respond? Till your money runs out and you can't buy food or pay rent? Beyond that, while you're sleeping on a park bench with all your worldly possessions? I mean, surely, if you don't need to eat or have a roof over your head, then you have the luxury of applying to one or two companies at a time. The rest of us don't have that luxury. And really, all it requires is emailing your resume or filling out online forms. It's not that hard to apply to multiple places at once.


Plenty of people don't have companies in mind, just jobs in mind.


You could look at all postings over the last month, from many different online sources and in 2 - 3 of the top tech cities. You could probably do it just by looking in a single city.


I wasn't doubting that there are hundreds of companies who would be potentially interested in hiring someone with my skills.

I was puzzled that I would be interested in working for so many different places. I now realize that some people seem to simply not care where they work, at least at the apply-for-job stage. That was the piece that I was missing.


I'm sure they care to some degree. It's not like you don't get better idea of the culture by having an onsite...


My first job after my training was at a really small company, about 10 employees plus the CEO/owner. And he was just like that CFO, too. The size of the company does not necessarily make a difference.

Still, having done my training at a slightly Dilbert-esque multinational corporation, I made a point of working for small-ish companies since.

Of course, small-ish companies bring their own share of problems, but all in all, I prefer that smaller companies tend to be less bureaucratic.

And I like the personal touch - at one company (~15 people), the CEO/co-owner walked up to each employee every morning and greeted them, shaking their hand. He was in some aspects a fairly difficult boss, but that little gesture made up for most of the difficulty.

The problem with a company treating employees like they were arbitrarily replaceable is that employees will treat the company the same way. If a company wants employees to identify with the company, to want to work at that specific company, it has to do better than that.


The most important lesson for people in power in big tech companies: FORMAL PROCESS IS THE ENEMY. Don't let the accumulation of gatekeepers and approvers and other capital-P Process let things become 100x harder than they need to be.

Do not confuse difficulty with prudence. Your organization will become slow and ossified by default unless you take specific steps to maintain flexibility. One of these steps is to install a culture of change. Things that are easily undone should not require approval to be done in the first place.

Do not allow long-timers in your organization use "caution" or "good engineering practice" as an excuse to slow everyone else down. Emphasize that the most important part of software development is moving fast. Let new people try new things. Minimize the number of people who can say "no".

Most of all, do not just _believe_ people who talk about best practices and software "quality" and stuff like that. Most of the time, they're just finding fancy-sounding ways of saying "nothing should change unless I say so".


I just learned about Hegel so now everything is a nail, but...

You really can't make categorical statements like "formal process is the enemy". You put formal process into place, and that creates a dialectic where you're waiting for someone to come in and champion the antithesis: "formal process is the enemy". Then that works for a bit until it doesn't and someone synthesizes: "sometimes formal is better sometimes informal is better". Then that becomes the thesis.

Then there's a new dialectic in place. Someone will come in and say "the character of our company is such that we're generally better with formal processes". Then someone synthesizes that, and suggests that all processes are on a trajectory from formal to informal and the company is good at expediting that.

Then someone realizes we need a process for regular deformalization.

This continues forever. None of these ideas are really that much more generically true than any other.

So to embrace Hegel, the goal is just to question yourself as far as you reasonably can, so as to get the best view on the current situation and only the current situation. Make a choice and move on, knowing the next situation is likely to be different.

Edit: I should add this is the process by which we hurry into The Future, which some people might point out means turning our backs on Everything That Is Holy and is therefore a tool of Satan, but I'll leave you to explore that with the rapidly growing universe of anti-Hegelian YouTubers.


I really liked this comment :) I am looking forward to pondering upon this way of reasoning for this entire Saturday :)


I have a hunch that you've never worked at a growing mid-sized or large company that is clinging to its startup roots and is averse to any sort of process at all.

Being unwilling to adopt a necessary amount of structure and process is just as much of a hindrance once you hit a certain size.

That may be a newer or less common problem, but it's a very real one.


Agreed. I've often found that those who are resistant to any amount of (reasonable) formal process are those (usually long timers) who were most empowered by the implicit process and rules. In the end, they're also saying "nothing should change unless I say so".


This and the parent comment describe exactly what happened at the company I just left. I wonder if the newly hired TPM will ever have any real power there.


Very insightful.


I can totally identify with this. I joined a company that had grown from 2-3 people in a shed to 40-50, providing global B2C, B2B and company Intranet design and development (A Drupal house). I was tasked with providing some structure and process to (initially) the support team in order for the company to be in a position to cope with expanding workload and look 'corporate' to chase larger accounts. When I joined, the company was pretty much firefighting all the time and diverting people from project to project according to which customer shouted the loudest at the time.

Every change I proposed was questioned to death and generally dismissed, I was micro-managed within an inch of my life, and I found the two key Directors just could not let-go of any control of their 'baby' (the company), to a point where any tasks I tried to assign to team members were met with pushback because the Directors had already assigned them other things, told them to work on other projects or asked them to report back before accepting any work from me.

One time when I was asked to work on a proposal to take over the migration, management and support of the Intranet for a large local University, I completed the initial RFP document and reported back to the Directors with a plan for a meetup with the potential customer because some key points needed elaboration, and some of the SLA terms could not be met without additional team resource, but they told me they had already phoned the Uni and agreed to go ahead 'as is'.

I left after 9 months.


"Emphasize that the most important part of software development is moving fast."

No, that is not the case most times. The most important part of software development is, as with any other part of the company, to maximize the value of the company. That may be speed, but if you have 1m users the most important thing may be to preserve trust, to acquire new customers, to automate existing infrastructure, etc. etc. Speed of software development is not a goal in many environments. Thoughtful execution may be hindered by a cowboy attitude in development. I'm not saying that speed in development is not sometimes the goal (maybe in startups within an enterprise trying to test an idea), but often it's not the most important thing.


"Maximising company value" isn't a useful end goal you can give to anyone but the CxO team. For everyone else, it's a motherhood statement. Trotting it out as though it's some kind of engineering compass isn't helpful.

To this you've appended the hackneyed conflation between "speed" and "cowboy attitude". It's a common category error, but in truth, rapid iteration is one of the enablers of high quality and is a huge effectiveness multiplier for top shelf dev teams. Slow development merely enables lazy programmers (since it conceals their apathy) and gives us waterfall disasters. "Thoughtful execution" is possible in any context, and most thought processes are greatly enhanced by evidential techniques such as rapid prototyping / feature spiking.

Fast+incompetent = cowboy attitude, sure, but the problem there isn't the fast bit.


I've found maximizing company value to be a pretty good end goal as an individual contributor (and it's definitely the thing I'm most excited about doing when I walk in the door in the morning). It's how you tell whether "fix this bug" or "implement this feature" is higher priority, or whether "do this thing now in our current system" or "experiment with this completely different system" is higher priority. You can do all of those at speed; the question is which to do. And getting it wrong dooms your company, because you're wasting effort.

In a well-functioning company, I don't need to make that decision myself, of course: I have management who has evaluated the cost of having the bug and the benefit of having the feature, or who's experienced and smart enough to determine whether doing the short-term thing now or investing in the longer-term thing will be likely to have better payoff. Because this process is there, if I trust my management, I don't have to spend-time second-guessing them (or worse, doing the research myself), and then I get to move quickly. But again, moving quickly isn't the point. It's a tool on the way to delivering value.


> Fast+incompetent = cowboy attitude, sure, but the problem there isn't the fast bit.

Exactly right. Frequently, in industry, I see people confuse the "slow" and "competent" bits. They think that just because a given change needs to get a bunch of sign-offs that the overall effect of the system requiring the sign-offs is a net benefit to the organization.

It's not. It's paralysis, and you won't notice how ungainly and slow you've become until a different org a tenth of your size manages to clone your entire feature set in a hundredth of the time it took you to develop it, all because your developers have to deal with bullshit all day long and your competitor's can just act.

A lot of people will claim that you need gatekeeping and approvals and such to maintain a rigorous standard of quality. You have to be brave enough to disregard their advice. You have to be able to take the gut-wrenching step of saying, "No. We're not doing that. I don't care if this change caused a SEV, we're not adding process. Moving fast is important!".

It's very easy to believe the nostrum of "no pain, no gain". But sometimes you have to realize that pain is just pain.


You have to be able to take the very demanding step of saying, "No. We're not doing that. I don't care if this change caused a SEV, we're not adding process. Moving fast is important!".

The moment that some minor disaster hits, which it inevitably will, whoever is in charge will find themselves no longer in charge.

I think this is one of the fatal flaws of a big company. Everyone is terrified of risk. I'm not sure it's possible to counteract this tendency unless the company was built from the ground up not to punish risky behavior (e.g. Facebook, supposedly).


Right. You have to create a culture where it's okay to fail. And it's not enough to just say that: you have to actually practice it. You have to let people make mistakes, then do nothing so that other people don't feel afraid to take risks. Hell, reward people for failing. Highlight them as exemplars of people who do things. If you don't fail once in a while, you're not moving fast enough.


Rewarding failure can have pitfalls (if we mean something like customer impacting fallout). You may then be encouraging people that create broken things over people that more quietly create well-functioning things the first time around.

Enabling people willing to act is important though and I fully support the do nothing aspect of failure, or better yet support and stabilize but not reward.


> Enabling people willing to act is important though

I think that's the key thing here. Rather than saying "whether you succeed or fail, you're still gonna get your $250 bonus", you're saying "if you try and succeed, you get $500- if you try and fail, you get $100, if you don't try at all, you get nothing."


Yeah, but this is at odds with virtually every big company. No one has the power to affect that kind of change except the CEO, and the CEO is rarely interested or involved enough to do that. Is there any way around this problem?


If your CTO or VP of engineering or VP of ops can't make this change, your company likely has other problems.

I admit to inheriting a fairly smart-risk-accepting technical culture, but also worked to extend and cement that by holding regular blame-free post-mortems on production problems and reporting them weekly to our business operations meeting. Making failure and the analysis/correction thereof a regular part of company operations makes it normal, accepted, and less scary. We would also pretty regularly respond to asteroid-type production problems with "no preventative action intended; cost of prevention exceeds expected losses". (We held a view that there is [conceptual process] green tape and red tape; make sure if you're fixing problems with process that it's actually green tape and if fixing a problem required adding red tape to the system, we were very skeptical and tended to avoid adding that process/step/gate/check.)

Couple that mindset and transparency with a metrics-supported track record of making things better overall and management will support. I'm not sure our CEO ever saw any of that sausage-making, except for the very largest or most damaging problems and even then, it was mostly a courtesy message to him. He cared about the overall pace and metrics, not how many outages or bugs we had along the way.


I've seen urgency used as an excuse for sloppy work so often that I can't ever imagine the speed of development being a good metric.


I don't conflate the two. Urgency and speed are two very different metrics. Many lumbering waterfall projects have moments of urgency or even panic.


I recommend Creativity, Inc. to every person in a management position whom I have the opportunity to recommend it to. Although Et Catmull presents a depiction of Pixar and it's growth as a largely artistic endeavor, I feel that it is applicable to those that manage engineers especially.

The ratio of students that decided to major in engineering because they were good at math in high school vs. the students who decided to major in engineering because they they wanted to make something inspiring, I feel ( and let me stress my inexperience as a current undergrad, without experience in the actual field ) is vastly favored in career growth towards those that decide to create instead of simply learn.

While there is always room and lucrativity to tie engineers on a leash and juice mathematics and logic out of them until they reach an existential crisis, there is always (ALWAYS) room within the budget to let them set out upon a path which is in tune with their not necessarily young, but foolish and hopeful beliefs.


I didn't take that away from the article at all. This wasn't an argument against formal process. It was more a story about acting like you're a big company, while pretending you're a small company, and the pitfalls of doing this. Where "acting" encompasses pay, stock incentives, other kinds of talent motivation, recruiting, leadership style, innovation, and yes formal process.

There's nothing wrong with process and best practices. Process is often scar tissue left behind after critical mistakes in the past. A company without some formal process is a company young enough to not have made disastrous mistakes yet.

I've worked in a company of more than 50 that was basically without a trace of software development process. It was a clown circus. Nothing could be released on time reliably, quality was a joke, there was no documentation, no code review, and no plan or roadmap. Sure, they moved fast, but it didn't matter.


> Emphasize that the most important part of software development is moving fast.

This doesn't seem to me to be true. Can you expand on your thoughts here?

I'd agree that the ability to move fast is an essential part of effective software development, but I don't think it's the most important (the most important is producing business value accurately and reliably), and I think that moving fast for the sake of moving fast is likely to result in moving quickly in the wrong direction. In particular, it's easy to be so worried about moving fast that you have no time to take new business needs/opportunities into account (see also Tom DeMarco's Slack), and it's easy to get excited about shiny new technology and spend a lot of time implementing it and roleplaying Google for no reason, which is a great way to move very quickly while not delivering a cent of business value.

Finding somewhere with formal process, with full-time managers who aren't reluctantly moved to management for career advancement, with clear hierarchy and goals, was an important part of my most recent job search, simply because, as a good engineer, I hate to see my work go to waste. I have heard the same sentiment from lots of my talented friends.


Unless you take conscious steps to remain flexible and to eliminate barriers to productivity, you're going to find your ability to "produc[e] business value" diminished because effort will get sucked into process instead, and for reasons nobody can identify. Soon enough, you'll find yourself wondering why you have so many developers, all of whom appear to be doing work, yet without getting anything done.

By default, all software development organizations slow down. I say that developer velocity is the most important goal because, without focusing on this velocity, you end up solidifying, like a cooling lava, and it becomes difficult to accomplish any of your other goals.


Well, okay, you and I are agreeing that velocity is nice to have, but why is it the most important goal?

I can make the exact same argument about automated regression tests. As the size of your codebase grows and the number of customers (i.e., people triggering edge cases) grows, unless you take conscious steps to make sure that every build doesn't regress previous bugs, all your effort will get sucked into diagnosing and fixing things that you've fixed before. And all your developers will be fixing bugs but you won't be fixing new bugs and certainly not shipping features.

In particular, if you want to refactor / rewrite parts of your code to improve development velocity, you'll suffer from the well-documented problem (see e.g. https://www.joelonsoftware.com/2000/04/06/things-you-should-... ) of losing all the knowledge of the weird edge cases you've fixed along the way. So, testing is strictly more important than development velocity!

I can make the same argument about a half-dozen other development best practices, and I'll have actual citations to back them up. Why is development speed the most important goal, why is formal process the enemy of speed (instead of its friend, because it makes sure work doesn't get duplicated or wasted!), and what is your evidence for these claims?

In particular, if your claim is true, we would not expect to see as much feature development / new products from old, large companies (I'm thinking of Oracle, Microsoft, Apple, Amazon, etc.) as we do. We would expect to see these companies grind to a halt and perform poorly in the markets (investors really want to see growth, not just continuing to be as good as you were last year), and that's not what's happening.


Your focus on "process" is missing the deeper truth: companies don't slow down because some busybody managers put in processes, it's because as organizations (and codebases) grow, they become more complex and more difficult to change.

It's not a question of preventing formal processes, doing that indiscriminately is a recipe for disaster; every engineer will do things their own way, and once the head count exceeds the ability for everyone to talk to each other daily, there will be an explosion in complexity and duplicated effort. Rather, you need to put in the right processes, maintain them just as you would code, and kill them when they no longer serve the company. Where "process" goes wrong is when it's used as a hammer to address issues that would be better served by team structure, common tooling or architecture. For instance, if you have a quality issue, adding more code reviews will generally cost a lot more, and do a worse job than making the responsible team wear the pager for their own code.

The real secret sauce to staying agile as a company grows is small, cross-functional teams. This is where SOA (microservices for the kiddies) really pays for its overhead—by decoupling human teams and giving them agency. This won't make a big company as agile as a startup, because that's literally impossible, but Amazon and Facebook have shown how much more agile it can make you than any prior megacorp.


> This is where SOA (microservices for the kiddies) really pays for its overhead—by decoupling human teams and giving them agency.

Funny you mention microservices, because I've been thinking about Susan Fowler's book about them and how the advice is basically "Here's how we made sure that we kept up our agility by introducing tons of process before anyone could think of deploying a microservice, because otherwise every team would do literally everything their own way and it would be great until it turned into an unquenchable tirefire."

I'm not aware of Uber's technology organization having stopped producing business value. That company has a lot of problems, but the inability of their software engineers to engineer software doesn't seem to be one of them.


Used appropriately, a formal process provides structure to the workflows within an organisation. Everyone knows the process, and it provides a framework and expectations for everyone to work within. In organisations without any process, it can lead to difficulty in getting stuff done because there's no responsibility or accountability for who is doing what, and when. Who is reviewing my PR, which CI systems tested and deployed the prospective change, why was the work done, when does it get merged, and by whom? Etc. Basic daily routine.

You also have the situation that people invent rules and requirements in the absence of a documented process, which can change arbitrarily and are impossible to work with because it depends upon the changing whims of whoever feels they are in charge. Clairvoyancy and divination should not be a job requirement!

Process becomes problematic when the process grows and ossifies and becomes the end itself, rather than the means to an end. You end up with it being impossible to get work done because the process is so burdensome. When your bosses care more about the process being followed to the letter rather than the actual completion of the work which the process should be enabling, that's IMO the point where it needs a rethink. Unfortunately, organisations have a tendency to accrete the stuff; I've in the past argued for less to the amazement and incredulity of my bosses. It's also a factor that process is used as a blunt instrument to wield power over others, and I think that's certainly a driver as well. But often organisations favour accountability and rules over creativity and efficiency, even if you spend 95% of your time with process, and 5% actually doing productive stuff...


That's exactly why I left Apple engineering, and I've not regretted it, somewhat sadly, somewhat happily.


Risk is the enemy of establishment and profit. You _will not_ convince a powerful train to change direction simply because there's no tracks ahead.


The company I work for at the moment has two values/myths that have worked really well at preventing situations like this. Early on, just before I joined at around the 150 person stage, the employees self organized values. One of these was Daytime is Precious. Interestingly it was applied equally to the idea of don't waste time (meetings etc) and to the idea that everyone has a life outside of work. The second was the idea that teams are anonymous, and decide themselves what they work on.

In reality these are ignored at times when required. But they're so embedded in company culture that you need a pretty good reason to do so and more importantly most employees are comfortable challenging management when they do.

I'm not sure how to replicate this but letting employees set the company values once you get to a certain size is likely a good call.


> teams are anonymous, and decide themselves what they work on.

Could you please elaborate how that worked technicall? Does that affect git log authorship metadata? What about discussions on company chat/maillist about the issues being worked on, are they also anonymous? Does this make tracking real contributions of individuals impossible?


I believe they meant "autonomous" rather than "anonymous."


Yeah, this. Spelling fail.


I'm surprised that Steve is working for such a long time in the start-up industry and seemingly hasn't caught on that the in-company politics won't evolve, because the meta-company politics of the start-up world are already efficient.

If you don't consider jobs and companies as something that should live longer than you, it's totally fine as it is. Switching jobs is not a big deal, if you have lots of new options and get paid well. When small start-ups get the next innovation loop better than the current set of big companies it's fine, because people still make money, just a set of different people.

People who want to make money by working, still make money. People who want to make money by investing, still make money. New innovation really happens, no matter if the current people on top get it or not.


Because companies grow not only horizontally but vertically.

Vertical structures create encapsulation of individuals and that leaves room to exploit information asymmetries.

e.g: stealing credit, favoritism, etc... rigging the game to their favor.

At the late stages of this game, people like this can get away with anything: hiring and promoting their friends, openly insulting people, just openly lie knowing nobody can do anything about it, etc.


Anyone have a guess as to what company this was?


Tesla?


That seems to fit: 1.) move from Palo alto to east bay 2.) manufacturing company with software engineers 3.) lots of people leaving 4.) CEO changing the world.

However, I'm sure many companies meet that.


Bingo. The company was Rocket Science Games. https://web.archive.org/web/20121113115319/https://engineeri... says Blank was involved, and one of Musk's internships was also there according to the Musk bio and a few sites listing his internships (simultaneous with Pinnacle, apparently).


That really makes me feel old - I used to work for another gaming company at that time that was pals with Rocket Science. It was not exactly a model of how to run a business - and where I worked was hardly GE. :)

From dubious acorns doth startup management gurus grow.


Wasn't there the story where Musk scolded someone who took off to be at the birth of his child?




It really sounds fake. Even if Elon really believed that to be true, it would be very dumb to say it.


Musk is also notorious for underpaying his engineers.


While it may fit most of the criteria, I wouldn't say Martin Eberhard and Marc Tarpennin were the visionary founders mentioned and Elon Musk and company tried to bring in adult supervision before Elon sunk enough of his own money into the company to just start running it himself.

Most of the narrative doesn't fit as this article presents it ( it might still be tesla, but you can assume the details are pretty one sided )


Clearly.


Are they public?


Yes.


That was my first guess too.


My guess is square. The CFO went to stanford for an MBA, where the author taught.

Neither CFO Tesla has had went to Stanford.

Can't find anything about Dorsey working at one of the startups listed on the author's wikipedia page, but he seemed to have been involved with many so it would be unsurprising if it just wasn't listed there.


Musk worked at Rocket Science Games, a Steve Blank startup, almost two decades ago.


I worked at Square on the hardware team. Sarah Friar (CFO) and Jack Dorsey (CEO) aren't like that and Square doesn't do any manufacturing. They use contract manufacturers.


Square was never located in Palo Alto (although there is/was a small South Bay office where people could work one day a week) and is not, as far as I know, moving to the East Bay.


At my current company we have an inverted, but similar problem. Startup A got bought by Company B. Company B doubles down on technology from Startup A, which ultimately leads to a big acquisition by private equity for the combined A/B.

Private equity firm cuts out RSUs and focuses on eeking out high margins without raising salary compensation to offset changes. All the senior people from Startup A and a number of senior people from B all jump ship within 6 months.


Despite the overall theme of this interaction, opening an office in the East Bay seems more employee friendly than keeping them in Palo Alto.


If the company is still succeeding, then it doesn't seem to be an unreasonable move. The company doesn't operate for the benefit of employees commutes. If they can still attract and retain talent and have a more practical work space, then great.


Any company/CEO who wastes 45 x 2 minutes of my life on a commute is bound to get a quit notice.


A company that isn't either all-remote or encouraging of significant WFH is going to satisfy some people and not others with respect to commuting.


Then they'll get people who live closer. Like I said, their business isn't built to give employees short commutes. Certainly retention is in their interests, but it's a means to an end. Moving their office is also a means to an end.


Then why'd most of them leave?


Because the company was staffed by those developers already happy working in Palo Alto, obviously.

I'm just speculating that there may be more developers who are happy with the East Bay location in the wider pool of developers, not that this was a good move for the then current employees.


You're missing the point of the article, its not an East Bay vs. Palo Alto debate


It's good that big companies do dumb stuff like this. Otherwise the world would be even more dominated by oligopolies.

Hopefully they don't wise up.


Siloes is a big reason good people leave; a somewhat corollary is people think that with experience at bigco and an alphabet soup of technologies they can take that to another co and impress.

Some do impress but others have limited lateral experience and so don't fit very well into any place but at prev bigco. But, but, I have five years of experience in X at bigco Y.


I can't entirely follow the article. What I read is a CEO of a 10k+ employee company had to relocate to grow and sustain growth. A team of 70 people was affected. He made the (right|wrong, pick as you like) decision 70 people leaving now is better than 10k+ having to miss out on the future opportunities.

That is what I read from this article. Though all is speculation as there is no real information in there apart from a quote you can be for or against.

This is not "why good people leave large tech companies". It a sole example of a very small group in a very specific situation. Relocation loses people yes. But not amass and not as a hidden thing. The company is well aware of it. The quote itself was there for years and it is not why people left.

Large tech companies that loose good software people for instance often do so because they apply their hardware processes to software teams as well. In addition they don't want to spend money of software, software has to come for free right! The hardware is expensive but the software is a thing we had to add as cheap as possible. That means deny requests for fancy work setups; my hardware guys can work with one 19" monitor why do they need 2 24"?

Have no separate career ladder for the technical people, I.e. You can only grow into exec or fellow if you switch to the people's route and forget the technical (I.e. General managers, directors etc but no levels above lead software architect of a (smaller) department).

Now that loses people.

P.s. I work in a large tech company. 100k+. We recently resolved the last part but not yet entirely the former. Coincidence is that I'm being relocated in January 2018. It brings about 20 minutes additional travel time for me, but for most others it doesn't. Like the article. However, I'm not seeing how losing me (and some others) would outweigh the benefit of having the entire NL software group in a single location.


"Too bad, but we need the space. They’re lucky they work here. If they leave at least they’ll have ‘name of our company’ on their resume."

It's not merely about the decision to relocate, it's the indifference towards the engineers and viewing them as dispensable minions who are lucky to have the privilege of working for this company, often without the equity and earnings potential of early employees. Treating your workers as disposable pawns is a sure-fire way to generate disillusionment and cause valuable engineers to leave.


That has been there for years. Sure it is nice and people object when they hear it but I think in actual daily life people just ignore them as long as they don't manifest in daily work. The people left because of the relocation, not because of any other reason. The article doesn't explain the tradeoff the CEO had to make. So blaming the quotes is jumping to conclusions. So I say these quotes are overvalued in the article. Sure the popular thing is to fret about them and blame them for this it seams but in truth it had nothing to do with the people leaving in this article. They left because of travel times (most likely, I don't pretend I can look into their minds).

In a big company most people don't like all of their exec and HR statements yet they continue to work there because they know 90% of those statements is bullshit anyways and will not manifest. Very different from a small company mind you! Big companies change their bullshit slogans every 5-10 years. It's a pattern. Go through twice and you know the drill. So you smile when your department name changes and know the rest will stay the same no matter your objectives containing some new fancy words.


At some scale, when making facilities decisions, you have to treat your employees as replaceable (which is not exactly the same as disposable, but close).

Moving headquarters 5 miles in any given direction is going to help some people and hurt other people. We just went through this ~20 months ago and some people who were on the "hurt" side have indeed left because their commute got pushed over a pain threshold. But, if we'd moved 5 miles in the other direction, a different set of employees would have been negatively impacted.

It's a small scale trolley problem and unless you can expand in exactly the same place, someone's going to get run over. When the CEO realizes this, it's entirely rational to draw conclusions like 'For those who are harmed, well at least they had the experience and name of working at [growing, perceived successful] company X.'


After years of working at a big tech company, I left primarily because there was no interesting work left to do, and the place had become very political.

Another sign its time to leave: when the company starts doing "reorgs". Get out as soon as you can!


Ah the tail wagging the dog again sounds like facilities and I suspect hr have got to much power.

I know that the CEO when facilities where pushing for people to move to some industrial estate near Heathrow with zero pubic transport links "word class Telco's don't have a head office in a F%^king shed at Heathrow"


Omg this sounds exactly what happened at Uber.


Good people leave their Bad managers;


I left a large tech company for very similar reasons.


Executives: "You should care about the mission, not the money!"

(as they keep all the money to themselves)


It's fascinating how in the recruitment process, hiring managers who expect potential hires to act logically and methodically all but demand the recruit to suspend his or her logic and mental methods when considering their personal financial interests.

The dichotomy would be humorous if it weren't so sad.


I care about the mission. In fact, I care about the mission so much that I know that it'll do the company a disservice to train me and lose me a year later to another company with a similar mission offering me more money. Therefore, it's in the company's interest to pay me a competitive salary!


Dwight Schrute said it best: “Would I ever leave this company? Look, I’m all about loyalty. In fact, I feel like part of what I’m being paid for here is my loyalty. But if there were somewhere else that valued loyalty more highly… I’m going wherever they value loyalty the most.”


The best startup CEOs I know overpay their key people BC they know that losing their best people hurts so much more than the same people helping whatever company they might join next


So it sounds like they're paying over market, but not overpaying—they recognize the cost of these people leaving and provide a salary that takes said cost into account.


Yes! Entering the job market I was offered x amount of stock. I had no way to know what this was worth and essentially asked my manager who said "you should feel good about this amount". He was honest and fair but the fact is that most places are trying to hire bright people and they offer x amount of stock without providing how much stock is out there. Here's a # that we know is meaningless to you, do you accept? What a crazy norm we've accepted!


Any company which won't clearly explain the last share price for you stock and your strike price is trying to pull a fast one. Without that information, it's worth $0.


I'd like to remind people that large companies are the only ones capable of hiring junior engineers who might not be at full productivity at day 0. This is especially true of the C++ ecosystem.


Good junior engineers can be productive at day 0. They just can't do the stuff a senior engineer can do. They definitely can contribute though. A well balanced team is a good thing for small or large companies.


When where I work was small, we still hired a fair number of junior people, although I think all (or most) were conversions from interns. One thing we were able to do, that is much harder at large companies is hire smart, technically minded people for customer support, who were able to help with automation, and eventually become full time developers. At a larger company, they would have automated their job, and nobody would have noticed, now they've been able to build skills and experience and should be able to get a developer job when they're done with us (may need to learn interview problems though).


Not true. Counterexample: the last company I was with was 40ish people (total). One of our devs (out of 4) was a junior with I think less than a year of experience when he started. He was smart and worked hard. He was a solid member of the team.


How large is large? Hiring junior engineers or developers definitely happens in companies smaller than FB or GOOG.

Perhaps you mean something specific by "capable"?

I won't disagree that c++ (as a technology) can be a minefield, but this also holds for many technologies and markets (civil aviation being a great example).

I may have missed an implicit /s, for which I apologize in adavance...


you did not mention something in this article. check again and re-post.


Can you be more specific?


Hmm. Really?! I worked for various large corporates, studied for a MBA after my IT career; found out about ethics and other ontologically speaking really valuable things in life hence left. But really, besides personal spectives and/or ego's.

:: Henry Mintzberg basically said it all in 2004 already: https://books.google.nl/books?hl=nl&lr=&id=zsYAeVgwHDQC&oi=f... ISBN-13: 978-1576753514, ISBN-10: 1576753514 " Managers Not MBAs: A Hard Look at the Soft Practice of Managing and Management Development"


Spam?


No, but i see that it looks like spam. Should have been more carefull. The link is nothing but freshman year one MBA material.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: