
Freelance Java architect & developer
I help organizations ship and modernize mission‑critical Java backend systems — quickly and safely — through Java, sound architecture, and responsible AI‑assisted engineering.
- Freelance / remote-first (based near Århus/Aarhus, Denmark)
- 25+ years of software development and architecture experience — primarily Java and backend systems
- M.Sc. in Electrical Engineering (M.Sc.E.E.)
- Strong focus on integration, security, performance, reliability, and operability
- Broad domain experience in e.g. finance, telecom, healthcare, defence and maritime
What I do
- Architecture and delivery of Java backend services (greenfield + modernization)
- Integration and API delivery (REST/OpenAPI, messaging)
- Cloud/container deployment (OpenShift/Kubernetes, Docker)
- Security and performance engineering for backend systems
- Technical leadership: teaching, mentoring, review, sparring
How I work
I work AI-accelerated and use GitHub Copilot and Claude Code as a productivity and quality multiplier for design exploration, implementation, refactoring, tests, and reviews. But I am the human-in-the-loop and I apply 25+ years of Java engineering experience — to use AI critically: validate assumptions, catch edge cases, and keep designs operable. The final result is always reviewed and tested.
Open source projects
I am the inventor and maintainer of:
Both projects have commercial users and are related to decoding safety‑ and navigation‑related digital messages from ships. The source code is available on GitHub and the binaries are in Maven Central.
Clients
Selected clients I have worked for:

Projects
Read my portfolio of featured freelance projects.
Getting in touch
Recommendations
Read recommendations given to me on LinkedIn.
Availability
Recruiters, enterprises and agencies: contact me for current availability and a quick discussion of scope, timeline, and collaboration model.
Technical keywords
Java & frameworks: Java SE, Java EE, JPMS (Java modules), MicroProfile, Quarkus, Spring Boot, Hibernate, JPA, CDI, JTA
APIs & integration: REST, OpenAPI, messaging, Apache Camel, NATS, ActiveMQ, AMQP, Keycloak, OIDC, JWT tokens
Cloud & ops: OpenShift, Kubernetes, Docker, Helm, Istio, AWS, Jaeger (distributed tracing)
Data: PostgreSQL, Oracle, MS SQL Server, Cassandra, PostGIS
Build & testing: Maven, Gradle, Jenkins
AI‑accelerated engineering: GitHub Copilot, Claude Code, IDE‑based AI plugins, AI‑assisted refactoring/testing/reviews (human‑in‑the‑loop)
Posts
- What is AIS?
- Creating a Spring Boot based AIS message decoder
- Creating, sharing and running a Docker image to decode AIS messages
- Running AISdecoder in a Kubernetes cluster on AWS
- Introducing Java modules in AISmessages
- Why AISmessages 4.0 made value objects immutable
- AIS Application-Specific Messages: Beyond Standard Position Reports
+45 4063 2353
tbsalling@tbsalling.dk
tbsalling
tbsalling
tbsalling