edit: The worst companies are the ones who claim they don't have office politics (ie: we're a flat meritocracy) but instead simply make it hidden and much harder to understand.
Correction: Office politics is how you work toward some goals in spite of other departments having other goals, some goals are incompatible/opposite and cause the other department to actively work against yours.
This sounds like a pure and narrow-minded engineering-like only POV. In reality, specially in big companies, you need a mix of both Politics and shipping great product. If you believe people make rational decisions all the time, you will be surprised with the amount of feelings that goes into making them. This post is great advice to anyone that wants to be a high performer anywhere in any field of work.
Most mentees accept it, but a growing minority are preemptively cynical about these things, dismissing them as "office politics". Especially for junior engineers who get a lot of their information from angry comment sections on HN and Reddit, there's a growing desire to view engineering as the core of the company and expect all other departments to serve engineering. This results in a lot of pain when they're dropped into a real company where they have to work side by side with other departments to generate revenue.
If you want to be successful, it's important to accept that communication, relationships, and rapport are just as critical to getting anything done as the engineering work itself. It's not office politics, it's just the nature of working with other people. The longer people resist this idea, the more time they waste fighting reality instead of finding a way to make things work.
It really doesn't take much effort to build relationships and rapport within a company. You're going to have a long, painful uphill battle if you spend all of your time resenting and fighting it, though.
The advice is probably good for any large organization, having worked at very successful startups with a few hundred people and mega-corps ... you absolutely have to understand how the decision making works if you want to get anything done.
FYI 'politics' is not bad, it's just all the bits that are unspoken about the operating nature of a company.
That is literally the one thing which I wish I had understood when venturing into a much bigger company.
In fact, what he should really say is 'I wish Shopify would formalize' the nature of how decisions are made etc..
Edit: I think younger people with less familiarity about the 'real nature' of large organizations might possibly misread that because it's sometimes hard to understand how some companies work, and it's easy to be cynical (frankly, many companies are 'political' in a bad way). In reality - this 'advice' is the revelation that anyone in middle management makes when they get into their 30's. Everything is making sausage, nothing is obvious except in hindsight, getting anything done is kind of hard, the company has limited ability to innovate on the margins, and social organizations are made of people, which means 'it's political' that doesn't mean it's bad, it just means you have to think about it differently. Middle management is hard, especially for those in staff positions without 'direct power' and are not high enough up to have meaningful legitimate authority for the scope of a project.
Much better to understand the working reality and either live with it or try to change it from a position of understanding.
This is what culture and history teach, whether its Xenophon or Succession.
Slightly off-topic generalisation, but maybe one of the reasons hackers disdain good management consultants, is that the latter are experts at understanding "the bits that are unspoken about the operating nature of a company", whereas the former see this as unnecessary overhead to doing what they want to do.
The people that are great are the ones that do both great work and can communicate.
It's probably one of those companies where fixing a bug a week is "productive" because everything is so hard to do. Ripe ground for the rest and vest types to hang around being dead weigh
Shopify main app is a giant Rails monolith. They also have several hundred other apps as well (eg, App Store, partners, burst).
Shopify has done a good job on defining clear interface boundaries between various parts of the monolith, which makes changes more compartmentalized. As well, they’ve invested significantly in developer tooling to make developers more efficient. It’s not perfect and there’s always more to do, but ask any Shopify developer about the magic of ‘dev up’ or about ShipIt.
I’m not quite sure how or why you extrapolate that having a large monolith immediately equates to having a culture cantered around low productivity. Perhaps you’re projecting from your own experience?