Tribal knowledge

I didn’t fully understand the importance of "tribal knowledge" until I left Facebook[1]. Not far into my first post-Facebook employment, I found myself missing a bunch of taken-for-granted "common sense" that had been so pervasive and so naturally held at FB, that I hadn’t noticed that it wasn’t that common in the wider world after all. This awareness dawned on me slowly, as I discovered time and again that I had — shudder — to convince people that doing something in a particular way was for the best, something that wouldn’t even have been discussed at all at Facebook because everybody already knew it.

When I moved to GitHub last year — to once again nestle against the warm bosom of a benevolent megacorp — one of the most pleasant aspects of it was returning to a place where there were certain Obviously True Things™ that were taken for granted, even if they were not commonly held to be true out in every corner of the broader industry. Some of these things I would expect to find at any sufficiently large company that has to operate at scale. For example, once you cross a certain threshold, "unlikely" events cease to be insignificant rarities and instead become inevitable aspects of the workload that your systems must handle (that is to say, your designs won’t be able to get away with contemplating the typical scenario; they’ll have to cater for the extreme situations too). But then there’ll necessarily be a number of things that vary widely from one big company operating at scale to another: one company might favor central planning and control while another favors autonomy and local decision-making; one might willingly embrace a "Not Invented Here" approach while another may strive to avoid it at all costs, and so on.

Now, I’m sure there are readers shaking their heads at this point thinking that everything I’ve said is stupidly obvious, and I should have realized all this long ago. The sad truth is that I was slow to cotton on. I think I allowed my own career development — growing personally, working on harder things, collaborating with more capable colleagues, operating at greater scales — to confuse me. I thought that the stuff I’d learned over the course of 10 or 20 years, was the same stuff that "everybody" had been learning over the same time period. I confounded all that change in my immediate environment with what I thought was a generalized growth trend everywhere in the industry. Obviously, that was wrong. Just because sensible-seeming insights may be born out of the extreme conditions of a fast-growing Facebook doesn’t necessarily mean anything at all about what might be happening in a startup on the other side of the planet, or even a neighboring unicorn flourishing in another part of the San Francisco Bay Area. And a number of high-profile exports like React or GraphQL don’t necessarily change that fact. You can think of them as successful technologies, and even as profoundly influential ideas. But as much as they might superficially transform aspects of the industry — which sure sounds impressive — it’s not like they are going to literally change the way everybody thinks.

Anyway, the point is, I now find that this question of tribal knowledge — of what is the implicit, shared wisdom held within a community — is one of the things that most interests me about any company[2]. What is the thing that people don’t talk about, but which is nevertheless always present? It’s easy to get distracted by the stuff that people do talk about, and while that’s admittedly important too, the stuff that goes unsaid is probably just as important.

  1. Of course, it might be foolish of me to claim I "fully understand" anything, but give me a pass because I haven’t even gotten to my thesis sentence yet. ↩︎

  2. Needless to say, although I’m talking about this in terms of companies, the same effect operates at the level of smaller organizational divisions like sub-organizations, departments, and teams. ↩︎