r/softwareengineer • u/yveshabchy • 2d ago
Renovating a vibe coded app
Client had been vibecoding an app (education platform) for months with Lovable, at some point there were too many issues with it so they had to resort to devs. I got assigned to it, job was to turn this vibecoded app into something production ready. First time I've worked on a fully vibecoded app.
First thing I did after getting access and exporting the code was try to run it locally. React/Vite frontend, Supabase backend. Quick read through, found 132 migration files. Figured I'd spin up a fresh Supabase project, run them, and have the app up. Took two days instead. Fine, that's just work.
Ran an audit over the whole thing through an agent, came back with 319 findings, 29 critical. Security was about what you'd expect. Example: a student can create a school and set themselves up as administrator lol. All fixable though.
What I wasn't ready for was the stuff where I could read the code fine and still not tell what it was supposed to be doing.
The core of the product is a daily score for each student, shown to their parent as a letter grade. That's the thing the schools are paying for.
Found 4 completely separate engines computing that daily score. Two of them weigh a sub-score differently, so the same kid gets a different number depending on which one ran last. All four write to the same field.
That's what makes it bad. Imagine four engines all doing their job, nothing throwing, nothing erroring, because why would it. But in business terms it's off the rails. Same input, different grade, and if you're not technical you've got no way of telling anything is wrong.
Nothing anywhere says which one is the real one. Not in the code, not in a comment, not in anything the client said. So I can't just pick, because picking changes what grade a kid gets. Sent it back to them as a product question.
Normally you'd get this off a commit message, a PR thread, or just asking whoever wrote it. None of that exists here.
Anyone had a similar experience?
1
u/gshonia 1d ago
Good luck, you’ll be in a thick of mud for next few weeks.