DEV Community

Dmytro Sokolov
Dmytro Sokolov

Posted on

Java product from scratch with Windsurf. 3 weeks instead of 3 months

Intro

On DOU, there are already articles about automated coding, for example:
How Cursor AI replaced Visual Studio Code and IntelliJ IDEA for me
How I, with Claude and ~0.001% of my own code, built a TS/NextJS/React/Mongo web project

But all of them cover rather small-scale uses of AI agents, and they feature different agents. Nobody has yet shared their experience with Windsurf, especially for Java. And probably, some people don't even know that IntelliJ IDEA fully supports it as a plugin.
This completely changed my perception of Windsurf, because their original IDE based on Visual Studio, to put it mildly, didn't work for me when it came to building a proper Enterprise-level Java project.

Windsurf with JetBrains

Getting Started
At the very beginning, I only had an idea of the project - who it was for and what it should be able to do. I started with interface design, and here Figma helped me a lot with its AI-powered page generation feature. With a simple request (from now on I'll call such requests prompts), I described how the page should look and what blocks it should contain.

For the first prompt, I wrote a detailed description of the project's functionality. Then, I asked Windsurf to recommend a modern Java technology stack for my project, providing it with this description.
As a result, it suggested a very solid stack: Java 17, Spring (Boot, JPA, MVC, Security), Lombok, Thymeleaf, FlywayDB, PostgreSQL, Maven - and it even generated a project skeleton with all the Maven dependencies and directories in place.
It's worth mentioning that Windsurf has two modes: Inline, where it only writes code in a single file, and Cascade - the main one I used - which handles multi-file, large-scale changes.

I uploaded the Figma-generated interface design into Windsurf and asked it to create the markup. To test the waters (since I wasn't sure how well it handled more modern libraries), I first asked it to use the older Bootstrap framework. The result was good enough, so I moved on to functional features: implementing authentication and registration, complete with frontend markup, Java code, and SQL scripts. Then I kept adding features one after another, almost non-stop. Windsurf connected various APIs for me, and it turned out to have strong knowledge of a huge number of popular services.
One of the best parts is how the AI agent explains its thought process: what it plans to do and why. At the end of each task, it provides a detailed report - what was changed, why it works now, and my favorite part - recommendations for improvements. These suggestions cover both code quality and product functionality.

And then the real magic began - something many developers probably dream about. You set tasks, and someone else does all the work for you. You do the code review, accept or reject changes, and continue the process again.
The agent's level of understanding is very high. To give you an idea: it feels like working with a Senior-level developer - someone who instantly understands your requirements, masters the entire tech stack, has encountered and solved every possible error, always remembers what you asked for and what has already been done, and even has solid architectural skills when it comes to building applications.
That said, to ensure high-quality, production-ready code, you still need a few things:

  • Learn how to communicate with the agent effectively - craft your prompts and develop your own communication style.
  • Define Rules in its settings, so it follows them under specific conditions.
  • And ideally, have at least a mid-level (middle+) developer background yourself.

It's also important to review everything it writes and changes, and be ready to stop it and roll back if necessary. This didn't happen often, but when it did, it saved me a lot of time.


Results

Step by step, I learned how to work with Windsurf. At first, I gave it small tasks just to see how it handled them. Then I moved on to larger ones. And after a couple of weeks, I was already giving it entire task blocks within a single prompt.
I won't share my actual prompts here - I'll leave that for you to explore yourself (and enjoy the process). But I'll note this: Windsurf has a surprisingly good understanding of UI layout and block names in markup. For example, I could ask it to "replace the button in the left sidebar and change the links in the right one," and it would understand exactly what I meant.
One particularly cool achievement: in just a single day, we rewrote the entire frontend of an existing project using Tailwind, DaisyUI, and Alpine.js - technologies I had zero prior experience with. I simply asked it to do this (with a few prompts), and it successfully rewrote about 80% of the markup and JS code. It skipped some parts for unknown reasons, but I quickly corrected those.
Another highlight: the agent can localize all text automatically. As a result, the project now supports 8 languages, with no real limit to how many more can be added.
It even created a decent landing page, since by that point it already "knew" everything about the site's functionality.
That said, there are some minor issues with its mobile code. Getting layouts to adapt smoothly to mobile browsers still requires quite a bit of manual tweaking.
But in the end, after these three weeks of development, this is the kind of product I was able to build:

ChatCourseAI lending

ChatCourseAI application

What the product can do in the end:

  • Use the OpenAI API to browse the internet and fetch any course from Coursera
  • Generate a clear and visual navigation for the course
  • Chat with the user like a professional teacher or expert (powered by the GPT-5 model)
  • Remember and know everything about the course, guiding the student through the material in a relevant way
  • Store the entire conversation history for each lesson and return to it, always keeping context
  • Support Markdown and code highlighting
  • Accept crypto payments for the premium package

And yes, as a pleasant bonus, I also added about a dozen site themes with both dark and light modes.
You can try it out here - ChatCourseAI.
What else I did during these three weeks (beyond coding, leveraging GPT's knowledge):

  • Set up an AWS EC2 instance and deployed Nginx, PostgreSQL, and the application on it
  • Implemented one-click deploy and restart to EC2 directly from the IDE
  • Integrated AWS CloudWatch to monitor logs in the browser and receive error alerts
  • Dealt with a lot of domain and SSL certificate setup
  • Handled marketing tasks: search engine submissions, Google Analytics, social media setup, competitor research, ProductHunt

What's next (technical plans):
Implement full Dockerization - build the app into a Docker container and trigger GitHub Actions automatically on push to the repository.


Conclusion

You can try Windsurf for free - they give you 100 tokens to start with. That's roughly 50–200 AI requests, depending on the model you use.
Over the course of three weeks of non-stop work (coding 10–15 hours a day), I ended up spending the 100 free tokens plus another 500 paid tokens from a $15 subscription.
Here's a screenshot from my account showing that satisfying 99% usage mark:

Windsurf account

My favorite model turned out to be GPT-5 - it made fewer coding mistakes, understood the context of existing code much better, and applied fixes more precisely. And the best part? It's actually the cheapest model of them all.
The overall impression - it's pure joy. You sit back, think like an architect and product manager, set the tasks, go for a smoke, then come back and enjoy the results.
In fact, I was actively coding for about two weeks. But let's be fair: since I hadn't been programming as a daily activity for several years, it would have easily taken me an extra month just to recall everything and learn the new libraries on my own.
If you're curious about my background as a developer, you can check my LinkedIn.

Share in the comments: what's your experience with Windsurf or similar AI agents?
If you haven't tried them yet - are you planning to?

Top comments (0)