PERSONNEL FILE / 001 · TALLINN, ESTONIA

Markus
Tammeoja.

SOFTWARE ENGINEER

I’m a software engineer in Tallinn. I’ve worked on factory automation, energy apps and financing systems. I like working across the whole application and getting to know the people who use it.

AUTHORIZED EQUIPMENT / λ-01
SELECTED WORK

Out of the lab.

01 / SELECTED WORKPersonal project
Ampsu food diary showing meals and daily nutrition totalsAmpsu mobile metabolism graph with its confidence band

ampsu

I started Ampsu because logging food took too long. It has photo and barcode scanning, recipes, a weekly meal planner and calorie targets that adjust based on your food logs and weight.

I write the app, maintain the food importers and run the servers. The backend is Kotlin, still my favourite language.

  • Kotlin / Ktor
  • Svelte
  • PostgreSQL
  • Meilisearch
  • Android
  • Ansible
Visit ampsu.eu
02 / SELECTED WORKBuilt at Codeborne
Translate tool with JSON translation keys and language editing fields

Translate tool

I built this editor at Codeborne to replace Phrase. Translators work beside the original text, check formatting and missing placeholders, then send changes back as commits or pull requests without using Git themselves.

It went on to be used across other client projects, too.

  • Svelte
  • TypeScript
  • Express
  • GitHub / Bitbucket
  • AWS CodeCommit
View on GitHub

The test log.

Where I’ve worked and what I built.

Apr 2024 — now

Swappie

Software engineer

Tallinn, Estonia

I worked with factory operations on software for phone diagnostics, repair and automated handling, from workstation interfaces to backend services and infrastructure.

Factory systems

I built Django and Python services for tracking devices, diagnostics and automation, alongside React and Svelte interfaces for repair and line monitoring. I also put automation line configuration under version control, with scheduled syncing and drift detection.

AI grading

I moved the GPU workers for image-based device grading to Linux services and improved their recovery and monitoring. Grading jobs that used to get stuck for hours mostly stopped getting stuck.

The Mactivator

For the MacBook launch, I built a small USB device that automates the first steps of setting up a MacBook, so plugging it in is the only thing an operator has to do. It became known as the Mactivator, and a bit of a meme at work.

  • Python
  • Django
  • React
  • Svelte
  • Docker
  • Datadog
  • Distributed systems
Jan - Apr 2024

Ridango

Software engineer

Tallinn, Estonia

Worked on backend systems for public transport, writing Java services with Spring and Hibernate.

  • Java
  • Spring
  • Hibernate
Oct 2021 - Jan 2024

Codeborne

Software developer

Tallinn, Estonia

I built software for clients in energy, finance and education using Kotlin, Java, Postgres and Svelte. We worked in pairs and wrote tests as part of everyday development.

Spotty

For an Austrian energy provider, I worked on sign-up, contracts and billing, along with parts of the connection to the grid operator’s systems. I also worked on smart EV charging and built Android and iOS wrappers for the web app.

Checkout financing

I worked on checkout financing, from the initial offer and signed contract to loan pricing, repayment calculations and the payment and accounting flows that followed.

Learning platform

I built browser automation to keep course listings and registrations in sync with a public employment service. Staff no longer had to enter the same information in both systems.

  • Java & Kotlin
  • Postgres
  • Svelte
  • Pair-programming
  • TDD
  • CI/CD
2020 - 2023

Tallinn University

BSc, Computer Science

Tallinn, Estonia

Studied computer science while starting my career in software engineering.

WebAssembly thesis

For my thesis, I built and ran five algorithm benchmarks across JavaScript, Rust, C++, AssemblyScript and C# in desktop and Android browsers. I compared the results to see which kinds of work actually benefit from WebAssembly and where JavaScript is already competitive.

Behind the panel.

I like knowing how the whole thing works.

I use Linux on my main machine and run my own servers. If something goes down at home, statistically I'm the one who caused it.

I got fed up with how slow logging food in calorie counting apps was, so I built Ampsu to save time and money. I've since spent far more of both than I'll ever get back (damnit).

Away from the keyboard, I cycle, work out, hike and camp. At home, it’s usually food, board games, Magic: The Gathering or another return to RuneScape.

I'm a Valve fanatic. This site has achievements. There's no prize, but I dare you to get them all anyway :)

The cats at the bottom of the page are mine. They’re absolute menaces.