DEV Community

Cover image for I built my complete side-project in a day using Claude Code and MCP, now you know why they don't hire jr devs anymore
Rohith Singh Subscriber for Composio

Posted on • Originally published at composio.dev

I built my complete side-project in a day using Claude Code and MCP, now you know why they don't hire jr devs anymore

I've been vibe coding since almost before Karpathy named it vibe coding, but yeah, I don't wish to, yet that's how things work these days. You can promptly ship a product in a single day. With the progress of MCP Servers, things have been getting better and better. I do almost all of my work with MCPs and Claude Code. Not because I'm lazy (or as some people would say, "skill issues"), but because I can do 10x more work in a single day. Just by reviewing the code and making changes.

Clever Code

This post was inspired by Gareth Dwyer's blog, where he mentioned using Claude Code for almost everything he does, such as shipping products and building websites. Let's discuss my experience with the same. I did, and it blew my mind.

TL;DR

I built a complete MVP for an invoice management platform in one day using Claude Code and MCPs. What normally takes weeks of jumping between tools, Claude Code handled automatically from database setup to email testing. MCPs connected everything I needed without leaving my terminal. It was great.

The entire build flow cost me around $3.65 (Sonnet 4: $3.63 + Haiku: $0.02), that’s almost around 5.8M tokens processed, and some manual configurations for less than the price of a latte.

The build is open sourced and can be found here: https://github.com/rohittcodes/linea. You’re free to contribute as well (it’s still in early development).

Anthropic Pricing

Intro

I've been using Claude Code for months, but I was sceptical. Could it replace my usual development workflow? Meaning, I'm accustomed to switching between VS Code, GitHub, Figma, my database dashboard, Slack, and email. You know the drill.

Then, MCPs (Model Context Protocols) came. Think of them as bridges that let Claude Code communicate directly with all your tools, without having to hop between apps.

I happen to use Rube, a universal MCP server from Composio. It’s a bit of a shameless plug, but we kinda made it for this purpose. A single MCP server with only seven tools that can communicate with any app on demand without the OAuth fuss.

Rube Marketplace

Deciding on the build

So I decided to put this to the test. Instead of building another to-do app, I wanted to create something I'd use, like an invoice management platform for freelancers.

Here's the thing: I've built similar apps before. Usually takes me 2–3 weeks of solid work. Setup, authentication, UI components, PDF generation, email integration... It’s a lot of moving parts.

With Claude Code and MCPs? I decided to give myself one day and see what happens.

The Setup (and the actual build)

I started with a simple prompt to Claude Code. Nothing fancy:

Build me an invoice management app. Next.js, Postgres(Neon), Prisma, authentication with Next-Auth/Auth.js, PDF generation, email sending. Make it look professional.
Enter fullscreen mode Exit fullscreen mode

That's it. No detailed specs, no wireframes, no technical architecture documents. Just a simple request.

Setting Up Rube MCP With Claude Code

Rube is a universal MCP server that you can use to call a list of toolkits for your AI Agents. You can have toolkits like GitHub, Figma, Linear, and many more using just Rube. However, the more MCP servers you add to your AI workflows, the smaller the context window becomes, which exacerbates the issue for complex workflows. At that point, you can use Rube. Setting up Rube is just child’s play.

Rube Integration

  • Copy the installation command and run it in your terminal (make sure Claude Code is already installed)
  • And done! You can just run Claude and ask the Rube MCP to do things for you. Run the /mcp command to make sure you are connected to the MCP server. If not, click on the server and authenticate yourself with Rube using the generated link.

How It Went Down

Claude Code immediately started working. The first thing I did was authorise Rube MCP and connect the GitHub toolkit. I asked it to create a new repository and open a PR, and it just worked.

I connected the Figma toolkit and asked it to analyse some designs I had lying around (I just mentioned I wanted it to "look professional"), and it extracted a complete design system. Colours, fonts, spacing-everything perfectly organised into CSS variables.

You can compare the Figma design for the templates here: https://www.figma.com/community/file/1265787783615420446/invoice-design-kit-brix-agency

Dashboard

The best thing about the Figma MCP was that it started with a detailed analysis and plan, then it began building the components, followed by pages... (blah, blah), and it was completed.

Claude Code - Figma

