330
What's with all the tech layoffs?
(infosec.pub)
A loosely moderated place to ask open-ended questions
If your post meets the following criteria, it's welcome here!
Looking for support?
Looking for a community?
~Icon~ ~by~ ~@Double_A@discuss.tchncs.de~
A few things happened pretty quickly.
During the pandemic, tech profits soared which led to massive hiring sprees. For all the press about layoffs at the big guys, I think most still have more workers than they did pre-pandemic.
Interests rates soared. Before the pandemic interest rates were ludicrously low, in other words it cost almost nothing to borrow money. This made it easier to spend on long term or unclear projects where the hope seemed to be "get enough users, then you can monetize." Once interest rates rose, those became incredibly expensive projects, so funding is now much more scarce. Companies are pulling back on bigger projects or, like reddit, trying to monetize them faster. Startups are also finding it harder, so fewer jobs.
And of course, AI. No one is quite sure how much that'll change the game but some folks think most programmers will be replaceable, or at least 1 programmer will be able to do the work of several. So, rather than hire and go through everything severance etc might entail, I think a lot of companies are taking a wait and see approach and thus not hiring.
I want to offer my perspective on the AI thing from the point of view of a senior individual contributor at a larger company. Management loves the idea, but there will be a lot of developers fixing auto-generated code full of bad practices and mysterious bugs at any company that tries to lean on it instead of good devs. A large language model has no concept of good or bad, and it has no logic. It'll happily generate string-templated SQL queries that are ripe for SQL injection. I've had to fix this myself. Things get even worse when you have to deal with a shit language like Bash that is absolutely full of God awful footguns. Sometimes you have to use that wretched piece of trash language, and the scripts generated are horrific. Remember that time when Steam on Linux was effectively running
rm -rf /*
on people's systems? I've had to fix that same type of issue multiple times at my workplace.I think LLMs will genuinely transform parts of the software industry, but I absolutely do not think they're going to stand in for competent developers in the near future. Maybe they can help junior developers who don't have a good grasp on syntax and patterns and such. I've personally felt no need to use them, since I spend about 95% of my time on architecture, testing, and documentation.
Now, do the higher-ups think the way that I do? Absolutely not. I've had senior management ask me about how I'm using AI tooling, and they always seem so disappointed when I explain why I personally don't feel the need for it and what I feel its weaknesses are. Bossman sees it as a way to magically multiply IC efficiency for nothing, so I absolutely agree that it's likely playing a part in at least some of these layoffs.
So basically, once again, management has no concept of the work and processes involved in creating/improving [thing], but still want to throw in the latest and greatest [buzzword/tech-of-the-day], and then are flabbergasted why their devs/engineers/people who actually do the work tell them it's a bad idea.
I'm pretty excited about LLMs being force multipliers in our industry. GitHub's Copilot has been pretty useful (at times). If I'm writing a little utility function and basically just write out the function signature, it'll fill out the meat. Often makes little mistakes, but I just need to follow up with little tweaks and tests (that it'll also often write).
It also seems to take context of my overall work at the time somehow and infers what I'll do next occasionally, to my astonishment.
It's absolutely not replacing me any time soon, but it sure can be helpful in saving me time and hassle.
Those little mistakes drove me nuts. By the end of my second day with copilot, I felt exhausted from looking at bad suggestions and then second guessing whether I was the idiot or copilot was. I just can't. I'll use ChatGPT for working through broad issues, catching arcane errors, explaining uncommented code, etc. but the only LLM whose code output doesn't generally create a time cost for me is Cody.
If you tried copilot at the beginning, it's improved a lot since, now it's using GPT-4.
Tragically, this seems to be the minority viewpoint - at least among CS students. A lot of my peers seem to have convinced themselves that the hallucination machines are intelligent... even when it vomits unsound garbage into their lap.
This is made worse by the fact that most of our work is simple and/or derivative enough for
$MODEL
to usually give the right answer, which reinforces the majority "thinking machine" viewpoint - while in reality, generating an implementation of&
using only~
and|
is hardly an Earth-shattering accomplishment.And yes, it screws them academically. It doesn't take a genius to connect the dots when the professor who encourages Copilot use has a sub-50% test average.
In my experience copilot for neovim is pretty useful if you
If you expect it to whip out of thin air what you really need and not have you correct it in several places, learn to code without it first.
To add to this, at my company, we've received a mandate to avoid putting any code into an AI prompt because of privacy concerns. So effectively no one is using it here.
Yep as far as most companies should be concerned, using something like CoPilot means giving free license to Microsoft to all your trade secrets and code that you input.
We had the same. And you would have thought for a heavily regulated industry we’d keep it that way.
But no, some executive wonk from Microsoft flew over, gave our c-suite a “it’s safe, promise” chat over champagne and lobster, and now we’re happily using copilot.
There's your mistake, treating bash like a language and not like a scripting tool. Its strength is that it's a common standard available on almost every machine because its older than most of us, its weakness is that it's full of horribly outdated syntax because its older than most of us. If used to script other processes it's great, but when you start using it as a language then the number of ways you can do something horrible that sort of works makes JavaScript look slick!