Створюємо продукт на Java з нуля у Windsurf. Три тижні замість трьох місяців
На DOU вже є статті про автоматизоване написання коду, наприклад:
- Як Cursor AI замінив мені Visual Studio Code та IntelliJ IDEA
- Як я з Claude та ~0.001% свого коду створив TS/NextJS/React/Mongo вебпроєкт
Але всі вони про недостатньо масштабне використання AI-агентів, та й самі агенти там інші. Також ще ніхто не ділився тут досвідом використання Windsurf, особливо для Java. І, мабуть, є ті, хто не знає, що IntelliJ IDEA повноцінно підтримує його у вигляді плагіна. Це докорінно змінило моє ставлення до Windsurf, адже їхня оригінальна IDE на базі Visual Studio мені, м’яко кажучи, не зайшла для нормального Java-проєкту рівня Enterprise.

Початок
На старті в мене була лише ідея проєкту: для кого він буде створений і що вмітиме робити. Почав я з проєктування інтерфейсу. У цьому мені допомогла Figma зі своєю функцією генерації сторінок за допомогою ШІ-агента на основі запиту (надалі такі запити до ШІ-агентів я називатиму промптами), де я описав, як має виглядати сторінка та які блоки на ній будуть.
Для першого промпта я склав детальний опис функціоналу проєкту. Потім попросив Windsurf порекомендувати сучасний технологічний стек на Java для мого проєкту, передавши йому опис.
У результаті він підібрав досить доречні технології: Java 17, Spring (Boot, JPA, MVC, Security), Lombok, Thymeleaf, FlywayDB, PostgreSQL, Maven, і створив заготовку під проєкт з усіма Maven-залежностями та директоріями.
Варто згадати, що у Windsurf є два режими: Inline (коли він пише код лише в одному файлі) і Cascade — основний для нас, саме його я й використовував.
Зображення інтерфейсу з Figma я завантажив у Windsurf і попросив зверстати. Для початку, оскільки я не був упевнений, як він працює з відносно новими технологіями, попросив зробити це на старенькому Bootstrap.
Результат мене влаштував, і я почав просити його писати функціонал: реалізувати авторизацію та реєстрацію з версткою, Java-кодом і SQL-скриптами. Далі поступово додавав фічі — практично нон-стоп, одна за одною. Він підключав різні API, причому добре знав їх для величезної кількості популярних сервісів.
Варто відзначити, що ШІ-агент дуже грамотно і зручно коментує все, що думає про завдання та як збирається його виконувати. І найкорисніше — наприкінці роботи він видає детальний звіт: де і що змінив, чому тепер це працює, і моє улюблене — рекомендації з покращення. Причому вони можуть стосуватися як коду, так і функціоналу продукту.
І далі почалося те, про що, мабуть, мріють багато розробників. Ти ставиш завдання — а за тебе їх повністю виконує інший. Ти робиш код-рев’ю, приймаєш чи відхиляєш, і рухаєшся далі.
Рівень розуміння агента дуже високий. Для прикладу: це ніби жива людина рівня Senior, яка миттєво все схоплює, досконало знає увесь стек технологій, стикалася з усіма існуючими помилками й розуміє, як їх виправляти, завжди пам’ятає, що ти просив і що вже зробив. І я вже мовчу про архітектурні навички побудови застосунку.
Одразу скажу: щоб у результаті роботи агента виходив якісний робочий код, потрібні кілька речей:
- навчитися з ним спілкуватися — складати промпти та виробити власний стиль комунікації;
- задати rules (правила в налаштуваннях), яких він дотримуватиметься за певних умов;
- ну і, мабуть, самому бути не нижче рівня Middle+.
Важливо завжди дивитися, що він пише й змінює, і в разі чого зупиняти його роботу та відкочувати зміни. Таке трапляється не часто, але коли трапляється — сильно економить час.
Результати
Отже, ітеративно та поступово я вчився працювати з ним. Спочатку давав невеликі завдання й дивився, як він їх виконує. Потім — більш масштабні. Ну а вже за кілька тижнів перейшов до постановки цілих блоків задач в одному промпті.
Не буду наводити приклади власних промптів, залишу це для вас — отримаєте справжнє задоволення, коли спробуєте. Зазначу лише, що він добре розуміє розташування елементів і назви блоків у верстці. Наприклад, я можу попросити його змінити кнопку в лівому сайдбарі та посилання у правому — і він точно розуміє, про що йдеться.
Окремо варто згадати, як ми всього за один день переписали весь фронтенд готового проєкту на Tailwind, DisplayUI, Alpine.js, з якими я взагалі не був знайомий. Я просто попросив його це зробити (кілька промптів), і він коректно переписав приблизно 80% верстки та JS. Решту чомусь пропустив, але я швидко скоригував.
Мені дуже сподобалося, що агент самостійно може локалізувати всі тексти. У результаті проєкт підтримує 8 мов — і цьому немає меж. Також він зверстав цілком непоганий лендинг, вже знаючи все про функціонал сайту.
Виділю й те, що є незначні проблеми з його кодом для мобільних версій сайту. Досить багато часу йде на коректну адаптацію під мобільні браузери.
Що вміє продукт у підсумку:
- Використовуючи OpenAI API, виходить в інтернет і витягує будь-який курс із Coursera.
- Створює наочну навігацію по курсу.
- Веде чат із користувачем як професійний учитель, експерт (знову ж таки використовуючи модель GPT-5).
- Спілкується більш ніж 50 мовами.
- Пам’ятає й знає все про сам курс, релевантно веде учня по матеріалу.
- Зберігає всю історію бесід кожного уроку та вміє повертатися до неї, пам’ятаючи контекст.
- Підтримує підсвічування Markdown і будь-якого коду.
- Приймає оплату за преміум-пакет у криптовалюті.
І так, приємним бонусом я додав з десяток тем сайту — як із темною, так і зі світлою палітрою.
Протестувати й подивитися можна тут — ChatCourseAI.
Що я ще зробив за ці три тижні, окрім коду, використовуючи знання GPT:
- Налаштував AWS EC2 інстанс і розгорнув на ньому Nginx, PostgreSQL та саме застосунок.
- Реалізував деплой і рестарт на EC2 прямо з IDE однією кнопкою.
- Підключив AWS Watch, щоб у браузері бачити всі логи й отримувати сповіщення про помилки.
- Було багато мороки з доменом і SSL-сертифікатами.
- Займався маркетинговими речами: додаванням у пошуковики, Google Analytics, створенням соцмереж, дослідженням конкурентів, Product Hunt.
З технічного планую ще: зробити докеризацію — збирати застосунок у Docker-контейнер і при push у репозиторій запускати GitHub Actions.
Підсумки
Спробувати Windsurf можна безплатно — вам дають 100 токенів. Це приблизно
За три тижні безперервної роботи, працюючи над кодом по
Скріншот з мого акаунту, де видно заповітні 99%:

Улюбленою моделлю стала GPT-5: вона допускала менше помилок у коді, краще розуміла контекст вже написаного коду і точніше вносила правки. Приємно також, що це найекономніша модель з усіх.
Враження такі — це кайф. Сидиш, думаєш як архітектор і продукт-менеджер, ставиш завдання, йдеш курити, повертаєшся і радієш результату.
Фактично код я писав близько двох тижнів, але давайте також врахуємо, що останні кілька років я сам не програмував у повсякденні. Тому на те, щоб все пригадати та вивчити нові бібліотеки, у мене пішов би ще точно місяць.
Мій рівень як розробника можна подивитися в LinkedIn.
Коментуйте: а який у вас досвід із Windsurf або подібними ШІ-агентами? Якщо не пробували — збираєтесь спробувати? Ставте ваші запитання.
P.S. Для тих, хто любить читати англійською — версія на Dev_to.
9 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів