What's an "actual software product" and why don't you think web products count as them?
I'm a full stack web developer. I've worked for startups and F500 companies. There is always a push for release targets. The less technical the leadership, the stricter the release targets (its hard to sell a critical refactoring to management when they cant sell a shiny new feature or kpi to their own boss). We've kept our teams pretty lean too.
We still aim for high quality, and performance and security.
I do agree that many people dont really know what theyre doing and are kinda just winging it, especially with AI at the helm, and many companies are likely overstaffed, but I dont think theres a correlation between headcount and slow/bloated software. Any team of any size can make slow and bloated software.
I worked at Expedia for a bit. Ask yourself if they are a tech company, software company, or travel company. It’s not a trick question. They have a shit ton of software developers that work there. Same with Bank of America where I also worked. In fact BoA has more software developers as employees than almost any other company.
Compare those to a company whose only product is software or is primarily a software service.
The difference is directness to the goal. If you are a big bank you need software and web services just like everyone else, but if you get it wrong it’s not going to bankrupt you. You can always hire an outside consultancy to fix it knowing your employees suck at what they do. If all your business does is sell a retail software product and it turns out to be slow broken shit then you have nothing. That’s the difference and layoffs aren’t a bandaid.
At places like Expedia and BoA you can absolutely suck at what you do. Sucking is actually the expectation because 20% of the people solve 80% of the problems, nobody provides substantive training, and everyone is easily replaceable. If you are the guy building innovative solutions on an original software product for a company that only sells software as a retail product you are still ultimately replaceable, but not immediately so.
One key identifier if the business intends to hire sucky people for a sucky job is degree of abstraction. Is the given job about solving a real problem directly, for example using JavaScript to create a new transmission system that achieves higher availability and lowers costs. Or, is it a tech stack nightmare pretending to not write JavaScript to do the same boring shit everyone is doing in a half ass way?
I dont see the correlation between company type (tech/software/X company) and sucking at your job though. Ive never worked for a, as you define it, "software" company because the software ive built has always been in service of selling other things, but people who sucked at their jobs got let go quickly.
And there are absolutely software companies that hire sucky people. I don't know for certain if the people who work there are sucky, but the software they build and sell certainly are.
Maybe for big corporation non-tech companies the calculus is different? But both Shopify and Spotify certainly cant exist without their software.
> I dont see the correlation between company type (tech/software/X company) and sucking at your job though.
The difference is in culture and expectations. People can suck when they are allowed or expected to suck. They can’t suck when the employer sets high expectations. If a company wants to ease hiring and employment flexibility they have to set the bar low to increase the prospective candidate pool. Otherwise they have to be extremely selective and/or train people.
Perhaps the distinction is outside your imagination because it’s outside your experience.
> People can suck when they are allowed or expected to suck.
This is not a unique concept to software or any company type though. You don't have to look far on the antiwork subreddit to find people who work in all types of different industries, technical and not, big and small, where some people just suck and everyone knows it and no one does anything about it.
That is true, but it’s also why most industries require licensing and/or certifications. These things are not 100% effective, but are still excellent at removing disqualified candidates.
If you are selling the code as the product, it could be said to be an “actual” software product, rather than a mechanism for selling other products, or software as a substrate for some other business.
Those other businesses aren’t any less valid, of course. They just aren’t software businesses. They are businesses that (quite sensibly) use software.
Is Facebook, a company that build software to sell ads, a software company or an ad company? I think its a bit bikesheddy, if not pointless, to try to confine companies to labels like this.
I'm a full stack web developer. I've worked for startups and F500 companies. There is always a push for release targets. The less technical the leadership, the stricter the release targets (its hard to sell a critical refactoring to management when they cant sell a shiny new feature or kpi to their own boss). We've kept our teams pretty lean too.
We still aim for high quality, and performance and security.
I do agree that many people dont really know what theyre doing and are kinda just winging it, especially with AI at the helm, and many companies are likely overstaffed, but I dont think theres a correlation between headcount and slow/bloated software. Any team of any size can make slow and bloated software.