Countless AWS instances with less than 1% utilization costing millions of dollars a year. It's easier to raise more money than try to fix it, so it just keeps getting worse.<p>Focusing on pumping vanity 'growth' metrics when our product has negative gross margins. We have no idea if anyone likes using our product or if they're just using us to buy dollar bills for $0.97. However management is ego-driven (we're going to "change the world") and it's easier to raise another round than to make a profit.
Government: money expires after two years. Which means that if you come in under budget, you have to find something else to spend the money on - which is sometimes needed infrastructure, like upgraded computers, but is more often whatever happens to be in stock at Supply. Or you dump it on a contract with a services contractor with whom you already have a contract vehicle in place. Or you lose it. But you can't save it. You can't hold onto it to do more work on the project after the two years is up.<p>You also can't extend the deadline for project completion in case of unforeseen events. If you run out of time, but not money, you just have to stop, because the money evaporates.
Corporate IT - which is now it's own behemoth in most modern organizations. IMHO it's actively preventing any work getting done. There are tons of startups that are meeting this need (generally referred to as "dark IT" or "shadow IT").<p>More power to you if you find yourself actually meeting business needs over the company's own internal programmers and systems folks.<p>I am, of course, trying to effect change from within the org I am employed by.
Spending more money on AWS services than we'd spend hosting them ourselves, spending more time beating our head against insufficient documentation of proprietary Amazon services and wrappers compared to their corresponding open source technologies, spending more time debugging and on general uncertainty, spending more time waiting for responses from another company, having to stop what we're doing and handle backward incompatibility on Amazon's schedule instead of our own, spending more developer hours and fewer sysadmin hours on managing and debugging services instead of more sysadmin hours and fewer developer hours on our own services. (Developer hours are more costly and scarce.)
Seen it at previous work places. Focusing too much the agile boards and not enough on engineering. Then hire expensive
Consultants because you're hitting the wall.
Putting product in charge of engineering instead of making is a partnership.<p>Then not holding product accountable for an inspired roadmap that is delivered 2 months into the half.<p>My team is working way below peak efficiency for 4 months a year as a result. The engineers are super unhappy about this but there is "nothing to be done" according to my boss and his bosses boss.
Our department gets a few thousand projects a year (work in large format printing). The amount of repetitive steps that each project share is simply mind boggling. By writing 10 or so scripts, was able to shave department labor hours down by 14%.<p>Excel... how people use excel and the amount of waste that happens just because they don't properly know how to use 'vlookup' or 'if' simply just boils my blood.
Internal transaction costs. My company has dozens of different offices who each invoice each other, sometimes in circles. We need to make internal markets easier to operate
"Buy don't build" becoming such an embedded piece of wisdom that there are literally a half-dozen COTS appliances that do the same thing, but not inventorying them, to the point that you might have just one or more likely zero people using them. Literally no one watches our DLP tool, but we keep paying for it.<p>It's basically a field day for consultants and for appliance vendors. I'm not a huge fan of NIH but it's really demoralizing to see money get spent on toys that immediately get locked up in the attic.
Meetings - I think anytime someone mentions they won't be able to get things done because of meetings, they should reassess if the meeting is needed at all.
The most costly inefficiencies I've seen are companies / organizations that are wrongly constituted to begin with.<p>For example, when you have a division of larger company that really should be its own company. But, no one's allowed to talk about that because "that's been talked to death already" and the show must go on, etc. Or because no on really cares (or bothers to think about things on that level) basically.
One of the major causes of inefficiency is bad management--the cause behind many of the responses given here.<p>Incompetent managers up the chain don't have a coherent vision that moves us forward. They spend most of their time playing at politics, trying to look good, maintaining the status quo, and/or attempting to coalesce power/status. Even good managers get caught up in this game. It seems to be the nature of the system.<p>On my team, for example, we have too many projects, projects taken on for the wrong reasons, and projects that don't fit our team's skillset. Most of those projects aren't managed well or even managed at all.<p>Old projects molder with no real plan for fixing them, so we spend inordinate amounts of time on every change. New projects are announced with someone claiming that they'll be "easy", but there's no plan and things don't get done or they get done badly. Sometimes I sit here in pure bewilderment wondering what the point of it all is.<p>Is there some way a startup could tackle organizational/social issues? That seems like an interesting idea, but I can't think of how it might work.
Politics.<p>Using the too expensive AWS and Google Cloud where DO would have been totally fine.<p>People who can't admit their mistakes or even blame others for theirs.<p>Bad architectural decisions.<p>Kubernetes instead of Docker Swarm for small clusters without any traffic or just plain Docker.<p>Expensive Github instead of free Bitbucket.<p>Asana, Jira, Pivotal Tracker instead of free Trello.<p>Slack.<p>Self-hosting of non-core tools.<p>Team retreats nobody wants.<p>Team events nobody wants.<p>Team members with weak communication skills.<p>Teams which are not synced, where some come after lunch and some finish few minutes later.
Competition. A lot of people generally like to harm their colleague's odds of success - they pass accountability, responsibility, work, force them to attend more meetings, force them to use more communication software. Basically trying to look good by making someone else look bad.<p>It would be very effective if everyone worked together towards a common goal. This really isn't an issue in fast growing companies but the slower the growth of a company is, the more destructive competition sinks in.
Building the main campus in SF Bay then formalizing a location pay differential, then SF Bay staff pestering the distributed talent to move to SF Bay and fly to SF Bay for every team bonding/etc until they quit or move to SF Bay (and then quit as they actually need double the salary just to get back to their previous standard of living.)
At big companies, just communication between departments. Startup idea: a "heroku" for enterprises, where companies own their own "heroku", and each division/group provides a "plugin" that they manage. Would make things much more consistent among departments, and integrating solutions so much easier.
Not to start a flamewar, but... Cramming expensive engineers shoulder to shoulder in a giant distracting concrete box of an open office, yards from the sales team yammering on the phone all day.
Being unwilling to spend money on good tools, forcing everyone to work around the failings of sub-standard free tools. I'm talking about you, TestLink.
The great cycle.. lets not code too much ourselves, lets only be experts at our domain, lets use librarys.
The librarys fail, they do not deliver the expected performance, they cant be customized or are suddenly not maintained and we can not port our whole ecosystem.<p>Lets write most of our code ourselves, get independent from external actors, but we are slow now, glacial and distributed to reinvent a lot of wheels, while others outpace use in our domain. We should use more librarys.