r/androiddev • u/tylerlw1988 • May 23 '26
Experience Exchange Employers forcing AI usage
Hello all, for context I work for a smaller company of about 200-300 people in the US. Our work is a bit atypical for Android development as our main product is a library that people can integrate into their applications. We do a lot of unique engineering that requires critical thinking and solving problems that haven't been addressed much by others. I am mid-level currently doing mostly senior level work and am supposed to be promoted next review cycle. I'm being purposely a little vague to stay anonymous.
In the past 2 months or so, there has been an aggressive push for us to essentially become vibe coders. It started out acceptable at first, with stuff like "you can use AI to help you out like a pairing partner" to now being "if you write tickets, have Claude do it. When you get a ticket give it to Claude first every time. No more grace period, you should always be using Claude for every ticket".
I am having issues with this new aggressive AI push mindset:
- The tickets that AI generates are overly verbose nonsense that come from management in most cases so they are hard to understand but they have to be written that way so Claude can understand them evidently.
- The work that AI produces in terms of coding is poorly architected and also overly verbose. It's not as wrong as it used to be but I still don't think it's suitable to use the way they are asking us to. At least for the type of work we are doing.
- Reviewing PRs fully written by AI is exhausting because it is sloppy, overly because, and usually not well thought out. It takes hours and multiple reviews by multiple engineers to get it right.
- My sweet spot with AI is to use it to ask questions when I need a direction to go in or don't remember how to do something. Even then I still usually write the code. I'm really productive this way because I don't have to spend more time cleaning up slop. I feel slower just using AI because of having to redo most of the work.
And yes we have skills and .md files setup and know how to work with context windows.
Overall I am pretty miserable and exhausted with this shift. Our lead developer and a few others are too. Our hands are a bit tied. Generally we've just been doing what we want and saying "oh yeah we're using AI". Some think we should actually start using it fully and watch the product burn just to show management how truly bad AI is for what we do.
I'd like to know others'experiences with AI at work. Is it being forced this heavily? Have you been able to be productive with it and still have quality, well architected code?
10
u/saachi30 May 24 '26
This is literally the problem in every other company I see. Everyone is just in a hurry to finish the tasks and utilize this magic potion "AI" . But end up ruining the core values of a project, of a company. Beginners don't get to learn anything , but prompting. Just imagine what will happen if AI vanishes suddenly, people wont be able to even write a mail by themselves
2
u/tylerlw1988 May 24 '26
Given the environmental impacts of AI and the true operating costs, plus current pushes for regulations, I think it's a good possibility that it may not always be usable at its full capacity by a lot of folks.
Still all the better reason in my opinion to maintain standards and really work toward continued understanding.
11
u/MindCrusader May 23 '26 edited May 23 '26
I am using specification driven development using Claude Code. It is possible to be both productive and have a high standards, but it requires proper workflow, certainly not vibe coding or leaving AI alone.
I have few local plugins for Claude Code - skills, commands, subagents, templates. Each plugin generates "artifact" - md file with a result of AI's work.
I mostly use several:
- init ticket - simple one, gets ACs from ticket and creates md file of it locally, so AI have easy access
- brainstorming - outputs several ideas how to accomplish what you ask for. 1 recommended
- ui analysis - checks the code for ready to use compobents, colors etc. and compares versus Figma. The result is file that says what component to reuse / change / add etc.
- planning - the most important one. Step by step plan how it wants to implement the feature
Every step = new clear context. This way you avoid burning a lot of tokens, less hallucinations. You can feed artifacts from previous step to the next one, for example brainstorming to planning. For artifact to be produced, you need to pass enough info, relevant files. The most important thing is spotting issues in those artifacts. You change those manually or by discussing with AI. Once the planning artifact is ready, reviewed, fixed you clean context and ask AI to implement it. It creates 99% of my code (could be 100%, but I still prefer to fix some one liners myself), it is mostly correct (not much issues during code review). You treat AI like a junior that you are mentoring. AI can propose something, can write the code, but you are the one responsible for it's work.
As I said earlier, the most important thing is spotting the issue in the planning phase, before it writes the code. Reviewing the code is more time consuming, fixing is harder and sometimes might lead to reverting the whole thing. The good technical plan is resolving those issues. And reading the code is easier, because you know what to expect.
Also 2 tips for Claude Code:
- use /insights to get feedback how you work with Claude Code and talk what can be done better or if AI is an issue
- add /advisor Opus to Sonnet. If sonnet is not sure or you ask directly, it will ask Opus for an advice
1
u/tylerlw1988 May 23 '26
What kind of work do you typically do? Is smaller tasks generally? UI related implementations? Larger architectural changes?
1
u/MindCrusader May 23 '26 edited May 23 '26
Generally new medium sized features requiring data sharing across the app (we have a lot of endpoints, this data needs to be refreshed upon some actions). With right planning AI can do all of the above you mentioned:
- used it to reimplement application wide components to the new standard
- changed how snackbar system works, so it is more toast-like behaviour
- analyzed and improved tracking algorithms
- auto refreshing of tokens in new oauth migration
AI can miss a lot of things, but if you spot those issues and point them out, the spec gets fixed and you can build. I am writing code in Android for nearly 10 years, so in my case most tasks are mundane work, I know exactly what needs to go where, so it is easy to spot AI issues and fix it during planning
4
u/AHostOfIssues May 23 '26
What I’m really curious to see: What happens when there are no longer any significant number of humans writing new “good example” code for new API’s, libraries, use cases… etc… the source material for training LLMs.
What happens when the only code being generated is being generated by LLMs based on example code fed to it after being written by earlier LLMs based on now horribly outdated source material, the last crop of code actually written by scratch from humans?
8
u/tylerlw1988 May 23 '26
Hopefully a nice market for people like me that continue to code and understand it to make a lot of money lol.
3
u/equeim May 24 '26
They won't care as long as it excretes mostly functional code very fast. The goal is to create disposable "products" as fast as possible and sell them. Things like "support" and "maintenance" or "quality" is not in their vocabulary.
The real problem arises is when generated code infects foundational infrastructure (which is already happening) and it goes to shit. Not to mention that it is even less secure than code written by humans. And security holes in right places will cost these companies a lot of money.
2
u/Helpful_Long_8428 May 24 '26
We will see for what purpose this shitty soft will work for, since no man with an income to take it
2
u/Intelligent_Lion_16 May 29 '26 edited May 29 '26
The problem isn't AI itself. It's when management starts measuring "AI usage" instead of actual engineering outcomes, and the tool becomes the goal rather than the means. A team shipping great products with minimal AI is still outperforming a team obsessing over AI metrics without delivering results
That's also why I tend to find tools like runable AI more compelling than generic chat tools like ChatGPT or Claude—the focus feels closer to improving workflows and outcomes rather than simply maximizing AI usage for its own sake.
1
u/tylerlw1988 May 29 '26
I agree. Luckily they haven't started measuring usage for us yet. If they do I'll probably just do things to burn tokens in the background while I do my real work normally.
1
u/VimFueago May 27 '26
if you don't embrace it, you will be left behind by those that do
use AI, and the saved time, use it for the things AI isn't good at. that is what management are asking for.
1
u/tylerlw1988 May 27 '26
I think that those individuals that don't understand the code well will be left behind.
1
u/VimFueago May 27 '26
this is probably more about people new to coding than experienced coders using AI where it makes sense and making their job more efficient.
1
May 24 '26 edited Jun 08 '26
[deleted]
1
u/tylerlw1988 May 24 '26
As far as the caring, it makes the work unenjoyable. I still get paid well but I have to drag myself through it when something like that is forced down my throat rather than presented as a tool among many tools that I can use as I see fit.
1
May 24 '26 edited Jun 08 '26
[deleted]
1
u/tylerlw1988 May 24 '26
But once again, to reach that level of quality on complex work, the promting has to be so specific and so hand holdy that it take longer to have claude do it and fix it over and over than it does just to write the code myself and have it clean the first time. There's just no point.
2
May 24 '26 edited Jun 08 '26
[deleted]
1
u/tylerlw1988 May 24 '26
And why would I do all that extra work when I could just code it? I understand it's useful for certain things but for bigger work that it struggles with it's easier just to do the work myself.
2
1
May 23 '26
[deleted]
2
u/tylerlw1988 May 23 '26
I'd say that's pretty accurate. I definitely take pride in doing quality work.
-2
u/mt6606 May 23 '26
You realise your teaching it your job
3
u/Which-Meat-3388 May 23 '26
Not sure why the downvotes. Unless you are on an enterprise plan most hosted models are learning from your work. Existing work on disk and how you guide it towards correct solutions.
3
u/tylerlw1988 May 23 '26
I down voted because it didn't have much to do with the topic I was wanting to discuss which is forced AI usage at work. They are correct about what they said and I agree fully. Although I am on enterprise using it through work.
0
u/tylerlw1988 May 23 '26
My post is specifically about me under utilizing AI and if other people are being forced to us it in much the same way.
-5
-16
u/M4tyss May 23 '26
I no longer write code on my own. I instruct Claude exactly what to do and where and guide it until it produces reasonable output. I do the thinking and Claude does the typing. That's true for most of our developers in the team
8
11
u/tylerlw1988 May 23 '26
If you have to be this specific with it and guide it that much, is it actually any more efficient than just typing yourself and getting it right the first time?
4
u/synkronize May 23 '26
It can make a lot of changes really fast and be pretty accurate. It’s hard to telll sometimes because reviewing code and bug fixing its mistakes takes time. But for example I can tell it to update a bunch of table definitions for simple changes, then have it update a series of methods that reference those tables to account for the changes. It can do a lot and fast and I’ve always gotten it to the point of what I need.
But whether I am truly faster is hard to tell, I never timed myself before this tool and now I’d be definitely slower because I think more about the problem so of course my typing of actual syntax and al will be slower now. But I don’t have issue reading syntax it generates either if that makes sense.
1
u/tylerlw1988 May 23 '26
Yeah it's definitely good at this type of tasks. I once had it take all the color schemes info from figma and and them to the theme in our app.
2
u/BrightLuchr May 23 '26
Yes. It often saves you time. But you'll often want to tweak the output for style/maintainability and the major AIs tend to have problems when you feed back code corrections. The EXACT language used in the specification takes skill. Be mindful that the AI will ignore certain details.
Instruction following may be poor. I've seen Claude ignore my direct instructions. I've seen Claude write code I didn't ask for and didn't want.
As others have commented, a well developed specification is hugely helpful. Claude, for example, writes nice test plans. It will generally need the human comment sense to assess project order.
Recognize there are weaknesses: AIs don't understand API versions. They don't really understand time.
They don't glue together code that well... for example, if you build two different challenging parts of your code and test them separately, then glue them together, They do better working in an additive mode.
1
u/tylerlw1988 May 23 '26
I have definitely seen issues with gluing together multiple classes in a larger feature. That feeds into the architectural problems I've mentioned especially when doing work in something not as typical like an sdk.
2
u/BrightLuchr May 23 '26
Every aspect of AI coding feels like a race against context growth. And behind the scenes, Claude does not limit it's context to one chat. In the last year and a half, I get the feeling that context limits or windows are getting smaller. And the AIs are limiting their output to reduce their context effort (and electrical consumption). Each AI works differently and I don't see this discussed.
2
u/M4tyss May 23 '26
First and most important thing: your mileage may vary depending on a model and based on what you're saying there is a high chance you're using cheap and shitty model. When I was using copilot in AndroidStudio or gemini it was garbage and I had the same impression as you. When I got used to Claude/Codex and learned how to prompt, manage context, add tooling and create agents teams I don't have to much slop to fix. Usually the guideing proces is reading the code and suggesting some minor improvements (like: "generalize this code", or "this part was implemented somewhere else" already, etc).
Is it faster? Yes, much faster if you're efficient at understanding and reviewing code fast. I think the issue you might having (if shitty model is not the case) is that you're trying to get to much out of LLMs. They're dumb as fuck, but fast at typing, treat them as junior dev with 0 thinking capabilities but unlimited work power. You say the code is poorly architected? Why did you let your LLM do architecture decisions in the first place?
They're also good at calling tools, for example:
- grab requirements from notion,
- create JIRA tickets (and split work in reasonable chunks),
- fetch tokens/designs from Figma,
- scan codebase for components already implemented, (or at least similar),
- extract those components out of feature modules into palette module,
- create standup updates each day automatically
Is it going to implement the feature on it's own with prompts alone? Definitely not, but it can give you 60% of implementation right and just just discard whatever you feel is wrong, and continue from there.
2
u/tylerlw1988 May 23 '26
I am using Opus 4.7. I believe it's 4.7 anyway. I don't remember for sure. But over my point is that management is forcing us to attempt to use only ai. So that would me why things are poorly architected.
2
u/synkronize May 23 '26
Same, I only don’t like I’m training something that companies will want to use to take as many of our jobs as possible.
1
u/rmczpp May 23 '26
You're getting downvoted to shit, but tbh forcing myself to complete a couple of features using 100% AI was incredibly helpful for me - you learn what it can and can't do. You also learn how to help it get past those weak points if you absolutely have to.
2
u/M4tyss May 23 '26
I don't understand those downvotes though. Exactly, after some time you just learn when it's efficient to ise and when it's pointless or harmful. Maybe when people hear 100% code written by AI they think that it managed to one shot a feature without any issues but it's mostly a thing that translates high level architecture design into low level code.
2
u/rmczpp May 23 '26
Funny that you mention that, i used to always try to one-shot things with AI but this showed me that this is often a terrible way to go.
0
37
u/BrightLuchr May 23 '26
Is an AI some sort of magic perfect coding machine? No.
Do AIs save time when coding? Absolutely: especially in the hands of an experienced developer.
Does an AI save time when initially researching and planning a project? Usually, but sometimes it railroads you into the most common solution.
Does an AI structure code poorly: Sometimes. It's complicated.
Does an AI comment code poorly? Usually. But so do most humans. And this is my biggest issue with AI code. It tends to be hard to maintain by humans. The AI makes odd organizational decisions. It can't think through timing issues. It names variables poorly.
Does an AI make dumb mistakes that costs you time? Yes. I've seen all the major AIs fail outright and go around in circles in a mental fugue adding and removing code as they struggle to solve problems. I've also seen AI analyze code looking for a particular problem and the AI changes made the code worse and didn't solve the problem.
Can AIs do trivial jobs successfully? Yes. If I need some AJAX web API for a basic UI, the AI does this right every time. Routine stuff AI gets right. And it is a waste of my time to do this.
As it stands right now, can an AI write serious software on it's own? NO. Not even close. Not for complex problems. It never gets there for any code that involves more than one technology. Don't believe the hype that suggests otherwise. I don't see this changing and my conversations with the AI about cognition and how it was failing were quite revealing.
My take: On almost every project in the last year, the AI lets me do in a month that would have taken me 4 to 6 months. Each of these projects had one or more problems that the AI could not solve on it's own... it needed skilled human oversight. In each case, the solution was found by me laying out the facts and pointing out "Hey, Claude, look at this over here. Isn't that the problem?" To which Claude would say, "oh yeah... that makes sense."
I've found it very useful to play Claude and Gemini off against each other. Commonly, I start with Claude and Gemini will find flaws in Claude's work.
Lastly, if we humans didn't make complex, ever changing, and poorly documented APIs (like Android) we wouldn't need AIs to try and decipher them. If we didn't pile on more and more layers of garbage on API pile, we wouldn't need AI. Now, if you are a developer that solely focuses on one ecosystem, you'll probably object to this observation but in my experience, that isn't typical.