Jose Ignacio Larghi Software developer
Java and Spring developer for products that have been in production for years.
Bugs, features, integrations and step-by-step modernization on existing Java codebases: Spring Boot and React on the new side, JBoss, Seam and JSF on the old one. I also build the AI tooling I work with, from MCP servers to agent orchestration.
I work with small software companies, usually 5 to 50 people, whose product has paying customers and a codebase that predates most of the current team.
What I take on
- Diagnosing and fixing reproducible production bugs.
- Adding a bounded feature, integration or report to an existing product, including failure and reconciliation handling.
- Making an old build reproducible again: containerized, running on a laptop and in CI.
- Moving a long-lived codebase forward without stopping it: a Spring Boot and React layer that takes over from JBoss, Seam or JSF one feature at a time.
How I use AI
- Coding agents do a large share of the mechanical work, reviewed by me. It is what makes bounded tasks on old codebases affordable.
- I build the tooling, not just use it: MCP servers in Spring AI that expose a product's data to AI assistants, with a validate, preview and apply cycle so nothing reaches the database unreviewed.
- An orchestrator in Java that works through a task list unattended, picks a model per task, falls back across agent CLIs, caps cost and has a second model review each change.
- OAuth 2.1 with PKCE on the AI integration, so every agent action carries the real user's identity and the product's existing permissions still apply.
How I work
- Scope agreed in writing first: deliverable, acceptance criteria, required access and an hour cap.
- Asynchronous by default. Short calls with an agenda when they help.
- Your team keeps review, deployment and production support. I don't take 24/7 on‑call.
- Every change ships with notes, so anyone on your team can support it afterwards.
Work I can point to
Dynamtek, 2018 to 2022. Dynamtek runs a laboratory information system that handles blood test results, thousands of records a month, on a JBoss Seam and JSF codebase. They hired me through Upwork to fix production bugs. The work grew from there: I built a tool that migrated the whole RichFaces front end to JSF 2 and PrimeFaces automatically, rewriting every XHTML file and refactoring the Java sources, so a months-long manual migration became a repeatable, one-click process. I also added a React front end that lets patients request invoices after paying for a test.
Dynamtek again, since 2024. They came back and asked me to build the product's new version on Spring Boot and React. I own the architecture, review the other developers' work, built the MCP server that exposes the product's catalog to AI assistants, and set up the multi-tenant production deployment: one database schema per client, versioned containers, and a playbook for onboarding, upgrading and rolling back a single client.
Indeed, 2022 to 2024. Two years as a backend engineer on an internal compliance platform, through AgileEngine, working day to day inside a distributed US team.
Stacks I have worked on in production: Java 6 to 25, Spring Boot, Spring AI, Hibernate, PostgreSQL, Oracle, React, JBoss and WildFly, Seam 2, EJB3, JSF with RichFaces and PrimeFaces, Struts 2, Model Context Protocol.
Start with one task
Send me the bug report, the failing build log or the integration that misbehaves. Within one business day I'll tell you whether I can take it and send a written scope: deliverable, acceptance criteria, the access I need and an hour cap. No call required.
Based in Argentina, UTC−3. My working hours overlap with US Eastern time. LinkedIn profile.