With the exception of _one_ company that I worked at, pretty much every[0] company was a struggle between engineering and management. Engineering wants to get the software correct, and management wants to fire-hose features into the market. Most of the time (so more than half, at least), management tends to have a compulsion to mindlessly imitate what other companies/competitors are doing, usually without prioritization (so even if feature-parity is a good idea, usually management will want to prioritize whatever the newest feature is, and to put existing work on the back-burner). It very frequently feels like management is making strategic decisions after snorting a long line of social-media-psychosis and TED talks. It is remarkable that investors have any faith in such founders/entrepreneurs at all.
[0]: Various people I know do not even have the luxury of that one good company. Also, it -- unbelievably -- sounds much worse at other companies.
> It very frequently feels like management is making strategic decisions after snorting a long line of social-media-psychosis and TED talks. It is remarkable that investors have any faith in such founders/entrepreneurs at all.
My guess is the causality is usually* the managers are pursuing things because their investors (/government ministries) hinted it was the future after snorting a line of "TED talks" and "social-media".
Irony is, I really do mean "hinted", it can be a sycophantic/fawning relationship where those with the power don't even realise what's going on. One place I interviewed at ages ago now, before the current AI boom, the CTO and I were talking about what they were doing with AI: a bunch of if-else statements forming a manually-built decision tree. But they had to say "AI" to keep interest high.
* this clearly wasn't the case with Zuckerberg's pivot to anything given his ownership structure and piles of cash, so The Metaverse is entirely his fault; Musk, despite the ownership structure, clearly ran out of investor's money or he wouldn't have taken SpaceX public, so his pivots may still have been as I posit.
> ...management is making strategic decisions after snorting a long line of social-media-psychosis and TED talks.
+1. Straight into my quotes file.
It’s a hard balance but in an ideal scenario there would be a good balance of tension between engineering and management/product decision makers. On one hand engineers generally will iterate for far too long and on the other product decision makers will want to birth new features daily.
Management is just responding to idiot end-users. I have been on plenty of sales calls where customers ask if features X,Y,Z are available, knowing that there’s a 99% chance they’ll never need them, but they ask anyway just because they’ve heard that someone else used a feature like that at some point in the past. If it’s not, they just assume the software is inferior.
Most of the time customers buy the thing with the shiniest marketing, and shininess of marketing depends upon features in relation to the competition.
Say more about the one exception you know of?
While it can overheat and become problematic if taken to extremes, I've become convinced that this kind of tension is healthy in the prioritization process, and that you need a healthy equilibrium between engineering and product/management concerns.
Thinking about the possibility that there are orgs which sidestep this and still succeed is interesting.
Please, I am much more interested about that _one_ company. Can you talk more about it ?
> making strategic decisions after snorting a long line of social-media-psychosis and TED talks
I would give you +100 for that if I could.
Very well-played (and worded). I think I'm going to steal that one.
"decisions after snorting a long line of social-media-psychosis and TED talks."
And yet - they are the one's paying you and everyone else somehow?
I think you might be missing something fundamental, start by considering that what is 'good software' is not an intrinsic measure, but a measure of what it does.
The only reason we really need 'intrinsically good' software, is if it's very long lived and a ton of people are going to come to depend on it.
People trying to make oak furniture when in most cases what we want is IKEA.
That said - AI or no AI - there's no excuse for not keeping a grip on things, whatever kind of 'grip' that might be.
To be the devil's advocate, engineers themselves can be hilariously incompetent too. Engineers have a tendency of assuming that budget is infinite and target audience is other engineers from same specialization. Open-source projects often have this problem where you can have dozens of thousands of man-hours poured into a project without a single end-user opinion taken into account. At some point my manager, who himself used to be an engineer, told me with straight face to convince the rest of the engineering department to drop everything and join his newest pet project despite zero potential of any business outcomes.
One of my first gigs as a consultant was to write a project management system for a company that didn't really need a custom project management system. The CEO pulled me aside and told me the only important feature of the project management system was that you couldn't assign the same priority to two features. I would be blamed for making such a crappy project management system, but that's what I was there for. Once I was done, I was told to make myself hard to schedule and expensive.