About
A short bio.
Born in Tanzania and raised in southeast Sweden.
I wrote my first code on a retrograde Commodore 64.
I try to keep an open mind—thus my blog is titled 'random thoughts'.
Have a masters in philosophy.
Vivo en Barcelona.
Past.

Senior Frontend Developer

CST The Gate2011

Teaching Flash as a course.

Flex Video Developer

Streamuk2012

UI/UX work on a video app.

Senior Flash Developer

Digital Annexe2013

Apps, websites, ads.

Flash Developer & Designer

TAG Worldwide2014

Build of ads for various brands.

E-learning Developer

Balberry Publishing2015

Creation of E-learning CD.

2D Game Developer

Gamesys2015-2016

Coding, debugging, testing.

Game Developer

Product Madness2017

A/B testing, UI/UX development.

E-learning Developer

NKD London2018

Quiz game development.

JavaScript Lead

IG Finance2019

Integrative project: AdLib.

Ad Developer & Designer

WWF2020

Code and concept.

TypeScript Developer

PokerStars2021-2022

Plugin development & WebPack.

Ad Developer & Designer

Three Mobile UK2023

Email and ad developer.

E-learning Developer

NKD Learning2024

Interactive E-learning modules.

Nuxt Developer

Solume AI2025

Coding up Figma Layouts in Nuxt.

Timeline
Future.
Code.
Values

Develop Core Skills.

Foundational skills first, frameworks second. TypeScript / JavaScript. Principles of reactivity. Server-to-client communication. The JavaScript event loop. Progressive, adaptive problem solving needs core skills.

Never Stop Learning.

"You never know when you might need trigonometry."—Wish I had listened to my math teacher. Lately I've been brushing up on radians, tan, and PI. Made use of WebGL in an SSR context. Never stop learning.

Do.

On YouTube, I was listening to a developer with plenty of qualifications. Despite being well read, when he needed to build an app—he froze at the keyboard. So he founded a school where students learn by doing. Not just theory. I try to get busy fast. Failure is an option.

Knowledge.
Creative Developer

Reactive Development

I develop in Vue, Nuxt, and Svelte. But my developer experience is not immutable; I am always researching new frameworks and ideas.

TypeScriptNuxt / VueSvelteSvelteKitSSRPixiJSP5JSGraphQLGSAPUI/UXFigmaWeb PerformanceProblem Solving

Dynamic Animation

I utilize GSAP, PixiJS, and P5JS to explore and visualize content. But recently I have also deep dived into map APIs and the Web Audio API (visualized).

UI/UX

I believe carefully crafted microinteractions can help people navigate through content. Never settle for 20 CTA buttons.

NEXT