Why does he holds up an engineering team of 250 engineers, all to maintain Etsy, as proving out his hypothesis?
That's larger, by far, than engineering teams producing much larger, much more complex, much more involved pieces of software at Google, Apple, and Microsoft.
This "success story" is the kind of circular self-affirmation that can only emerge when you've been given a blank check, and nobody involved cares whether you've spent it wisely. It does nothing to support his belief in the efficacy of his "heretical" ideals, of which I find this one especially disconcerting:
"You build a culture of learning by optimizing globally not locally. Your improvement, over time, as a team, with shared tools, practices and beliefs is more important than individual pockets of brilliance. And more satisfying."
Imagine if Facebook adopted this strategy, and thus, never hired the extremely smart engineers responsible for things like Hack, or their optimized PHP runtime.
How would they ever escape the costly orbit of PHP? How much more would they be spending on server resources, and how many more engineers would they have to hire to keep things running as they grew?
Etsy is a strange thing. Founded by a literally borderline insane person, taken away from him, given back to him, taken away from him, run as a complete engineering organization for what would seem almost like a trivial website. They routinely release world-class tools, but why is a silly yarn-based-economy website incentivized to even create such things?
It's like the Twitter problem: twitter has so many developers, but nothing seems to change. What are all the engineers doing and why isn't there anything to show for it?
Part of easy being a tech powerhouse is: they are also a cultural landing hub for people who just want to live and play in Brooklyn. They end up with a lot of talented "well, I live here and I want a job, where do I work" people shuffling through who can do good work but don't want to live far from their apartments. There aren't many tech companies nearby to compete against, so they have a weird concentration of talented people for being an oddly non-tech company.
From what I can tell, peering in from the outside, a lot of what Twitter's engineers do is maintaining the illusion of constancy.
Which is actually pretty impressive, if you consider the number of axes they've grown on and by how much. It used to be that the failwhale was an industry punchline. Now when something is flakey we turn to Twitter to see what the status is.
There was a joke going around recently: Twitter finally allows more than 140 characters in direct messages! Meanwhile, Facebook releases AI powered personal assistant and 12 new open source projects powering their entire company.
Is Twitter doomed because they are public? Their stock is in the toilet, so they are afraid to change anything in case the changes make things worse. So, things are bad, nobody can change anything, and nothing will get better on its own? And since their stock is in the toilet, what motivates employees who want to be like all the other cool kids and cash out for millions? Does everybody abandon ship?
Considering Twitter's entire gimmick is being a short message broadcast service, how much can they innovate without changing the core of what they are?
I definitely think Twitter is doomed because they are public. Actually the seeds of their downfall came earlier when they decided they needed to monetize and kill anyone else that was earning money by leveraging Twitter. But being public and having to listen to Wall Street where they are judged by Facebook's chosen KPI is the thing that will prevent Twitter from realizing its potential.
The thing about Twitter is that to this day, no one really understands what it is. It is stable only because the investors have been beating this drum for Twitter to explain and define itself. But whether you talk to founders, employees, or daily users, no one really can pin it down. However it's obvious that it has some unique properties in terms of how it lets celebrities get close to their fans, and how it allows a conversation to take place among influential people. Twitter has the power to spread ideas faster and across more varied demographics than any other tech product.
But the question Wall Street keeps asking is how can Twitter grow 5x so it has the same number of users as Facebook. They don't give a shit if the average Twitter user is 100x as influential. And it goes even deeper than that, because Twitter still faces this existential question of what it can become, whereas Facebook is pretty clear what it is, and the question is only how valuable their data is. In other words, I believe Twitter has a lot more upside than Facebook, but of course it can't take a risk on any of those ideas if it's judged by Wall Street's unimaginative criteria.
> Imagine if Facebook adopted this strategy, and thus, never hired the extremely smart engineers responsible for things like Hack, or their optimized PHP runtime.
I don't think Facebook's success depends on their optimized PHP runtime. I'd imagine most of the cost savings disappear when you factor in the engineers that are needed to build and maintain the system. I also don't know the comparative effectiveness of hiring brilliant engineers versus brilliant salespeople versus just hiring average folk all round. Hey, maybe I'm wrong. But it certainly doesn't feel like an absolutely obvious kind of thing, the kind of thing on which to base a theory of how to build and not build a tech company.
Business efficiency is not generally a controversial goal -- although what counts as 'waste' is.
The only time people seem to argue against efficiency (generally via false dichotomy, see 'hardware is cheap, programmers are expensive') is in a blank-check environment where nobody is holding these decision-makers to account for self-serving inefficiencies.
But hardware expenses are predictable. X load means Y outlay. Investments in better software through more or better programmers is uncertain – just look at how even experienced devs continually underestimate the time it takes to implement any given feature.
Not to rain on his parade too much, but a lot (most?) of his "Five years ago..." statements just aren't true. Most of the ideas he says didn't exist or where "heretical" five years ago were definitely around. More of them would be true if he said 15 years ago, but even then a few of them weren't new ideas.
Or maybe he implicitly meant "... at Etsy." in which case he may be 100% correct.
I wouldn't word it so dismissively as your last comment does. Doing things that work well in small settings at scale is really hard. Ideas that work perfectly well in small settings break down terribly when you try to organize a large company around them.
No offense, but Etsy isn't a large company by most measures.
And besides that, some of the things in his list were already popular at companies a lot larger than Etsy five years ago.
I'm not saying he didn't do good work at Etsy, but I think he's giving himself too much credit for some of it. It's not as groundbreaking as he's making it out.
I couldn't agree with this more, especially when team count is >= 2 && <= ~10.
...working hard during the right hours, eating together, paying attention to the boredom factor, showing each other cool moves ...er code, having each-other's back when we're injured, respecting our non-team lives, being supportive when a team member leaves for a new team.
good teams are painful to move on from ..the only salve being years of stories and mythology to drink beers over :)
These don't feel compatible, and aren't in my experience on teams of that size. Claims on people's time only grow as teams become entrenched, and "eating together" is definitely one of them.
My coworkers don't have to be my friends (though some of course become friends), they have to be competent professionals who do the right thing.
In my experience eating together is best done at lunch.
I've really love it, especially as I end up being more of a manager/leader : we hardly ever talk about work, its breaks up the day nicely and you get to chat about philosophy and general bullshit with people.
one of my former bosses made a habit of taking people out to lunch on Fridays and paid out of his own pocket. It was a small token of his personal appreciation for the team.
1: Nothing we “know” about software development should be assumed to be true.
2: Technology is the product of the culture that builds it.
3: Software development should be thought of as a cycle of continual learning and improvement rather a progression from start to finish, or a search for correctness.
4: You build a culture of learning by optimizing globally not locally.
5: If you want to build for the long term, the only guarantee is change.
That's larger, by far, than engineering teams producing much larger, much more complex, much more involved pieces of software at Google, Apple, and Microsoft.
This "success story" is the kind of circular self-affirmation that can only emerge when you've been given a blank check, and nobody involved cares whether you've spent it wisely. It does nothing to support his belief in the efficacy of his "heretical" ideals, of which I find this one especially disconcerting:
"You build a culture of learning by optimizing globally not locally. Your improvement, over time, as a team, with shared tools, practices and beliefs is more important than individual pockets of brilliance. And more satisfying."
Imagine if Facebook adopted this strategy, and thus, never hired the extremely smart engineers responsible for things like Hack, or their optimized PHP runtime.
How would they ever escape the costly orbit of PHP? How much more would they be spending on server resources, and how many more engineers would they have to hire to keep things running as they grew?