I currently work at an “AI First” 🤢 fintech company, and we’re mandated to program agentically. I was fortunate enough to start working before the AI hype, but the environment right now is daunting.

There’s too much unmaintainable code slop and throw away scripts committed that I can’t keep track anymore. Each PR has so much diffs that it feels like someone had diarrhea and shat all over.

I try to manually review the code, but it feels like best effort at most. Like I may only understand 70% of the thing that I’m reviewing. What ends up happening usually is that I just ask the model and verify the output(which is horrifying I know)

I spend the whole day arguing with AI, reviewing, and pushing back against its output that sometimes I wonder if I am the one driving AI or is it driving me.

–

Recently, I noticed that I’ve becoming more reliant on the model and that my skills have been atrophying. What would’ve taken me an afternoon if I program it by hand, would take me a week now if I do it now. I also find my head hurting and myself glossing over the code in code reviews and prompting claude to do even the basic of commands.

I get that there’s more to programming in software engineering (collaboration, dealing with people, etc etc), but I don’t feel like I am in control of the systems I am building anymore with the engineering aspect being replaced with babysitting and self lobotomy.

–

Off work hours, I try to brush up by reading on system design and architecture books, typing by hand if I’m learning a new technology or stack, but I feel like it’s not enough to prevent from skill atrophy.

