Coops is one of the structures that the author talks about in "Developer Hegemony". The bulk of the book is about the inverted pyramid that modern software development houses are (with production being at the bottom, and manager on top).
I really like this passage:
> “Consider a law firm. Do the founding partners go out and hire a Lawyer Manager to order them around, and then do they hire a VP of Lawyering to order the manager around? Do they then hire a CEO to rule over everyone and a CFO to handle the finances and a COO to schedule court dates and such? Of course not. There’s no historical precedent for all that fluff. Rather, they handle facets of the business themselves. What they can’t or don’t want to handle, they delegate to subordinates that they hire. The partners don’t specialize in finance, sales, marketing, or operations. That would be silly. But they understand enough about it to act as the boss.”
...and this one:
> “It turns out that treating knowledge work pursuits like manufacturing operations doesn’t work particularly well. But it was the model inherited from the Industrial Revolution, and it’s been hard to shake. The thinking goes like this: if you break a complex operation down to its individual components and then have people specialize in those components, batching the work and letting people get good at tiny slices of it leads to greater efficiency. This works well for stations on an assembly line but not so much for writing software.”
Lawyers also operate within a sort of guild, culturally and otherwise. They make a lot of their own rules, which is especially relevant to a rule-based business.
One of the guild-like rules that often exists limitations in the types of organisation types lawyers can form. There are rules against listing law firms and cashing out. Lawyers are required to manage themselves.
'One of the guild-like rules that often exists limitations in the types of organisation types lawyers can form.'
This makes little sence - How would the limitation that you are talking about even work?
The person at the top is not required to be a lawyer in the first place. There are plenty of corporate layers that work for public or private shareholder-held companies.
Lawyers can work for a corporate client, but those corporations can't offer legal advice to third parties.
Law firms that take on clients must be lawyer-owned.
"Under Attorney Rule of Professional Conduct 5.4, law firms are barred from offering ownership or other investment/revenue-sharing opportunities to non-lawyers. Some recent developments in several states, however, offer the possibility that these long-standing restrictions could be scaled back, creating potential for dramatic changes in how litigation matters are funded and managed."
Does this analogy really fit? I can imagine a software consulting firm targeting small businesses could work where the individual programmers are "in charge" and they hire some support staff because each individual contract is small enough that one or 2 programmers can handle it.
OTOH I can't really imagine teams making large projects not specializing. A browser, a AAA game, or an OS for example. Some programmers know GPU techniques. Some know Database stuff. Some know Video compression/decompression. Others know USB driver level details. Others know networking issues. Another few know audio related stuff.
Senior partners in law firms also have specializations. That’s one of the ways how flat organizations self organize. People specializing in tax law aren’t in competition with people specializing in divorce etc. Further they can keep slicing the law into ever smaller specializations which ends up improving the firms reputation.
Aka go to a big firm and someone is more likely to specialize in exactly the issue you’re having.
Even so, the fact is that the more hierarchy there is, and the greater the bounty at the top, the more perverse incentives for managers and would-be managers there are. Good management is, by its nature, very minimal.
I think the problem is that "assembly line" manufacturing has always been the wrong analogy for software engineering. A better analogy would be like a construction contractor or a machine shop. How many machine shops are not run by a machinist?
Perhaps an interesting extension of the machine shop analogy is that many organizations do not run their own internal machine shop. If they need a part, they find a shop that can make it. Software naturally tends need more ongoing maintenance and attention than machined metal parts, but I think there's an argument to be made that perhaps companies should be less eager to hire software engineers, and more eager to hire an agency.
Moreover, assembly line manufacturing is suited to a very particular scenario that software engineering is almost never in: high volume, high rate production of exactly identical things, which can be broken down into individual components.
>How many machine shops are not run by a machinist
Well, I think that's probably overall true of a lot of small businesses of that general type. The odds that I'm going to wake up some morning and decide to open a machine shop, electrical supply store, etc. and just hire people people who know what they're doing (not that I would necessarily know) are probably whole lot less than someone with some savings who has worked in the business their whole life.
It's not just the trades and adjacent though. I worked for a small IT industry analyst firm for a number of years and the founder/CEO had worked for a bigger such firm for a long time. And that's a very common pattern.
That’s a really impressive lack of understanding of the economics and culture of technology and partnerships.
Law firms don’t operate like normal companies because the lawyer’s guild in every country I’m aware of has enough power to make comprehensive legal services companies illegal. If you wanted to use a partnership to argue it makes sense for technology companies to be partnerships better to use accounting firms, except they do have all those officers. Even with similar restrictions on non-guild members telling guild members what to do. And every big accounting firm grows and then throws off a professional services firm (Accenture, CapGemini, etc.)
Or look at other industries that used to be dominated by partnerships, like investment banking. As soon as the restrictions making it illegal go away normal corporations took over from partnerships.
Most law firms are very small (relative to tech companies). In very large law firms, you'll see more of the typical managerial organizational chart at play, even though almost everyone employed there has passed the bar. Big law firms like Latham & Watkins for instance have a CEO and c-suite.
>> “Consider a law firm. Do the founding partners go out and hire a Lawyer Manager to order them around, and then do they hire a VP of Lawyering to order the manager around? Do they then hire a CEO to rule over everyone and a CFO to handle the finances and a COO to schedule court dates and such? ..."
Large law firms often/sometimes do have CEOs, COOs, and CFOs. However, often the CEO is one of the partners.
I think whether the comparison is appropriate boils down heavily to what kind of software developer you're talking about.
For example in the games industry I think there's a quite a few smaller companies in particular that work like this. A lot of people being generalists and taking over business functions and social aspects of the job.
But I think a lot of engineers de facto do work like assembly line workers. Much of software development is not 'knowledge work'. If you're in a company toiling away at some gigantic Java codebase you're not going to have much in common with someone managing a law firm.
I really like this passage:
> “Consider a law firm. Do the founding partners go out and hire a Lawyer Manager to order them around, and then do they hire a VP of Lawyering to order the manager around? Do they then hire a CEO to rule over everyone and a CFO to handle the finances and a COO to schedule court dates and such? Of course not. There’s no historical precedent for all that fluff. Rather, they handle facets of the business themselves. What they can’t or don’t want to handle, they delegate to subordinates that they hire. The partners don’t specialize in finance, sales, marketing, or operations. That would be silly. But they understand enough about it to act as the boss.”
...and this one:
> “It turns out that treating knowledge work pursuits like manufacturing operations doesn’t work particularly well. But it was the model inherited from the Industrial Revolution, and it’s been hard to shake. The thinking goes like this: if you break a complex operation down to its individual components and then have people specialize in those components, batching the work and letting people get good at tiny slices of it leads to greater efficiency. This works well for stations on an assembly line but not so much for writing software.”