Projects
Personal ventures, open-source tools, and research
Live
TopTop.dev
My software development company offering custom solutions, cloud architecture, and AI-powered development services for SMBs in the Nordic region. Specializing in rapid delivery with modern tech stacks.
busypipe
Social intelligence for the accounts you don't own. Drop competitors, influencers, hashtags, and sounds into a portfolio and track them continuously — follower growth, engagement rate, posting cadence, regional performance, and trending audio. TikTok today, Instagram and YouTube next. Flat per-workspace pricing and a free plan.
EuroJackpot Stats
A lottery number generator powered by statistical analysis of every EuroJackpot draw since 2012. Features 6 generation strategies including Hot Numbers, Cold Numbers, and Frequency Weighted. Supports 22 languages.
Tools & Systems
DayWatch
A cross-platform tray app that reads time-blocked markdown plans and sends a native notification when it's time to switch tasks. Plans stay plain markdown, so it works with Obsidian, any editor, or none at all. Ships as a standalone binary for macOS, Linux, and Windows.
Research
Di-Select
A criteria-driven framework for selecting container orchestration distributions across cloud and edge. Built from a structured literature review followed by grounded-theory coding, producing seven evaluation constructs and fifteen causal propositions that formalise the trade-offs between them. Published open access in Cluster Computing 29, article 478 (2026) with Sergio Moreschini and David Hästbacka.
Edge Kubernetes: Performance
An empirical comparison of five lightweight Kubernetes distributions — k0s, k3s, k8s, KubeEdge, OpenYurt — on an Intel NUC + Raspberry Pi testbed, measuring CPU, memory, disk, throughput, and latency under varying workloads. k3s shows the lowest resource consumption, while k0s and k8s lead on data-plane throughput and latency; under heavy stress k3s and k0s finish fastest. Full title "Comparative Analysis of Lightweight Kubernetes Distributions for Edge Computing: Performance and Resource Efficiency", published in ESOCC 2025 (Springer LNCS 15547) with David Hästbacka.
Edge Kubernetes: Security & Resilience
A companion study evaluating the same five lightweight Kubernetes distributions on security compliance (via kube-bench), resilience under simulated network outages, and maintainability. k3s and k0s are the easiest to operate but score lower on security compliance; k8s is balanced but resource-intensive; KubeEdge and OpenYurt harden security and outage resilience at the cost of complexity and resource use. Full title "Comparative Analysis of Lightweight Kubernetes Distributions for Edge Computing: Security, Resilience and Maintainability", published in ESOCC 2025 (Springer LNCS 15547) with David Hästbacka.
Edge Kubernetes: CPU & Energy
The third study in the lightweight-Kubernetes edge series (after the two ESOCC 2025 chapters), and the first to model energy rather than raw CPU. A DVFS-based power model calibrated to the ARM Cortex-A72 (Raspberry Pi 4) compares five distributions — k8s, k3s, k0s, KubeEdge, OpenYurt — across idle and pod-churn workloads, with interrupt-storm profiling and thermal analysis. At idle all five draw within ~1.5%; under load k8s is the most energy-efficient per pod lifecycle despite being full-featured, and CPU frequency does not predict orchestration performance — the differences are software-architectural, not hardware. Full title "Comparative Analysis of Lightweight Kubernetes Distributions for Edge Computing: CPU Microarchitecture and Energy Efficiency", accepted at ESOCC 2026 (Springer LNCS) with Sergio Moreschini and David Hästbacka; proceedings to appear.
Edge Computing Orchestration Overhead
The first per-container decomposition of a Kubernetes distribution on real edge hardware. Using cgroups v2 telemetry on a k0s worker, it attributes orchestration overhead to the four worker-side system pods (kube-apiserver/konnectivity-agent, controller-manager, kube-proxy, CoreDNS) and tracks how the "orchestration tax" scales from idle through control-plane churn to a busy data plane. At idle one pod carries two-thirds of system CPU while the whole tax is ~0.38% of the node; control-plane churn multiplies system CPU 9.2×, and memory stays a near-fixed ~46–60 MiB band. Full title "Edge Computing Orchestration Overhead: Analysing Per-Container Decomposition of Kubernetes on Edge Using cgroup Telemetry", accepted at ESOCC 2026 (Springer LNCS) with Sergio Moreschini and David Hästbacka; proceedings to appear.
di-agent
An autonomous orchestration agent for resource-constrained edge nodes that makes context-aware scheduling and offloading decisions without a central control plane. Its Semantic Map starts from priors drawn from earlier publications and refines them with live deployment telemetry. Dissertation work at Tampere University.
Coming Soon
Salpon
salpon.com
In DevelopmentScandiCity
scandicity.com
In Developmentmdfi
mdfi.ai
In Progress