How to do the vibe coding the right way
Why people with better soft skills are excelling in coding with AI-assistants
Hey, Prasad here 👋 I'm the voice behind the weekly newsletter "Big Tech Careers."
In this week's article, I share why communicating with AI coding assistants has become an essential skill to learn.
If you like the article, click the ❤️ icon. That helps me know you enjoy reading my content.
Last week, I spent four intensive days with a global customer working on an Experience Based Accelerator (EBA) focused on AI-assisted development. What I witnessed during those four days fundamentally changed how I think about who's succeeding with AI coding tools.
EBAs are intensive workshops where we collaborate directly with customers on their actual challenges.
Customer has a behemoth codebase: a monolithic Windows Forms application with over 1 million lines of code, built 20 years ago with hundreds of forms. Only a couple of people truly understood the codebase, there were no automated tests, and manual testing took three months end-to-end. The customer needed immediate results while planning long-term modernization.
The first two days of the EBA were brutal. The complexity was overwhelming, and our AI-assisted approaches were falling flat. Then something clicked on day three, and the breakthrough we achieved in the final two days was real progress in terms of productivity gain.
Here's what I learned: it's not the most technically skilled developers who are thriving with AI assistants – it's those with the best communication skills.
The Real-World Breakthrough: From 2 Weeks to One Afternoon
During our EBA, we needed to add a bulk approve feature to one of the customer's hundreds of forms. A junior developer had estimated this would take two weeks – understandable given the complexity and their unfamiliarity with the legacy codebase.
We wanted to see how much we can accelerate adding new features using AI assistants.
Here's what actually happened:
Days 1-2: Frustrating trial and error with Amazon Q Developer
Day 3: The breakthrough moment when we changed our approach
Day 4: Two focused prompts, one afternoon, feature complete
The difference wasn't technical expertise – it was learning how to communicate effectively with AI.
What We Got Wrong Initially: The Vibe Coding Trap
Like many developers, we started with what I call "vibe coding" with AI – throwing code at the assistant with generic prompts and hoping for the best. This approach fails because:
We Dumped Everything at Once
Gave Amazon Q the full codebase with vague instructions
Expected it to magically understand 20 years of legacy patterns
Treated AI like a search engine instead of a collaborative partner
We Asked the Wrong Questions
"Can you add this feature?" (too broad)
"Fix this code" (no context)
"Make this work" (unclear expectations)
We Didn't Build Context
Jumped straight to implementation requests
Ignored the need to establish understanding first
Assumed AI could read our minds about business logic
How to Do Vibe Coding the Right Way
The breakthrough came when we realized that successful AI collaboration isn't about perfect specifications – it's about effective communication. Here's the framework that transformed our results:
Step 1: Treat AI Like a New Team Member
Just like onboarding a junior developer, you need to help AI understand your system before asking it to make changes.
Start with Analysis, Not Implementation:
"Analyze this codebase and identify the main architectural patterns"
"What are the key components in this approval workflow?"
"How does data flow through this application?"
Step 2: Ask Before You Tell
Before requesting any code changes, ask AI to think through the problem with you.
The Magic Question: "Based on your analysis, what changes would be needed and in which files to implement [feature]?"
This single question transformed our productivity. Instead of AI making changes in wrong files, it would map out the implementation plan first.
Step 3: Provide Context Through Examples
Point AI to existing patterns instead of explaining from scratch.
Instead of: "Create a bulk approval system" Try: "Looking at the single approval method in ApprovalForm.cs, how would you extend this pattern to handle bulk approvals?"
Step 4: Progressive Refinement
Build understanding incrementally rather than expecting perfect results immediately.
Start with high-level architecture questions
Drill down into specific implementation details
Refine based on AI's responses and suggestions
The Communication Skills That Make the Difference
During our EBA, I noticed that team members with strong soft skills adapted to AI-assisted development much faster. Here's why:
Clear Articulation
They naturally break down complex problems into understandable components. When talking to AI, they provide context, explain constraints, and articulate the "why" behind requirements.
Active Listening (Reading)
They pay attention to AI responses, catching when the assistant misunderstands something and providing clarification rather than just regenerating responses.
Collaborative Mindset
They treat AI as a thinking partner, asking follow-up questions and building on AI suggestions rather than just consuming generated code.
Teaching Ability
They're comfortable explaining concepts and providing examples, which translates directly to better AI prompting.
Practical Tips for Immediate Improvement
Start Every AI Session with Discovery
Upload relevant code and ask for analysis first
Request identification of patterns and conventions
Build shared understanding before implementation
Use the "Junior Developer" Mental Model
Ask yourself: "How would I explain this to a smart but inexperienced developer?" Then prompt AI the same way.
Create a Prompt Playbook
Keep track of effective prompts for your domain:
Analysis prompts for understanding codebases
Implementation prompts for common patterns
Debugging prompts for troubleshooting
Invest in Context Building
Spend time helping AI understand your system's architecture, business rules, and conventions. This upfront investment pays dividends throughout the project.
A Message for Junior Developers: Your Fast Track to Senior Impact
One of the most exciting discoveries from our EBA was how AI assistants can accelerate junior developer growth:
Phase 1: Learn Faster Use AI to understand complex codebases, architectural patterns, and best practices. What used to take months can now happen in days.
Phase 2: Flip the Script Once you understand the system, treat AI as your implementation assistant. Give it clear instructions and let it handle the repetitive coding while you focus on architecture and business logic.
This approach transforms the traditional learning curve and can help junior developers contribute meaningfully to complex projects much faster.
Beyond Vibe Coding: What's Next?
While mastering AI-assisted vibe coding can dramatically improve your productivity, there's an even more structured approach emerging. As developers become more sophisticated in their AI collaboration, we're seeing the rise of specification-driven development – a methodology where detailed specs become the foundation for AI-assisted implementation.
But that's a topic (Vibe Coding vs Spec-Driven Development) for another day (one of the upcoming newsletter articles). For now, focus on becoming a better communicator with AI, and you'll see immediate improvements in your coding productivity.
The Bottom Line
My four days with that global customer's million-line legacy system taught me something profound: the future belongs to developers who can communicate effectively with AI assistants.
Technical skills matter, but communication skills are the multiplier. The developers who are excelling aren't necessarily writing better code themselves – they're getting AI assistants to write better code through superior collaboration.
The ability to clearly articulate problems, ask the right questions, provide meaningful context, and build progressive understanding isn't just a nice-to-have anymore – it's becoming the core skill that separates highly productive developers from the rest.
Start treating your AI assistant like a collaborative team member rather than a code generator, and watch your productivity soar.
What has been your experience working with AI coding assistants? I'd love to hear about your breakthrough moments in the comments below.