Vibe Coding vs Using LLMs to Code Responsibly: Guidelines for Technical Leaders
I was asked in seriousness recently if ‘vibe coding’ is a reasonable way for a software development team to operate. There’s a lot of misinformation buried in the hype about AI and software development. Technical leaders: help your teams, your business, and your non technical counterparts separate signal from noise: here are some guidelines and thoughts.
First off, an important distinction: ‘Vibe Coding’ and ‘Using LLMs to Code Responsibly’ are different ways of using AI that should be used for different purposes.
So when is ‘Vibe Coding’ appropriate?
In all other cases, teams should be somewhere in the ‘Using LLMs to Code Responsibly’ camp as otherwise you’re creating a minefield of technical debt in one or more of the following areas, which AI can not be trusted to be good:
Recommended by LinkedIn
However, and this is crucially important and has nothing to do with AI: ‘code responsibly’ is not a static thing and tech debt is NOT always bad; in early stages of a startup I’d argue it’s necessary to take on debt to iterate fast enough to find product market fit and capture customers and market. In the above list, how much each of these matters and the appetite for technical debt in the area depends on the stage of your business and particulars of the software product. It is a mistake to over engineer early on, and AI can be a massive help to get your company off the ground, iterate, and hopefully get those first customers. The first entry in the Vibe coding list, ‘You’re building and rapidly iterating on a prototype to show to customers for feedback to validate an idea’ is essentially the first stages of a startup. Teams would be crazy not to leverage that and the line between ‘vibe’ and ‘responsible’ might thin; but you as the technical leader need to understand where to draw the line and define ‘responsibly’ for those first iterations and it always should involve looking at the code.
Now contrast this scenario to a mature, large SaaS company with a big customer list, mature codebase, and huge transactional volume. A screw up in any of the listed categories could cost millions/billions of dollars, compliance and legal problems, data loss, etc. I’d be extremely cautious on where to trust AI code in this scenario, and put a lot more emphasis on the review and human side of things. It's an easy sell to your non technical leadership counterparts when you put things in terms of $.
Another observation is that all the things in the list that AI is bad at or untrustworthy are common parts of a software developer’s growth path; expectation to be good at them increases as they move up the levels. Therefore, and this is no surprise, AI is best wielded by experienced, competent developers and the role of the technical leader to level up their team becomes more important than ever. Inexperienced developers using AI without oversight is an antipattern to be avoided.
To summarize:
Thanks for reading! Please share thoughts in the comments.
It seems to me that people spending time arguing about this are spending less time actually building stuff - regardless of methodology. The right approach for “you” is the one that best helps you meet your objectives. Isn’t that always the right answer, for everything? 🤷♂️
CTO at Intlabs
3d100% agree Peter. I don’t understand peoples hate towards using these tools to rapidly prototype. When used appropriately I think they can be really enabling for product owners and cut down on spike time. For me, the part of the conversation that we miss is that as the developers and owners of the products we build, we are still totally responsible for the security, performance and maintenance risk of the code we ship, regardless of what tools we use to develop it.
VP of Engineering and Product @ ChowNow | Leading Product Development | CTO & Co-Founder @ Cuboh | Acquired by ChowNow
3dGreat thoughts Pete! I love that call out towards technical leadership. Completely agree that it is unchanged at it's core.
Web Developer with strong leadership skills and extensive agency experience
4dThis is very insightful, thanks for sharing!