Short disclosure, I work as a Software Developer in the US, and often have to keep my negative opinions about the tech industry to myself. I often post podcasts and articles critical of the tech industry here in order to vent and, in a way, commiserate over the current state of tech and its negative effects on our environment and the Global/American sociopolitical landscape.
I’m generally reluctant to express these opinions IRL as I’m afraid of burning certain bridges in the tech industry that could one day lead to further employment opportunities. I also don’t want to get into these kinds of discussions except with my closest friends and family, as I could foresee them getting quite heated and lengthy with certain people in my social circles.
Some of these negative opinions include:
- I think that the industries based around cryptocurrencies and other blockchain technologies have always been, and have repeatedly proven themselves to be, nothing more or less than scams run and perpetuated by scam artists.
- I think that the AI industry is particularly harmful to writers, journalists, actors, artists, and others. This is not because AI produces better pieces of work, but rather due to misanthropic viewpoints of particularly toxic and powerful individuals at the top of the tech industry hierarchy pushing AI as the next big thing due to their general misunderstanding or outright dislike of the general public.
- I think that capitalism will ultimately doom the tech industry as it reinforces poor system design that deemphasizes maintenance and maintainability in preference of a move fast and break things mentality that still pervades many parts of tech.
- I think we’ve squeezed as much capital out of advertising as is possible without completely alienating the modern user, and we risk creating strong anti tech sentiments among the general population if we don’t figure out a less intrusive way of monetizing software.
You can agree or disagree with me, but in this thread I’d prefer not to get into arguments over the particular details of why any one of our opinions are wrong or right. Rather, I’d hope you could list what opinions on the tech industry you hold that you feel comfortable expressing here, but are, for whatever reason, reluctant to express in public or at work. I’d also welcome an elaboration of said reason, should you feel comfortable to give it.
I doubt we can completely avoid disagreements, but I’ll humbly ask that we all attempt to keep this as civil as possible. Thanks in advance for all thoughtful responses.
A very large portion (maybe not quite a majority) of software developers are not very good at their jobs. Just good enough to get by.
And that is entirely okay! Applies to most jobs, honestly. But there is really NO appropriate way to express that to a coworker.
I’ve seen way too much “just keep trying random things without really knowing what you’re doing, and hope you eventually stumble into something that works” attitude from coworkers.
I actually would go further and say that collectively, we are terrible at what we do. Not every individual, but the combination of individuals, teams, management, and business requirements mean that collectively we produce terrible results. If bridges failed at anywhere near the rate that software does, processes would be changed to fix the problem. But bugs, glitches, vulnerabilities etc. are rife in the software industry. And it just gets accepted as normal.
It is possible to do better. We know this, from things like the stuff that sent us to the moon. But we’ve collectively decided not to do better.
Main difference is, a bridge that fails physically breaks, takes months to repair, and risks killing people. Your average CRUD app… maybe a dev loses a couple or hours figuring out how to fix live data for the affected client, bug gets fixed, and everybody goes on with their day.
Remember that we almost all code to make products that will make a company money. There’s just no financial upside to doing better in most cases, so we don’t. The financial consequences of most bugs just aren’t great enough to make the industry care. It’s always about maximizing revenue.
maybe a dev loses a couple or hours figuring out how to fix live data for the affected client, bug gets fixed, and everybody goes on with their day.
Or thousands of people get stranded at airports as the ticketing system goes down or there is a data breach that exposes millions of people’s private data.
Some companies have been able to implement robust systems that can take major attacks, but that is generally because they are more sensitive to revenue loss when these systems go down.
I’m not sure if you’re agreeing or trying to disprove my previous comment - IMHO, we are saying the exact same thing. As long as those stranded travelers or data breaches cost less than the missed business from not getting the product out in the first place, from a purely financial point of view, it makes no sense to withhold the product’s release.
Let’s be real here, most developers are not working on airport ticketing systems or handling millions of users’ private data, and the cost of those systems failing isn’t nearly as dramatic. Those rigid procedures civil engineers have to follow come from somewhere, and it’s usually not from any individual engineer’s good will, but from regulations and procedures written from the blood of previous failures. If companies really had to feel the cost of data breaches, I’d be willing to wager we’d suddenly see a lot more traction over good development practices.
… If companies really had to feel the cost of data breaches, I’d be willing to wager we’d suddenly see a lot more traction over good development practices.
that’s probably why downtime clauses are a thing in contracts between corporations; it sets a cap at the amount of losses a corporation can suffer and it’s always significantly less than getting slapped by the gov’t if it ever went to court.
I’m just trying to highlight that there is a fuzzier middle ground than a lot of programmers want to admit. Also, a lot of regulations for that middle ground haven’t been written; the only attention to that middle ground have been when done companies have seen failures hit their bottom line.
I’m not saying the middle ground doesn’t exist, but that said middle ground visibly doesn’t cause enough damage to businesses’ bottom line, leading to companies having zero incentive to “fix” it. It just becomes part of the cost of doing business. I sure as hell won’t blame programmers for business decisions.
It just becomes part of the cost of doing business.
I agree with everything you said except for this. Often times, it isn’t the companies that have to bear the costs, but their customers or third parties.
That’s why I don’t work on mission critical stuff.
If my apps fail, some Business Person doesn’t get to move some bits around.
A friend of mine worked in software at NASA. If her apps failed, some astronaut was careening through space 😬
Yup, this is exactly it. There are very few software systems whose failure does not impact people. Sure, it’s rare for it to kill them, but they cause people to lose large amounts of money, valuable time, or sensitive information. That money loss is always, ultimately, paid by end consumers. Even in B2B software, there are human customers of the company that bought/uses the software.
The tech industry is so very capitalistic, so many companies see devs as min max churn machines, tech debt? Nah FEATURES! AI! MODERNITY! That new dev needs to be trained in the basics and best practices? Sorry that’s not within scope
I read somewhere that everyone is bad at their job. When you’re good at your job you get promoted until you stop being good at your job. When you get good again, you get promoted.
I know it’s not exactly true but I like the idea.
I don’t want to get promoted… Once my job isn’t mainly about programming anymore (in a pretty wide sense though), I took a wrong turn in life 😅
maybe not quite a majority
VAST majority. This is 80-90% of devs.
I think it’s definitely the majority. The problem is that a lot of tech developments, new language features and Frameworks then pander to this lack of skill and then those new things become buzzwords that are required at most new jobs.
So many things could be got rid of if people would just write decent code in the first place!
deleted by creator
Most of the high visibility “tech bros” aren’t technical. They are finance bros who invest in tech.
Most of them speak the jargon, but can’t explain what it means
No class consciousness. Too many tech workers think they’re rugged individuals that can negotiate their own contracts into wealth.
Working for free on nights and weekends to “hit that deadline” is not good. You’re just making the owners rich, and devaluing labor. Even if you own a lot of equity, it’s not as much as the owners.
And then there’s bullshit like return to office mandates and people are like “oh no none of us want to do this but there’s no organized mechanism to resist”
Join Tech Workers Coalition
We need to be able to talk about unionizing without fear of repercussions.
Tech workers need to unionize
The whole “tech industry” naming is bulllshit, there is more technology let’s say in composite used to build an aircraft wing or in a surgerical robots, than in yet another mobile app showing you ads
The whole tech sector also tend to be over evaluated on the stock market. In no world Apple is worth 3 trillion while coca cola or airbus are worth around 200 billions
More people own an iPhone than an Airbus plane.
If you want apples to apples, why the hell is Tesla, a company that makes under 2m vehicles, have a market cap of 1.4T while Toyota, a company that makes 10 million vehicles a year, has a market cap of 233B. No matter how you look at it, Toyota has better numbers in every way, but Tesla is a tech company as far as the market is concerned.
Tesla doesn’t just make cars. Tesla also makes batteries and photovoltaic panels.
I agree that Tesla is wildly overvalued and treated as a tech stock, but electric cars isn’t the only thing Tesla makes.
All software should be open source
All software should be released as a common good that cannot be captured by corporations. Otherwise it’s just free labor for Amazon, Google and Facebook
For the sake of humanity
I think most people who actually work in software development will agree with you on those things. The problem is that it’s the marketing people and investors who disagree with you, but it’s also them who get to make the decisions.
I took some VC money to build some bullshit and I’ll do it again!
CEOs and all management suite are mostly useless except for making the business worse for the employees for the sake of investors.
Most employees are perfectly fine with slow and steady growth instead of maximizing it.
It’s interesting the preconceived notions over managements usefulness and the actual role a CEO plays in a company. I’ve had a lot of conversations with people over the years and everyone just expects that it “has to be this way or it won’t work”. Like every admin position is critical or the company will fail, completely disregarding that most of those positions didn’t exist before and the company ran just fine.
There’s a lot of misinformation over what their actual job entails. Management is mostly just one big “telephone” game (been on all sides of it, got out just in time before it warped my perception of life). The original role of being support is completely absent in their duties as our society and culture has changed. People also think a co-op would never work because you need a big shot CEO who runs the company and makes all the decisions (they don’t, plenty of examples in reality).
It’s kinda funny to hear a lot of the tech people on here mention imposter syndrome. Every person in administration has this feeling deep down inside that they aren’t important and they have no clue what they’re doing. The only difference is everyone in the C-suite pat’s eachother on the back and help build each other’s ego up so they can just pretend they don’t feel it. It’s why people in these positions get so defensive and irate if you start dissecting their actual duties and importance. They’ve been reassured everyday that what they do is integral when it’s suppose to be the managers job to make his employees feel that way.
For many real world, day to day tasks, computers and the software that ran on them were faster and easier to use 20 years ago.
I hate so much that this is true. How did we manage to go so far backwards despite an army of UX designers? Oh wait…
But seriously it’s all this bullshit driven by engagement and weird metrics no one likes. For some reason even our ticketing system at work is built like it’s supposed to hold my attention rather than be a purpose-built tool for making my job easier.
And it’s because the same designers are building ticketing systems as are building the other apps.
I was using my school’s website the other day and had a similar thought. I remember waiting a similar amount of time for many pages to load back in the dialup days. Why is it so slow to load a page that just shows some text and buttons??
Much of what we do and have built is overpriced and useless bullshit that doesn’t make anybody better off.
We are inventing solutions and products to manage other solutions and products to manage other solutions and products to…etc etc.
Websites used to be static HTML pages with some simple graphics, images, and some imbedded stuff. Now, you need to know AWS for your IaaS, Kubernetes to manage your scaling and container orchestration for the thousands of Docker containers that you use to compose your app written in some horrific pile of JavaScript related web stacks like NodeJS, Typescript, React, blah blah blah…
Then you need a ton of other 3rd party components that handle authentication, databasing, backups, monitoring, signaling, account creation/management, logging, billing, etc etc.
It’s circles within circles within circles, and all that to make a buggy, overpriced, clunky web app.
Similar is true for IT, massive software suites that most people in the company use 10% of their functionality for stupid shit.
I’m all for advancing technology, I love technology, it’s my job and my hobby.
But the longer I work in this industry, the more I get this sick feeling that we lost the train long time ago. Buying brand new $1,500 laptops every 3 years so that most of our users can send emails, browse the web, and type up occasional memos.
100% agree with everything you said. I used to absolutely love technology and the Internet, but I’m definitely feeling a lot less interested in it all as the years go on.
Being techy I’m often asked to help out with systems / computer related stuff at work, and I just can’t for the life of me fathom why we’ve got 5 different systems all frankensteined together trying to talk to each other, instead of just one fucking system that does it all.
I learned the other day that our company spent something like 100 million on this prototype system that ended up being totally scrapped. We’ve now integrated all sorts of AI shite and switched to Microsoft purely because of Copilot, which, i can honestly say is a flaming pile of utter shit that never does what you need it to.
The whole industry is in shambles at the moment. I wish all this AI and crypto shit would just disappear, along with the majority of programming languages and frameworks, and other bloated bullshit and just take us back to simpler times.
Please stop with the AI pushing. It’s a solution looking for a problem, it’s a waste in 90% of the cases.
I think companies that use unethically trained AI (read: basically all gen AI) should be subject to massive litigation, or at least severely damaging boycotts.
Have mentioned it to a lawyer at work, and he was like “I get it, but uh… fat chance, lol”. Would not dare mention it to the AI-hungry folks in leadership.
Not a software dev, but for me it’s the constant leap from today’s “next best thing” to tomorrow’s. Behind the Bastards did an episode on AI, and his take resonated with me. Particularly his Q&A session with some AI leaders at, I think, CES not long ago. When the new hotness gets popular, an obscene amount of money is paired with the “move fast and break things” attitude in a rush to profit. This often creates massive opportunities for grifters as legislators are mind numbing slow to react to these new technologies. And when regulations are finally passed (or more recently, allowed by the oligarchs), they’re often written to protect the billionaires (read: “job creators”) more than the common customer. Everyone’s bought into the idea that slow and methodical stifles innovation. At least the people funding and regulating these things have.
companies don’t know how to interview. i don’t need someone to walk me through a sorting algorithm. i need someone who will be responsive, and interested in the problems we actually face.
Also, any number of interviews that is more than one is too many interviews.
not sure i agree with that. I mean ok, i recently had three interviews for a company where each interviewer asked me almost the same questions. That was clearly a waste.
At my place, we do a 30min introductory call with the boss first, to quickly weed out unfit candidates and not waste employee and interviewee time with interviews. if that’s ok, then there’s three interviews of 45-60 minutes, one with the product owner that focuses on soft skills and team fit, one with the team your applying to and one with the other team (like frontend or backend) with more technical things, and also just if you’d like to work with this person.
no amount of interviewing will ever guarantee that things work out and unfit people can slip through cracks. And i hate wasting time in tons of interviews. But i’d also not want to work at a place where i know my coworkers were hired after just 1 hour quick chatting. That so little time to get an idea of a person, to spot any red flags. Heck, the ‘tell me a bit about yourself’ section of an interview is already 15 minutes and not usually very helpful.
Neither Python nor JavaScript should be the primary language used in any production back end.
Javascript I understand, but why Python?
I don’t agree with Akareth fully, but I’d argue it’s difficult to write correct code at scale without static typing.
100% this would be my reasoning. I love Python for prototyping and personal stuff, but on an enterprise team? There is a reason Java has survived this long.
Out of interest, why?