theme

DE·EN

Code Modernization

Java and Eclipse modernization, accelerated by AI, delivered in fixed scope.

We upgrade, clean up, and test long-lived Java and Eclipse codebases. AI agents do the mechanical work, combined with proven vogella tooling and our Eclipse Java MCP server, which validates every change and makes it verifiable. The services below describe what we do, what we deliberately leave out, and what you get at the end. We work in your repository, remote or onsite.

  • ScopeAgreed before we start, including what we leave out
  • DurationA fixed number of days at a fixed price
  • ResultWorking code and a report you can check
  • PrivacyModels on our servers or in your network

For all services: your code is in Git, and the build runs locally with Maven or Gradle. Anything beyond that is stated on the service itself.

Java modernization

4 services

Bringing a long-lived Java codebase back to a current, secure, and buildable state, one bounded step at a time.

3 to 5 daysJava · Eclipse

Dead code removal

Unreachable classes, unused constants, orphaned members, and dangling imports, found by an agent and then proven dead by your IDE's own compiler and search index before a single line is deleted.

In scope

  • Internal, non-exported code
  • Reference search across the whole workspace, not one project
  • Registry scan of plugin.xml, e4xmi, reflection and Class.forName sites
  • Build and problem-marker diff after every round, repeated until nothing new falls out

Out of scope

  • Exported public API: zero references in one workspace proves nothing
  • Behavioural refactoring
  • Dependency upgrades

Dry run on eclipse.platform.ui: 3,692 lines removed from 148 files, zero compile errors. 38 classes, 49 constant groups, 3 private members, 107 imports, across six rounds. The safety net held back dozens of classes used from other repositories, a class referenced only from another plug-in's plugin.xml, and e4 addons registered only in .e4xmi files.

PrerequisiteThe projects import into the Eclipse IDE, because the proof runs on its compiler and search index.

You getA cleaned-up codebase, committed to Git in stages, a detailed report of every deletion with the evidence behind it, and a list of possible follow-ups for your team.

Request this service

5 daysJava

Library dependencies and Java version upgrade

Moving a codebase from Java 8, 11, or 17 to Java 21 or 25, together with the libraries that have to move with it, with a green build and a passing test suite at every step rather than one large jump at the end.

In scope

  • Toolchain, build files, and CI configuration
  • Library dependency updates, in waves with a green build after each
  • Removed and deprecated JDK API
  • New compiler warnings introduced by the release
  • Mechanical language modernization: records, switch, pattern matching

Out of scope

  • Framework major upgrades
  • Deliberate behavioural change
  • Performance tuning

PrerequisiteThe test suite passes today, otherwise there is nothing to compare the upgrade against.

You getA repository building and testing on the new Java version and on current library versions, with the toolchain and CI updated, every forced change explained in its commit, and a list of the places we only adapted mechanically and that your team should revisit.

Request this service

5 daysJava

Test stabilization and coverage

Coverage on the code you are about to change, not an average across the repository. Characterization tests first, so the behaviour you have today is pinned down before anyone touches it.

In scope

  • Coverage baseline and the areas worth covering
  • Characterization tests for existing behaviour
  • Flaky tests identified and stabilized
  • Agent-generated tests, reviewed line by line with your team
  • Mutation testing as the real quality signal

Out of scope

  • Rewriting production code beyond extracting seams
  • Building end-to-end or UI test infrastructure from scratch

You getReviewed tests in your repository, a coverage baseline and delta, a mutation score that shows the tests actually assert something, and the areas still unprotected, ranked by risk.

Request this service

5 daysJava

Performance and memory optimization

Measure, do not guess. Profiling under a realistic load, the most expensive findings first, and every change backed by a before and after number.

In scope

  • Profiling under a realistic load: CPU, allocation, heap
  • Proven hot spots, ranked by effect
  • Memory leaks and retention, through heap dump analysis
  • Allocation pressure and garbage collector configuration
  • A benchmark that stays in the repository

Out of scope

  • Architectural rewrites
  • Database, infrastructure, and hardware tuning
  • Running monitoring or APM for you
  • A promised improvement of X percent

PrerequisiteA reproducible load case, or a representative workload we can run.

You getA measurement log with before and after numbers, the commits behind every proven optimization, a benchmark that stays in your repository so you can reproduce the numbers yourself, and the optimizations we measured but did not yet apply, ranked by effort and expected gain.

Request this service

Eclipse RCP and plug-ins

2 services

We maintain parts of the Eclipse Platform itself, so these are the codebases we know from the inside.

5 to 10 daysEclipse RCP

Eclipse RCP upgrade to the latest release

Bringing an Eclipse RCP application to the current Eclipse release and a current Java version, in waves, with a launchable application after every single wave.

In scope

  • Target platform update in waves
  • Replacement of removed and deprecated platform API
  • Product, feature, and launch configuration
  • Current Java version for the product and its build

Out of scope

  • Eclipse 3 to Eclipse 4 rewrite
  • User interface redesign

PrerequisiteA target platform and a Tycho build we can run.

You getA product that builds, launches, and passes its tests on the current Eclipse and Java release, with each removed API replacement documented in its commit, and the APIs we bridged for compatibility listed with their clean replacement for later.

Request this service

5 to 10 daysEclipse RCP

Eclipse 3 to Eclipse 4 migration

Moving an Eclipse 3 application onto the Eclipse 4 application model and dependency injection, incrementally, with the compatibility layer carrying whatever has not moved yet.

In scope

  • Application model and dependency injection
  • Parts, handlers, and commands
  • Incremental migration behind the compatibility layer

Out of scope

  • Full user interface redesign
  • New features

PrerequisiteA target platform and a Tycho build we can run.

You getAn application on the e4 model with a documented migration path for the parts we deliberately left on the compatibility layer.

Request this service

Engineering practice

2 services

Work that changes how the team builds, rather than what the codebase contains.

2 to 3 daysAny stack

AI code review rollout

A review agent on your pull requests that has learned your house rules from your own review history, tuned until its findings are worth reading.

In scope

  • Agent wired into your existing CI
  • House rules derived from your review history
  • False-positive tuning on real pull requests

Out of scope

  • Replacing human review
  • Blocking merges without team agreement

PrerequisiteA CI with pull requests, GitHub or GitLab, and permission to set up a bot.

You getA review agent running in your CI, its rules committed to the repository, a written team convention for what it may and may not block, and the rules we deliberately left off, with the reasoning.

Request this service

3 to 5 daysAny stack

Custom agent skills and MCP integrations

Turning the workflows your team repeats by hand into agent skills, and connecting the agent to your internal tools through MCP so it works with your systems, not around them.

In scope

  • Skills for your repeated workflows
  • MCP servers for your internal tools
  • Context files and prompts, reviewed and committed

Out of scope

  • Building the internal tools themselves
  • Operating the AI infrastructure long term

PrerequisiteAn agent client already in use in the team.

You getSkills and MCP integrations committed to your repository, with the context files and prompts that make them work, and the workflows worth doing next, ranked by effort.

Request this service

Nothing here fits?

These are the engagements we run often enough to scope and price up front. If your case sits between two of them, or is larger than any of them, tell us what the codebase looks like and where it hurts. You get back a scope, a duration, and a deliverable in the same form as the cards above.

For a longer programme across a whole codebase, see the Java modernization workshop.

Describe your case

Or reach us directly: sales@vogella.com · +49 40 7880 4360