Hi, I'm Vesa, a solution architect from Finland.

I try to make complicated software easier to live with. I’m most interested in software that helps people work better and makes data easier to understand. A lot of that comes down to reducing unnecessary complexity. Lately I’ve been focused on software transformation, AI/LLM applications, and performance.

Available for short engagements

Writing

Projects

Cobol to Java modernizer

Converts legacy Cobol programs into modern Java. A grammar-driven parser and multi-stage deterministic AST pipeline produce runtime-correct Java. LLM stages then modernize and optimize the output.

Why: Explore transpiler construction, grammar-driven parsing, and bridging legacy business logic to a modern runtime.
Java

arch-audit

An architecture auditing tool that speeds up getting oriented in an unknown codebase. It combines static analysis, dependency scanning, code metrics, and structure extraction into an interactive terminal-based findings browser.

Why: Programmatic software analysis.
Python

Omastoppi.fi

Web/mobile application for quickly viewing departure times for nearby public transport stops. Data fetched realtime from the HSL GraphQL API.

Why: Learn React/Next.js, and create an application which can be used quickly when on the go on the HSL region.
React/Next.js

Econstats.eu

Application which charts the major macroeconomic indicators with an EU focus. Data is fetched every day from the BLS, FRED, and ECB APIs.

Why: Learn more about AWS services. Create a macroeconomic "dashboard" for the EU area.
Python AWS

Neural networks and automatic differentation in Java

Neural networks with automatic differentiation and backpropagation in Java from scratch.

Why: Learn about machine learning, gradient descent, neural networks.
Java

WFC generator

In game development WFC (Wave Function Collapse) is used for generating output based on a set of tiles and rules. This output can then be used for different purposes, like level or texture generation. Here I'm creating textures. This is a simple Java implementation of Wave Function Collapse algorithm where the rules are defined in code.

Why: Complex result from simple rules.
Github: https://github.com/vesas/simple-wfc
Java

Spacefly

2D game with procedural level generation and dynamic area of sight calculation.

Java

Javarays

Raytracer in Java.

Why: Explore performance ideas.
Java

Snakeray

Multiprocessed raytracer in Python.

Why: Explore performance ideas, practise python.

Python

House price prediction using machine learning

Python