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.

you are viewing a single comment's thread
view the rest of the comments
[โ€“] -1 points 6 hours ago (4 children)

There's a lot here but to pick a small point to argue, have you been brushing up on your assembly skills? Perhaps you keep in mind the internals of TLS or wonder about ECS in games? The stuff that needs to be cared about has just changed one level up again. What remains is what remained before too, the critical thinking that led to the post. The work case seems to be that people don't care. I'd have a hard time believing that before AI that codebase was good. Even in my work with the gnarly non-AI legacy, monstrous things remain unacceptable, it just won't be merged, AI or not.

Practical suggestion: try to influence the automated code review for better, an improved model, or harness, instructions to complain about what annoys you, more context etc. and even examples of bad recent work. But it seems in your workplace it would be ignored and merges would happen anyway. That too is not new, AI just amplifies, and the solution remains a new job, as before, mostly, and for however long we still have them.

  • source
  • hideshow 4 child comments
  • [โ€“] 1 point 3 hours ago*

    I don't think this is a very good argument. Because AI is all encompassing in scope, where the things you mention are not.

    Sure most people would just use a library to handle TLS and not worry about it. But the library is there, it was written by humans that understand it, people created it for you to use. And if you feel like you can go in and explore it yourself and many people do so. For people brushing up on their assembly skills: Yes many people do that and I would recommend it a lot. For work it's a more rare thing, unless you are in highly specialized fields, but for hobby programming assembly is used a lot. People love making romhacks or even whole new games for old systems. Z80 assembly is still very much alive and kicking due to the GameBoy. Just like doing recreational mathematics, people do recreational assembly programming.

    But where your argument falls down the most is because of transferable skills. Whenever you do any kind of programming you are building up your skills. Your expertise might be NodeJS for example, but if you were to try some C programming, it would take some getting used to but you could easily do it. Because a lot of the skills are transferable.

    With AI you get the issue OP described, actual programming skills atrophy. It's like muscle that needs to be worked. Specializing in a field and simply using a library for another field still works that muscle. With AI you stop working the muscle at all and lose the skills. So presenting AI as just another level of abstraction or automation, like a library or just another tool like a compiler is a false comparison.

  • source
  • parent
  • [โ€“] [S] 5 points 5 hours ago* (2 children)

    I want to quit, but I'm kinda scared that other companies are all AI psychosis also ngl.

  • source
  • parent
  • hideshow 2 child comments
  • [โ€“] 1 point 3 hours ago

    I forgot to add one thing. You can still have fun too. While colleagues add the 30th one-off script to the tree, you can make a bot that critiques it and puts it on Slack. Is that reasonable? Doesn't matter, make it fun and use some obscure language and learn while at it. That test suite you know would be amazing but never had time or mindshare to build? Side project it away, building up your AI tooling to the point you can just ask for it. Those N repos with broken makefiles? Same. Fun is still around, just changed.

  • source
  • parent
  • [โ€“] 2 points 5 hours ago*

    Either be scared not to find a better job or scared by skill atrophy. Your choice. But if you find a better job, no need to worry for a while, while the skill atrophy worries will keep being around.

    I personally would choose to put all effort into looking for another job than putting in effort to get better at one I don't like.

  • source
  • parent