Hello. I'm a software developer and founder.

Currently

Before

Building a better, more accessible Telia.se as the tech lead for the Sitewide team.
February 2021 - now.

Collegial helps some of swedens largest corporations through the digital transformation with accessible, measurable and strategic education. Assigned to lead the development of collecting, unifying and visualizing insights.
May 2020 - January 2021.

Beatly connects consumer brands with influencers in social media. We've helped brands build awareness in Sweden, Germany, France, Belgium, Norway, Denmark, Great Britain, Canada and Italy. Joined as the technical co-founder/CTO before becoming the CEO.
October 2015 - February 2020.

And before that...

  • Fastighetsbyrån - Frontend/UI for their inhouse CRM.
  • RevRise - Like Google Analytics, but for web forms.
  • Quickfix - Edit CSS on any website without dev environment.
  • Ceasars Casino - Universal / SSR React based framework for worlds biggest Casino.
  • Medtryck - B2B e-commerce from the ground up, utilizing competitive advantage with technology.
  • Fortnox - Redesign and prototyping of Web/Mobile UI.
  • Arbetsförmedlingen - Internal search and presence search when growing organization from 10k employees to 13k.
  • Betsafe - Marketing websites and product
  • Stolab - Online product catalog experience for furniture brand
  • Skeppshult - Product catalog experience for bicycle brand
  • Skånska Byggvaror - Interactive handbooks on how garage doors work and are installed
  • and more...

Sometimes I write about technology, business or general experiences. Here are the latest entries:

Useful VIM commandsnote

Here's an updated list of useful vim commands I tend to fall back to

Making web UI's mouseless

The web needs more keyboard based apps and websites. This is the reasoning behind creating Hotlight Command Palette.

Mock window.location in Jest

Overriding the `window.location` object in Jest is not as straight forward as you might think. Here's how to do it without side effects between tests.

Refreshing vim plugins in 2021

The world of Vim never stops surprising me. There's just so many neat ways of getting around more efficiently.

Svelte vs React - first impressions

React has been my go-to library when doing frontend development. However, there is a new player in town and this is the pros and cons of Svelte vs React.

From Startup to Scaleup - Checklist

Scaling up an organization comes with all sorts of challenges. This list helps you become proactive and aware of what to improve in order to scale from start-up to scale-up.

Celebrating 10 years with Ruby

This year marks my 10:th year programming Ruby professionally. As the local Ruby community seems to have disappeared into the abyss, I\'m writing this to remind myself why Ruby is great.

Ranking Top 10 User Session Replay Tools

My conclusion on which session replay tool you should use when recording and watching user actions and mouse movements on your site, is simply one that is easy to integrate and really accurate.

UX Podcast About Online Forms

Me, Per Axbom and James Royal Lawsson of UX Podcast fame discussed online forms at the time RevRise Form Analytics was launched.

Manifesto

Documentation takes you further, this is my new manifesto.

What makes a good Web API?

What does a really good RESTful API look like? These are some of the things that make an API really good.

Continuation

Why and how to proceed with your idea

Using VIM Buffers

Why and how to use VIM buffers to become more efficient.

Prowl Node.js API

Using Prowl with Node.js to PUSH notifications to phones etc. Free and easy to use!

Tagging version in Git

Using tags to mark versions in your Git repository is a must, especially when publishing your own libraries.

Decision Making

Making important decisions can sometimes stop me from moving forward, making me procrastinate. This is how I handle big decisions.

Saying No

How to say no to software projects. It took a while to realize that you can actually do that.

Dreaming

Waking up one day realising I'm living in the middle of Chamonix, reflecting on whether this is a dream or actual reality.

load vs require in Ruby

The main difference between "load" vs "require" in the Ruby programming language.

Minimal Rake Deploy Task

Using Capistrano to deploy is sometimes overkill. This is a minimal way to deploy any web app using git and rake.

Git Submodule Guide

A crash course in Git Submodules. Learn how and when to use submodules in your git project.