Flat Will Kill You, Eventually: Why Every Company Needs Structure
themodernteam.com
themodernteam.com
Rather than being whoever can kiss the most ass and not upset the boss (the usual system), a flat system ends up being a battle for leadership which puts the smart and commanding at the top. "Rock star dev who's also a jerk" is who should be the boss.
The anchor does not determine product features or direction, that's the product manager's role. The anchor doesn't hire, fire, reward or punish other engineers, that's the engineering manager's role.
The anchor isn't necessarily the strongest engineer on the project, either.
Anchors are mostly there to break ties and hold project context over a longer time frame. A founding anchor has a strong influence on the project's technical direction, but it's not a fiat power. You still need to discuss it with your peers.
And it works pretty well, because the only reason you get asked to anchor is due to the feedback of your peers.
Then again, our hiring process has a notorious bias against rockstar jerks.
Lots of people know us mostly for Pivotal Tracker, which is built to support our daily and weekly workflow.
On any given engagement, we always argue for a minimum team of one product manager, one designer, two engineers. We used to be a purely engineering shop, but (before my time) the thinking grew to include all three roles in each project. Previously anchors were also de facto product managers, which is a tricky and exhausting doubling-up of duties.
When this happens now, we call it "super-anchoring" and it's seen as a project smell. I've had to act as a super-anchor once or twice; it's how I learnt that having a separate product management role is essential to a healthy project.
I like how we work. As an engineer I trust product managers to worry about what to build next and why, I trust designers to be across the user's needs and UX flow and conceptualisation. They trust me to pick a simple, robust engineering solution without gold-plating.
Anyone can give input, of course. I've had PMs make great engineering suggestions. I've seen engineers with UX breakthroughs. Engineers in an IPM ask all sorts of fiddly questions that will typically lead to product changes.
We ultimately own our own roles and get final say on them. It works because it's built on mutual trust and respect.
So you'll get "impressive" code that leverages sexy technologies that is also late, buggy, and not what the customer actually needs. And on top of it all you'll have a demoralized drama-prone team.
A leader is someone who can get people to get shit done. Usually it means convincing them that what the leader wants done is the thing to be done. Consensus-building can be done in many different way - in particular, a very good way is to just arbitrarily announce what the consensus is. In most fields, and in pretty much 99% of business, almost decision is better than prolonged periods of not knowing what to do. And if a leader is competent in the field in question, his arbitrary decisions will usually be good.
So as long as you can align their ego with business/customer needs, a "rock star dev who's also a jerk" isn't the worst choice for a leader.
As for your challenge, just about anyone I have worked for and respected. You don't know them, so you can use a No True Scotsman defense, I guess. That won't change that ego/jerkiness is completely unnecessary.
Bad decisions are catastropic in tech. That's a driving force for things like Agile. Running off and coding or building things without a plan is a recipe for disaster.
I can make you do something by screaming at you. That works to get you up over that hill to attack the pillbox. Doesn't work so well in tech where you will just quit.
> Bad decisions are catastropic in tech.
No, they're not. What's the worst that could happen? Your SaaS cats-on-Instagram-to-save-the-world startup will flop. Or you won't deliver some product that's being delivered by 2000 identical companies around the world. Or some people won't get to see some annoying ads.
We're not talking medicine or space travel here. If we were, we'd be focusing on whether a leader is effective, not whether he's a nice person.
The downside is that their goals may not align well with the company.
pros and cons to everything, but I think it's a mistake to dismiss the idea that the person who stepped up, took the responsibility, and was able to get others to follow isn't the person who should be the leader.
But I've noticed that in IT/programming people recognize and respect each other on skill and also form "respect based hierarchy" implicitly more than usual. Not suggesting that IT/programming is utopian meritocracy or anything just that from my impressions it's much more meritocratic than other professions I've worked in/by (print, news editing, management) - so it's more likely you get positive results with such open structure.
What's more, they are complete assholes. And yet, everyone under them respects them and marches to their drumbeat. Their teams get real work done.
If someone thinks there is a better leader than that I'm not sure who the hell they're talking about.
I actually don't get where this stereotype that the best in our field are inevitably jerks comes from. If you're smart enough to rise to the top engineering-wise, you're probably also smart enough to realize that ours is a collaborative field, no one is right 100% of the time, and that you catch more flies with honey than vinegar.
The rock star dev is by definition the best dev you have, so no you'll the best code you could from your team since the best guy would be spearheading it.
No, that isn't what it means. Your actual best dev is your rock star, that's the intended meaning of the phrase.
It ends up putting the person who's the least bother in that role compared to all the other roles they could occupy in charge. People you go along with while looking for another job, because at the end of the day it's not your company and it's not worth the enormous emotional cost of fighting them.
In my experience, it's rare that the most "commanding" dev is also one of the more talented devs. If anything, my experience is the opposite: the stronger personalities are great examples of the Dunning-Kruger effect, while the best devs have more passive personalities (or just don't care enough to try to commandeer leadership of the team).
It's not like "kissing the most ass" is limited to kissing the ass of upper management. The same types that are exceptional at kissing the ass of management can also be great at playing Lord of the Flies with development teams (forming alliances, turning devs against eachother). It makes for a terrible work environment.
I much prefer strong hierarchical management, assuming management is competent enough to promote those with both development expertise and the people skills necessary for management (consensus building, mentorship, clarity of purpose, motivating people, etc).
The problem is you've described someone entirely different, here, IMO.
A smart leader isn't the loudest. Because they know when to listen to their subordinates, and don't need to be the loudest to command attention when they do speak.
They don't need to be a jerk, or rely on bullying - for this is morale destroying counterproductive pettiness, and again unnecessary when it comes to commanding attention and respect. It might not chase away all of your talent, but it will chase away some of it, who will leave for greener pastures where they're respected.
In my experience, the "Rock star dev who's also a jerk" was both the worst leader and the worst dev. They wrote a bunch of short sighted hacks - making them "productive" "rock stars" - that constantly broke things that other people had to fix. They were quick to assume their half baked ideas of how to proceed were the one true way - and that you were an idiot for thinking otherwise - and quick to dismiss any and all concerns about things they overlooked in their plans. It was bad enough that the best way to get anything done ended up being to hide it from the "rock star dev who's also a jerk". This is the antithesis of what good leadership should result in. That they were too busy doing development to do any real leadership was perhaps a blessing.
That's not to say the ideal leader can't ever be loud, or stern, or a dev. These can all be useful qualities at times. But they're not "a jerk", and may find they have less time available to spend on development in response to the burdens of leadership.
Those are not rock star devs, those are just shitty devs. The term rock star means your best devs, not your worst, by definition. If you're applying the label to shitty devs, you've missed the point of the term. A rock star is someone who's awesome, that's the entire point of the slang.
Part of the disagreement is surely semantics: if you want to define "rock star" as the best, then I guess they're the best (however you measure that).
But being a jerk is not semantics. If that works for your organization, great. But I don't want to have to deal with that.
That's not a rock-star, it's not what the term means.
As for your main point, most people don't want to deal with jerks, so what? That doesn't mean anything when it comes to whether the jerk is a good leader or not. Lots of leaders are jerks, it's rather common to people who feel "they should be in charge".
Leaders are those who take charge, and lead. Naturally they find ways to take charge of a leaderless group and while you want to say they shouldn't be the leader, they are by virtue of being the only leader there. The smart guy you think would make a better leader, generally doesn't want to be leader and will let the jerk take charge; that actually disqualifies them as good leaders because a good leader wouldn't do that.
How are we defining "your best devs" then, exactly, if "rock star who's also a jerk" isn't a contradiction?
> As for your main point, most people don't want to deal with jerks, so what? That doesn't mean anything when it comes to whether the jerk is a good leader or not.
Do you not see the inherit conflict between being "a good leader" and "driving away the talent on your team"? If your leader is toxic enough that everyone would rather quit than work with them, how are they supposed to function as a leader? There's going to be nobody left to lead!
Let's say they're not quite that toxic. Instead, they're merely driving down morale, merely making everyone want to think about anything but work, stressing them out. Will these people be bringing their A game? And doing their best work? And communicating effectively with leadership so the correct work gets done, instead of avoiding the jerk as much as possible?
Let's say they're not quite that toxic. Instead, they just forgot to bring doughnuts into work on your birthday. Are they actually a jerk?
> Naturally they find ways to take charge of a leaderless group
No such thing. There may be no official leader, or no clear singular leader, but if nothing else people will always lead themselves. Anyone displacing that leadership must provide more value than what exists for their leadership to be a net positive. That may be a fairly low bar at times, but sufficiently toxic individuals won't clear it - as they'll be removing value instead.
> The smart guy you think would make a better leader, generally doesn't want to be leader and will let the jerk take charge; that actually disqualifies them as good leaders because a good leader wouldn't do that.
Well, I'd agree it isn't good leadership. I've seen people learn from this mistake.
No one said toxic. They said jerk.
I quite like working with a bunch of opinionated assholes that are willing to argue to the bottom of something, and have no personal investment in me liking them.
The great thing about jerks is that they don't take it personally. When you see the jerk the next day, you're still at square one. You will always be at square one.
Not friends, not enemies, just coworkers doing your job -- willing to step on each others toes to get things done the right way.
I've worked at places where everyone is nice. It's hell. "Nice" people are bad: morally, ethically, and for the bottom line.
Being a jerk is toxic. Being an asshole is toxic. If they're not toxic, why are you calling them these things?
> I quite like working with a bunch of opinionated assholes that are willing to argue to the bottom of something, and have no personal investment in me liking them.
I like working with opinionated people that are willing to argue to the bottom of something. So much so that I ended up following the most argumentative person from my previous job to my current one.
None of that required them to be an asshole. We have a boardgames night every couple of weeks now.
> The great thing about jerks is that they don't take it personally.
Jerks tend to make it personal. That's one of the main reasons they tend to be jerks!
> Not friends, not enemies, just coworkers doing your job
I'm entirely fine with professional relationships. Professional doesn't imply jerk.
> willing to step on each others toes to get things done the right way.
Sure. But a professional can do this without finding their cleats and stomping as hard as they can.
> I've worked at places where everyone is nice. It's hell. "Nice" people are bad: morally, ethically, and for the bottom line.
Your inconsistent air quotes betray the problem here, I think.
People who are bad morally and ethically are not nice people. They are jerks. They are assholes. That some of them are grinfucking everyone to appear nice doesn't make them nice.
And, conversely, the fact that some people aren't grinfucking you doesn't make them jerks. That they're willing to debate something honestly with you doesn't make them an asshole. That they're trying to do things right - and save your team from future stress, crunch, or whatever other consequences would come from doing things wrong - sounds like they're trying to do everyone a favor. If anything, they sound nice.
-------
EDIT: Ultimately, I wonder how much of this thread is you saying...
Rock star "jerks"
And me hearing...
"Rock star" jerks
You don't seem to realize you're talking to more than one person.
Your edit is correct.
- People tend to hate managers, they don't trust them.
- Flat team are faster removing the management complexity.
- There's more flexibility and more creativity around the problem tackled by the team.
The last reason is reasonable but is true applied for small unit inside the bigger organization, not the whole organization, as this article explains well. Nothing prevent to create a small unit with a specific task inside a bigger organization and to organize this unit (usually made by "star" employee) in a flat structure.
The second reason is disputable, it doesn't scale has the article suggest.
But the first reason is not addressed. And it is the real issue. I think everyone had terrible bosses and great bosses. We usually remember terrible managers as an example of the average managers (Mental association: Dilbert's Pointy Hair Boss) while we consider the great bosses we had as mentors, role models, guide. And we forget that they were also our manager. It is a form of selection bias.
There's also another issue at play, changing organizational structure, trying Flat or Holocracy is easy (I'm not saying that it's easy to do it right, it's easy to give it a try). Promoting the right person, with the right skills is difficult. And if you promote the wrong person (it happens) removing from a managerial position or moving him to a position that is a better fit is extremely difficult. So we all decide to do what is easy instead of what is difficult. Not sure I could blame someone, it is the people mindset, but doesn't mean that what is easy is also correct while what is difficult, when done right, proved to be correct.
Consensus is obviously preferable. But it scales very poorly. A simple workaround is to nominate someone as the tie-breaker. To avoid secondary rounds of nonsense, you try to pick someone with the respect of their peers.
Holocracy actually doesn't use consensus. The mechanism in Holocracy for decision making can be summarized as "do whatever you think is right to fulfill your stated role. No consensus nessesary. If the way your doing thing is actively preventing someone from fulfilling their role, then you two work it out (through a strict mediation process) but other people's opinion of what you should do is irrelevant (i.e. No consensous). Only the roles directly effected have to agree." Consensous seeking usually descends in to hypotheticals, theory, and butt covering. far better, according to Holocracy to just let people animate their assigned roles however they think is best.
If reward and punishment are tied to individual judgement, everything descends into hypotheticals, theory, and butt covering.
Consensus is nice because it's a relative of shared understanding. When it can't be achieved, trying to achieve it still increases shared understanding. Having a tie-breaker is the only role you need in small groups.
(My guess is: it would not).
I know a number of people who have quit Valve and almost all of them would cite organizational dysfunction as one of the top reasons for quitting.
I don't know whether that is true -- I have never worked there -- and I don't wish to spread any ill rumors about Valve. I'm just saying that I know a bunch of people who have worked there who think the flat thing is one of Valve's biggest problems (another one being the incentive structure; of course these two things go hand in hand).
Their customer support/sales people are apparently much more traditional
Really? Raising the minimum wage was about "differentiating" themselves, and not out of the realization that everyone needs a comfortable wage to live on?
I'm sorry, but I can't take an analysis by such a person seriously. This attitude demonstrates a fundamental lack of understanding.
The setting is radical feminism rather than tech management, but the drivers are the same and so are the results.
The unfortunate truth is that traditional businesses will never be able to motivate their employees enough to make this work at any kind of scale. You have no reason to care that much, especially not long term.
Personally, I think workers-coops are the answer. But that remains to be seen.
https://news.ycombinator.com/item?id=8270601
Is it any wonder people don't know how to work together independently of authority figures?
I think some civic training would be good for people working in flat organizations. They need to be un-educated.
Do you mean 'de-educated' or 're-educated'? There are plenty of uneducated people.
You asssert that flat organizations could do well, but without any examples or evidence to back you up, I am inclined to disagree. If flat organizations were better, I would expect that some out of the hundreds of thousands (if not more) companies in the developed world would use that system.
As a matter of fact, there are thousands or such flat firms. Just as during feudalism there were thousands of capitalist firms that would fail.
Failure is does not mean it won't work in 10, 50 or 100 years.
There will be a time when we think of managers the same way we think of kings now.
Flat is usually called "Socialist" in the rest of the world.
(disclosure: i used to work for olark, and their system works quite well)
That basically is called hierarchy by a different term. And I suspect, as most with quite a bit of experience would, that as olark grows, more layers (aka, hierarchy) would be introduced. It's natural and it's fine.
It's fine! I know it's a dirty word, but hierarchy is fine. It really is.
I contend it's NOT the problem that people want to solve, rather they want to solve a different one. It's the classic case of treating the symptoms and not the disease. I highly suspect that in most flat companies, the real thing people are after is some subset of [trust, autonomy, mission, vision, ownership, accountability, flexibility, empowerment] etc. But, instead of focusing on those, the focus shifts to the structure. If in solving for the subset it is found that structure is at fault, by all means give it a go. That is not how I've seen it done, though. Rather, people /assume/ flat is better with no mindfully explicit reasons why they would adopt it.