Gabriel Voicu

Software Engineer since before AI. AI-Native Now.

Writing

Guides

  1. Rust for Java Developers

    A field guide to Rust for Java developers: cargo and Maven, ownership without a garbage collector, axum and Spring Boot, sqlx and JDBC, and a worked service. Every idea is mapped to something you already know from Java.

  2. , updated

    Becoming an AI Native Company

    How an engineering team goes from using AI on the side to building with agents: session context, specs, a shared knowledge base and cross-model review.

Building with AI agents

2026. Specs, shared knowledge and review for coding agents.

  1. One AI opinion isn't enough

    History. How ConsensFlow began in July 2026 as a Claude Code plugin and Pi extension for second AI opinions. It is now a desktop app; this article is kept as history.

  2. AI Coding Specs Should Be HTML — Karpathy and Anthropic Agree

    Karpathy and Anthropic converged on HTML for AI output. Specmint applies it to coding specs: rendered plans with Mermaid diagrams, diffs, and mockups.

  3. The SME your team never had

    Kluris is an open-source CLI that turns a folder of markdown into a git-backed knowledge base your AI agents actually read — one shared brain across nine coding agents.

  4. Specmint: Persistent AI Coding Specs That Survive Across Sessions and Tools

    Specmint replaces ephemeral AI coding plans with persistent specs in .specs/, working across Claude Code, Cursor, Windsurf, Cline, Codex, and Gemini CLI.

Java and Spring archive

2019 to 2021. Kept as I wrote them, with their original dates.

  1. Log4J, the monster from your yard

    The CISA Director calls the Log4J flaw (Log4Shell) one of the biggest security issues ever, affecting millions of devices.

  2. Hexagonal Architecture

    Hexagonal Architecture (Ports and Adapters) keeps business logic isolated and fully testable. A Spring Boot Java example with ports, adapters, and DI.

  3. Testing Spring Boot applications

    Create and test a small Spring Boot REST application with unit and integration tests using Spring Test, Mockito, JUnit5, JSONAssert and H2.

  4. What is and how do we measure code coverage

    Code coverage is a metric showing the percentage of production code covered by tests, helping you spot untested lines with IDEs or SonarQube.

  5. Jumpstart Testing with Mockito and JUnit5

    See JUnit and Mockito in action with a service and repository class — assert, verify, exceptions, ArgumentMatcher, ArgumentCaptor, and annotations.

  6. Advanced MapStruct for automated DTO to Entity mapping and vice versa

    Advanced MapStruct: map fields between different DTO and Entity objects explicitly with @Mapping, from pom.xml setup to a working Spring controller.

  7. MapStruct for automated DTO to Entity mapping and vice-versa

    A Spring code example showing how to use MapStruct to convert entities into DTOs and back, from Maven setup to a Mapper interface and controller.

  8. Jumpstart OpenLayers

    A hands-on starter for OpenLayers: build a map with tile, vector, and KML layers, custom features, projections, and click handlers.

  9. Create OSGi bundle, Camel Routes (XML/Java DSL), deploy in ServiceMix

    Video walkthrough: create an OSGi bundle with Apache Camel routes in XML and Java DSL, then deploy it in ServiceMix.

  10. Start web project with Springboot, Angular, Eclipse or Intellij

    Video walkthrough: how to start a new web project with Spring Boot and Angular using Eclipse or IntelliJ.

  11. Create a Spring Boot Multi-Module Project

    Modularize your Java app with a Spring Boot multi-module project: main and second modules, static resources, deployable WARs, and Tomcat deploy.

  12. Create a Maven Project with JSP and Servlets in Intellij Idea

    Start your Maven web project in IntelliJ IDEA — a beginner-friendly walkthrough of a basic JSP and Servlets app. Everyone should know the basics.

  13. Create a Spring Boot project with JSP in Eclipse

    Create a Spring Boot project with a JSP frontend in Eclipse and add vanilla Hibernate to it.

  14. Create a web app with Intellij Ultimate Edition 15, Spring MVC and Tomcat

    Watch a quick video and start your application using Intellij Ultimate Edition 15, Spring MVC and Tomcat.