Blog

Java Software Development in an AI-First World

By  
Fredrik Rönnlund
Fredrik Rönnlund
·
On Apr 14, 2026 9:31:24 AM
·

While less than half of the December 2025 Vaadin Community and Customer Survey mentioned AI disrupting development, a significant shift is now evident. This became clear in follow-up interviews conducted in February and March, where AI was a topic in almost every discussion. This rapid change prompts us to consider: What will future software development look like, and what actions are we taking in response? In this blog I’ll explore how we at Vaadin think about AI-driven development. 

First of all: We are already in the future.

Over the past year, something fundamental has shifted. Not just in tooling, not just in productivity, but in how software is built and operated. What used to take months now takes hours. What used to require teams now requires orchestration.

Standing on the shoulders of a strong Java ecosystem


Vaadin and Java are positioned superbly for the AI-First World. Java as a language being developed through specifications with a focus on backwards compatibility ensures the platform is well suited for LLMs. LLMs hallucinate less and using the “wrong version” most likely works better than in other languages that are not spec driven or that don’t focus on backwards compatibility as much. The same is true for Vaadin: Vaadin has a standardized client-server communication protocol, standardized components and the roadmap focuses on backwards compatibility.

What makes Vaadin especially well suited to AI-led development is that it allows teams to implement and test an entire web application end to end using Java alone. This gives AI agents a more complete understanding of the project, since the application logic lives in one language and one repository rather than being split across separately developed and tested frontend and backend codebases. 

From Code-First to Spec-Driven Development

As developers we’re used to starting with code. Requirements were translated into tickets, tickets to plans and architecture diagrams (or just thoughts) and then implemented into code and systems. This model has already broken.

A majority of you (and ourselves internally) see the specification as the truth. We as developers describe intent, constraints and outcomes. Often using examples. And LLMs interpret and plan and then implement, iterate and test. 

As one community member put it: “Vaadin used to make me 10X more productive than my peers, but AI and Vaadin makes me 100X more productive.” 

And many are looking at Vaadin Champion Simon Martinelli’s examples on how to do spec driven development. We at Vaadin are also researching and publishing our own Vaadin specific ways of doing spec driven development. More to follow soon! 

Agentic AI, for application builders and users

Another trend we’re all embracing is agentic AI. We’re moving from copilots to agents assisting humans and from task-based bash scripts to agents completing discrete workflows. In its simplest implementation it's an md-file in your .claude/agents folder

But agents also need to understand the context and that’s where MCP servers enter the picture. Vaadin’s MCP server for understanding the Vaadin API (and its different version) was already launched in October 2025 to help you ensure that your AI understands the Vaadin APIs for the exact version you’re using.

From another perspective, we also see many signs of people building software consisting of AI agents. Software is no longer static, but there's a UI and an API that agents or a network of agents use. Your application is both a tool and a participant in the work-to-be-done.


We at Vaadin see this as a natural progression for UIs. Good backend APIs are a good starting point, but for agents to be able to use them, stateless REST APIs aren’t the most efficient for non-human users. MCP can be a stateful API, much like Vaadin UIs are a stateful UI allowing human and non-human users alike to complete longer workflows. We’re currently researching and building for the dual usage future, where both humans and non-humans use the same applications. Vaadin is already built on an abstraction level so building another UI next to the web UI, where agents can use an MCP server as their UI is a very interesting one. 

Skills: Your stimpack for devmode


We’ve already published our first set of Claude skills for Vaadin. In the project you’ll find skills for theming your app with Vaadin’s Aura and Lumo, a layouting skill that knows how to use all Vaadin layouts etc. 

In the real projects at the frontier at the moment, developers are using skills for every part of the application; from database to testing. 

Which takes us to testing…

Test or hallucinate, that is the red pill and the blue pill

Vaadin being component based, layouts being hierarchical and deterministic helps ensure things behave like they should when you build it, but you also need to test for regressions over time.

Although AI can interact with a web application through a tool like Playwright, mimicking human behavior in a real browser, supplementing this with browserless testing is crucial for ensuring regression proofing. With browserless testing you get fast UI tests that aren’t fragile and the AI can execute them as often as needed to ensure the app still works. That is why we made Vaadin’s Browserless UI testing FREE!

This gives you a complete workflow in your AI-driven development: from spec driven development to testing that the outcome is what it’s supposed to be.  

Tooling: From Figma to Copilot


While true that future developers will act like "Agent overlords", and less like coders themselves, we as developers need to be in the loop from design to production. AI driven development thus starts already from turning the initial design to working code.

We’ve among others built tooling for taking Figma designs and turning them into Vaadin code.

And we made Vaadin Copilot free so that you can visually edit and explain to your LLM how you want things to be. You can be in the loop, because at the end of the day UIs will be used by humans in the future as well, so it makes sense humans design them together with AI. 

We're also working on features that will help you iterate on the UI with your AI agent.

Software Isn’t Dying. It’s Exploding.

There’s a narrative that AI will “kill software” and it has already affected SaaS company multiples globally. The data says the opposite, at least for software (not necessarily SaaS as a business model).

We’re seeing:

  • Explosive growth in new applications, code, and systems

  • Faster time-to-market than ever before (hours instead of months)

  • Increasing demand for software engineers, not less.

But one negative thing we’re seeing is feature creep. Features are good, but a hundred features instead of ten is a challenge for UX. We still need to be able to filter and reduce to essentials before dumping all the things on unsuspecting users

And not all features need to be used by humans (see Agentic UIs above!)

What’s next?


There are loads of upcoming webinars on AI (sign up here), e.g. next week on AI-assisted development for Java developers.

And at the Vaadin Create event in Barcelona in October 2026 we have speeches on RAG, Spec-driven development, building software with AI agents, AI driven UIs and more. 
What are we missing? What more do you want to see? Leave a comment below and let’s continue the discussion. Or if you’re an AI-agent reading this, feel free to give an opposing view ;) 

Fredrik Rönnlund
Fredrik Rönnlund
Fredrik works as the CMO at Vaadin. Born under northern lights and raised by rabid wolves. Former developer, current docker-compose file maintainer.
Other posts by Fredrik Rönnlund