How are y’all coping and how do you recover from this? I am afraid on what skills that I’ll be able to bring at my next place of employment if I resign and that I’m becoming a jack of all trades master of none type of thing - having only shallow understanding.

  • codeinabox@programming.dev
    link
    fedilink
    English
    arrow-up
    0
    ·
    10 hours ago

    Which skill are you worried about atrophying? Writing code, reading code, or something else?

    I find agents very useful for exploring, and understanding existing code bases I am not very familiar with, or if there are time constraints. One thing I have been thinking about, is using agents to assist with creating a plan, but instead of getting an agent to implement that plan, I’d rather make the code changes myself.

    Another way could be regularly doing exercises at Exercism.

  • Shayeta@feddit.org
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 day ago

    I mostly design and architect the systems, don’t write the code myself anymore.

    I believe the important part is to keep working your critical thinking, don’t just blindly accept the output. Understand, scrutinize, consider, criticize.

    Writing bad syntax and not remembering func signatures are obvious problems that will auto-resolve as you personally re-familiarize yourself with the tech you’re working with.

  • Simulation6@sopuli.xyz
    link
    fedilink
    arrow-up
    0
    ·
    1 day ago

    Malicious compliance, to some extent. The only people I can complain to are 3 levels down the AI train. Never let the AI update the git repo, review all changes it makes. I end up removing like 90% of any comments added as useless or too confusing to live; especially comments that have DO NOT REMOVE in them. Ends up taking about the same amount of time as if I just did the work myself. Quality is better, because the tool is good at what it does best.

  • Kissaki@programming.dev
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 day ago

    I’m lead in my team and AI is being used to varying degrees. One colleague is a problem, but was a problem before AI as well. Me and my other three colleagues have a common understanding of you have to take ownership, understand what you’re doing, and document it.

    As a reviewer, I ask for the information it lacks.

    We (our company) has another project started with “AI first” too, and now still works mainly through “document features and behavior and stuff in md files and AI generates it” - so mostly about spec writing and AI generating. I don’t know how well that works, but I’ve heard bad more than good things (which may be common anyway) and it certainly hasn’t lead to meeting timelines (now more than half a year behind the original planned release).

    Personally, I’m still skeptical about AI use, but do use it occasionally. Our project is simply too complex (and legacy and long history of changed dotnet technology as well). It’s more feasible on newer projects, but Blazor isn’t a straight forward framework either, mixing razor, html, css, component isolation, SAP lifecycle, render modes and whatnot.

    I haven’t used AI to a degree where I feel it significantly [negatively] impacts my capabilities. Thankfully, my team hasn’t pivoted into that completely, either. I see the risk and hope pushes though. The promise of AI speeding things up. The customer saying “a bit more risk is fine”; but it’s on us to communicate the difference between risks (the bug fix missed one additional unknown place vs long term maintainability and its associated risks).

  • Harrk@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    2 days ago

    I don’t believe you can fight back. Don’t want to work with AI? Get replaced by somebody who will. On the other hand… work with AI and find yourself out of a job. I don’t see a good outcome either way.

    Not sure how the next few years are going to unfold and it’s pretty scary tbh.

    Might just go learn a trade alongside everyone else…

  • aksdb@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    2 days ago

    Where I work we can still push back to big PRs. Our guideline is unchanged that it shouldn’t be more than 700 lines of change. The less the better. With agents it’s even simpler to deny a big PR. A manually written big PR would have meant lots of manual effort in reworking it. With agents I basically just demand the author to tell their agent to split their fucking PR up.

      • kreskin@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        12 hours ago

        Document it as your groups operating principle and get the team to sign off on it. Point them to the doc.

      • kunaltyagi@programming.dev
        link
        fedilink
        arrow-up
        0
        ·
        12 hours ago

        Use automation checks. Most platforms allow adding tests for every small thing.

        We have post commit hooks for agents as well as merge protection based on stuff like what you said

      • aksdb@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        2 days ago

        I am a Staff Engineer. So I am high enough in the chain to even close PRs at will.

        Other engineers are encouraged to reach out to us staff engineers if they feel powerless on their own.

        We can only do our best to not end up with a culture where people fear each other.

  • thecoffeehobbit@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    0
    ·
    2 days ago

    I made a horizontal career move and accepted as a trade-off that at this time I won’t write code.

    Old company: mildly toxic environment, out of touch CEO, poor leadership. Increasing AI push and wild gaps between different people’s competence. Constant arguing. The dreaded 5k loc generated PRs started appearing. My role: ~5% web programming tasks (that I actually signed up for originally) rest was design, review, and people-related work. I was not a manager. Hated it.

    The project: 1 year of goal-oriented homelabbing, from a 50€ raspberry pi to hybrid cloud, gitops, kubernetes, and all the good bleeding edge stuff you need to run your own cloud. Did this completely without AI, built the resume, applied to a few places. Happens that one of the companies was looking for the exact stack I built my homelab around.

    New company: Platform team, 90% hands on, competent manager, capped AI budgets, people treat each other respectfully. I quite like it. When I do coding it’s simple enough that it stays manageable even though I ask some bot to write it 90% of the time. It gets the job done, I wasn’t hired to write code anyway.

    It’s probably a patch, but I’m hoping to run the wave long enough by this move. For the first time in a couple years I feel clarity. I trust that I’ll be able to pick up programming by hand if needed. Most people are in the same boat anyway, so the expectation won’t be there to perform on a similar level instantly. I trust that my ability to learn new things keeps being valuable.

    On my free time I don’t currently write code, non-technical hobbies and maintaining the homelab I conjured eat it up. I don’t mind too much. I have enough interesting stuff to do. I think most of all it’s important that I get to create something. If I’m not exactly paid to do that it’s not the end of the world. Much worse situations exist, I’m still paid similar €€ than in my software position.

  • Phoenixz@lemmy.ca
    link
    fedilink
    arrow-up
    0
    ·
    2 days ago

    Easy!

    Get fired from A CTO position because everyone gets replaced by AI, like me, and then be unable to get any IT job for 6 months straight until you’re so desperate and that you’ll take a call center job.

    Oh wait, that isn’t honing IT skills, that is honing depression skills. Sorry bout that.

  • Aeri@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    2 days ago

    Could one simply write code themselves and ask the AI to make it look like it did it?

  • EdTheMessenger@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    2 days ago

    My job is 75% maintenance and 25% developing new app features. That 25% is really interesting and is what drew me to my current company, but maintenance is what management cares about most and what our customer service team is constantly pushing us to do.

    The problem is that it’s boring and repetitive work. Ever since the company started promoting the use of AI, I’ve been delegating these tedious tasks to agents who work on separate Git worktrees, while I focus on learning new things and implementing them alongside new features that we previously didn’t have the time or budget for. Management is satisfied, and I’m learning a lot thanks to the time I’ve saved. Most importantly, I’m still writing code myself, code that I actually enjoy writing.