work

Engineering Lead & full-stack engineer

I own products end to end: architecture, code, infrastructure and operations. By day I lead engineering at a Swedish SaaS for newsletters, SMS and marketing automation, used by about 1,500 organizations.

day to day

  • TypeScript
  • React
  • Next.js
  • C# / .NET
  • SQL
  • Node.js
  • GitHub Actions

currently into

  • Go
  • agentic workflows
  • coding agents
  • LLM integration
  • MCP development
  • three.js

hobby projects

Built outside work

The three projects below are my own: nights, weekends, my own time. Each one has a demo of concept you can open right here and, where the real tool is public, a link to it.

01 / 03

TurfGPS

2024 →in development

Turf is a GPS game played around the world: players capture zones by visiting them in person.

A route planner for a trip you are already making: say what you value and how many minutes you can spare, and it finds the most valuable route through the zones on the way.

how it works

  1. Enter the trip you are already making, from A to B, with stops if you like.
  2. Say how many extra minutes you can spare and which zone types you value most.
  3. It compares the roads and picks the stops that give you the most for those minutes.
  • 11zone types you rank
  • 1–15 kmcorridor, scaled to your time
  • 115%hard ceiling on the time you allow

Next.js · TypeScript · Leaflet · Redux Toolkit · next-intl

source (opens in a new window)
preview · open the demo to use it

02 / 03

XtroneTrade

2024 →running · sole operator

Paper trading: the strategies run on live market data, but every order goes to a simulator, never real capital.

Autonomous algorithmic trading platform, designed, built and operated by exactly one person. It paper-trades only, while the strategies are tuned.

how it works

  1. Market data streams in through one adapter per provider; the engine never sees a vendor.
  2. Strategies score about 50 assets around the clock and propose orders.
  3. A risk gate checks every order before it reaches the paper simulator.
  • ~50assets evaluated in real time
  • 24/7autonomous operation
  • 1engineer, across the entire stack

Go · React · TypeScript · PostgreSQL · WebSockets · GitHub Actions · Linux

closed source, ask me about it
preview · open the demo to use it

03 / 03

PepegaClapBot

2019–2024retired with honors

Twitch chat never sleeps: it keeps running whether the stream is live or not.

Livestream automation platform that grew from a hobby script into a small SaaS used by Twitch streamers.

how it works

  1. The bot joins each streamer's chat and reads every message.
  2. Moderation rules and engagement actions fire through an MQTT event pipeline.
  3. Streamers set it up once; it ran for five years across about ten channels.
  • 170M+chat messages processedcounted by the bot itself: one increment per message read.
  • 230K+unique chattersone increment per chatter the bot had not seen before.
  • ≈23 yrsof chat monitoredsummed connect time across every channel. Twitch chat keeps running when the stream is off, so the bot listens around the clock.

TypeScript · Next.js · Node.js · MongoDB · MQTT · GitHub Actions · Linux

Visit the site (opens in a new window)closed source, ask me about it
preview · open the demo to use it

projects

Smaller builds, experiments and university work

24

Is My Tomato Sick?

AI-powered disease detection for tomato leaves. A real product. Real tomatoes were saved.

  • AI/ML
  • Computer vision
  • React
27

Steering Angle Algorithm

Real-time steering angles from video frames for an autonomous cart (OpenDLV).

  • C++
  • OpenCV
  • Autonomous
29

Dentistimo

Distributed dentist-booking platform: MQTT broker, gateway, microservices, React frontend.

  • Distributed systems
  • MQTT
  • React
28

OBS Mic Swapper

Swaps or mutes OBS audio devices when viewers redeem Twitch channel points. Chaos, as a service.

  • OBS WebSocket
  • Twitch
35

CaiBot

Twitch chat moderation bot with custom channel-point reward actions. PepegaClapBot’s ancestor.

  • Node.js
  • Twitch API
  • Bot
33

Collatz Conjecture Logs

3n+1, but make it a CLI visualizer. The math remains unsolved; the logs remain pretty.

  • JavaScript
  • Math
  • CLI

there's more where that came from

browse GitHub