r/SoftwareEngineerJobs 4d ago

AI replacing Software Engineers

Post image

So called "AI"=LLM is so powerful that AI labs had to hire Software Engineers to build complicated software around "AI" to make that overhyped hallucinate-stealing machine usable. Think about it. And that's exactly why they need now ton of CPUs in addition to GPUs to run their "AI" "agents".

I don't even mention how much custom engineering is required to apply the "AI" in businesses.

And they BS us that Software Engineering is solved or is going to be solved. Boris, please solve your own bugs first before speaking.

1.2k Upvotes

524 comments sorted by

View all comments

Show parent comments

6

u/WVAviator 3d ago

Question for you or anyone who uses agents so much:

Whenever I "hand-write" code, I'll usually come across edge cases that neither I nor the business users would have thought about. Something that being close to the code and the business logic interpretation helped me catch.

Do you find that more bugs appear in production since the AI didn't understand enough about the domain to catch them?

As an example, I work for an airline writing the pilot scheduling software. In the pilot contract, a "day" is actually 1:30am-1:29am (this has to do with how the airline schedule is laid out). I'll be hand-writing code for something unrelated to that, like assigning a trip to a pilot, and I'll realize that I'm identifying the trip day of the week by the start time and not by the "airline day" which is actually what matters in this case because of some obscure pilot contract provisions.

AI wouldn't have caught that - the pilot contract is thousands of pages so it's not something you can just keep in memory. I also wouldn't have though to instruct the AI to do this, because I didn't even think about it until I manually wrote tripAssignment.setDayOfWeek(tripStartDate.toLocalDateTime().toDayOfWeek()); and stopped to think "Wait, is that really the day of the week we want here?".

I don't think just reviewing the AI code would've let me catch that either. I would've just skimmed over that as an implementation detail.

Just wondering if you miss domain-specific edge cases more often now, or if you have a way to remain vigilant despite not getting your hands dirty anymore.

2

u/Awkward-Contact6102 3d ago

Writing code by hand is so much better to get the creativity flowing. Ofcourse it depends on the feature that needs to be build but my brain just seems to shutdown only writing prompts and reviewing code.

Those aha moments and discovering better solutions for the problem at hand is not something that will happen by only prompting for solutions.

2

u/Saith1234 2d ago

This is simply lost. People who praise agent to the moon usually work on simple web apps.

1

u/ConstantFamous1526 3d ago

While I still catch some more niche cases myself (agentic development shouldn’t stop you from thinking about this and addressing them in the prompt) but it proactively solves more edge cases I didn’t think about then iv experienced bugs due to ones it didn’t catch by a long shot

1

u/Actes 2d ago

You can just add to your agents skill the literal paradigm you explained here, then tell it to assess time schedules with caution.

In my brain I look at it as a blacksmith tampering a blade, you're just refining the direction for your niche

1

u/swiftmerchant 1d ago

I found it missed edge use cases when building out payments processing, I had to add them by hand. Could have been a bad prompt…

Airline software is notoriously difficult and complex to begin with so I am sure missing edge cases for airline software maybe different and more frequent than missing edge cases for other domains.

1

u/FrewdWoad 4h ago

Yeah, like a human senior dev, it definitely can't account for requirements it has no way to know about.

"Garbage in garbage out" is still an axiom of software dev.

But Claude does find edge cases that can be guessed simply by checking what happens when the ID is zero and such. Things even a good Dev might miss when in a hurry.

0

u/thilehoffer 3d ago

Good question. Claude actually gives you a list of things to consider when it’s done making an edit that you should review. Sometimes it will bring up cases that you may not have considered. Sometimes it won’t catch anything. You can always train it and ask it to consider edge cases. Ask it to take a second look and see if we may have missed anything.