Meanwhile, it spun up a Postgres database using Neon MCP. No manual configuration required, eliminating the need to copy and paste connection strings. Just done.

I'm sitting here drinking my coffee, watching Claude Code work like a junior developer on steroids who works 24/7 for me and never gets tired.

The Real Magic

By lunch, I had a working authentication system. Email magic links, session management, the whole thing. I didn't write a single line of auth code myself.

Then came the fun part, building the actual invoice features. I asked it to research what users want in invoice tools, and it used a web search tool to gather feedback about pain points in existing solutions.

The crazy part? Most things just worked. Although some Tailwind configuration issues required manual fixes, the overall experience was significantly smoother than I expected.

It worked?

I had something that looked like a good product (I won't say the perfect/real product, you still gotta make some manual changes):

  • Clean dashboard with analytics
  • Client management system
  • Invoicing with multiple templates
  • PDF generation that looked good
  • Email sending that worked on the first try

Templates grid

Template View

I kept waiting for something to break—some edge cases to surface. The usual development pain points kick in. Fortunately, it was fine for the most part.

The Cost Factor to decide

Alright, let’s talk money, because building fast is great, but if it burns a hole in my pocket, that’s not sustainable.

Yesterday’s entire build session cost me $3.65. That’s it.

  • Claude Sonnet 4: $3.63 (did all the heavy lifting)
  • Claude Haiku 3.5: $0.02 (handled the quick, lightweight stuff)

To put it in perspective: I pushed around 5.8 million tokens through Claude in a single day. That’s database setup, repository creation, design parsing from Figma, authentication scaffolding, PDF generation, and even wiring email, all done for under four bucks.

Honestly, that’s great. If I compare it to the old-school workflow, spinning up infra, wrangling boilerplate, burning hours in dashboards, that’s not just cheaper, it’s ridiculously more efficient. For less than the price of a Starbucks latte, I shipped an MVP.

You would’ve to shell out a few thousand dollars for this easily. Considering that this is nothing.

Anthropic Usage

So yeah, the numbers make the story even better: this isn’t some expensive gimmick, it’s a genuinely cost-effective dev workflow.

About the product

A pretty solid invoice management platform, with features like (MVP features):

  • User authentication (magic links)
  • Client management with contact details
  • A couple of invoice templates
  • PDF generation
  • Email sending
  • Basic dashboard
  • Revenue tracking

Profile Settings

The tech stack? Next.js 14, PostgreSQL, Prisma, NextAuth.js, Tailwind CSS. Pretty standard stuff.

But here's the thing that surprised me: I didn't have to think about most of the setup. The database schemas were created by Claude Code (I just provided a prompt, and it did the rest). API endpoints? Done. Email configuration? I had to intervene a bit, but it was still way faster than manual setup.

But Wait, Am I Just Getting Lazy?

Look, I get it. There's this voice in my head too saying to me, "you're not really coding anymore" or "you're losing your skills. "Here's the thing. However, I'm not outsourcing the thinking. I'm still making the architectural decisions, reviewing code, and debugging when things get tricky.

Boring

Claude Code handles the repetitive stuff—the boilerplate. The "create another CRUD endpoint" tasks that we all do, but nobody enjoys.

When things get complex—such as security, data modelling, and performance optimisation—I still dive in and code it myself. But for everything else? Why waste time when I could be shipping?

What This Means for Us Developers

Honestly? This is where development is heading. Not replacing developers-we're still needed for the thinking, the architecture, the complex problem-solving.

But the grunt work? The setup, configuration, and deployment pipeline stuff? Claude Code and MCPs can handle that pretty well, and faster than manual setup. It's like having a skilled junior developer who is well-versed in the frameworks.

What's Next for the product

I will continue to build upon this workflow. The invoice platform I made is solid. I might clean it up and release it properly. I'm also going to build a few more products with this workflow.

Here’s a demo of how the interactions look like in the development stage. There are few more features stacked up, will be releasing when everything fits the vibe.

Final Thoughts

I'm not saying Claude Code and MCPs will replace traditional development overnight. There are still plenty of cases where you need to get your hands dirty with code. But for shipping products fast? For getting ideas from concept to reality in hours instead of weeks? This workflow is pretty useful.

The invoice platform I built in one day would have taken me at least 2–3 weeks the old way. And that's with me being pretty experienced with the tech stack. And don’t forget to drop a star here: https://github.com/rohittcodes/linea.

Top comments (10)

Collapse
 
rohan_sharma profile image
Rohan Sharma

Am I in danger?

Collapse
 
iliketocodesometimes profile image
Sean Wheeler

Kind of, if you want to stay ahead I'd recommend getting really good with AI development.

AI is definitely changing jobs at the very least, junior developers will become junior orchestrators who orchestrate development with their AI coding counterparts.

Collapse
 
rohan_sharma profile image
Rohan Sharma

I agree, totally!

Collapse
 
robert_scott_339c35174a4d profile image
Robert Scott

Ive been learning a ton using different chatbots. They are great aids even using the free versions. I agree with you in the area that we wont be replaced. They are good but they lack what humans have in abundance. Thats drive and ambition. We build and adapt They just do what's asked.

Collapse
 
anik_sikder_313 profile image
Anik Sikder

This is the kind of build story that makes you rethink what 'shipping fast' actually means. The Claude + MCP combo feels like the new full-stack not just code, but orchestration. Loved the part about skipping wireframes and specs; sometimes the best architecture is emergent. Curious how you handled edge cases like PDF formatting or email deliverability

Collapse
 
ingosteinke profile image
Ingo Steinke, web developer • Edited

I remember "shipping fast" in times before AI when marketing insisted on shipping MVPs, another word for buggy pre-beta versions making half of the potential customers look once and never return. After that, the 80/20 effect kicked in, meaning the last 20% of tasks takes about 80% of the total time, and that's just features, not counting in edge cases, errors, individual customer requests and maintaining a complex software stack over time. Growing complexity, incompatibilities, deprecations, tech debt etc. And you didn't mention corporate design to follow, which is another issue that can take a lot of time spent in meetings in my past experience.

Success stories like this post used to make me suspicious like why would AI work so well for them when it fails so badly 90% at all of my attempts. I know I'm not "too stupid to prompt", but MCP orchestration is the thing. Don't ask ChatGPT, Cursor or Windsurf, but set up a system and define clear requirements. And that's the point. If customers in the real world knew what they wanted and there was always only one stakeholder who never changed their mind, maybe AI could really take web developers' jobs eventually.

Collapse
 
iliketocodesometimes profile image
Sean Wheeler

If you think that's a cool example, you should check out this article:
dev.to/utabadevmonkey/how-i-solved-ais-inconsistent-code-problem-37he

It's MCP tool that eliminates AI amnesia, effectively ByterRover but for development.

Collapse
 
xwero profile image
david duymelinck • Edited

The biggest problem I have by saying junior developers are not needed, implies all the theories are already figured out and there can't be any more progress.

We all started with no knowledge, and we learned along the way it took us to get here. You don't become an experienced user by only learning the theory, you also need to see it working. And that is where the theory can fall flat.

We are not the smartest generation that ever lived. We just have a lot of available knowledge. But you still need to find the correct knowledge to use in a particular situation. This can't be learned overnight or by orchestration.

A post like this is for me more an ego statement. Look at me I can work faster so i don't need nobody. The downside is the developer blindness can not be addressed because all the tools you use are bend to your own perspective. Even a junior can address developer blindness.

I'm well aware this is a promotional post, and what they forgot to mention is that the MCP they are using is costing 29 or 229 dollars per month. That means the 4 dollars does not show the total cost.
You could argue it is still cheaper, but why hide that cost in the first place? For me this is the first red flag about the product.

Collapse
 
anwagnerdreas profile image
Andreas Wagner

I understood pretty much everyone agreed that with vibe coding, development efforts have shifted more than they have been eliminated. Thus, I wish you said a bit more about the testing and validation work you did. Or is it only coming later, when "building upon this workflow"?

Nitpicking: You say that when "things get complex—such as security, data modelling, and performance optimisation—I still dive in and code it myself." And at the same time that "I didn't write a single line of auth code myself." Which gives?

Speaking more generally, I am a bit worried about this way of reporting about the app development process which I am seeing frequently these days.

Some comments may only be visible to logged-in visitors. Sign in to view all comments.