CV
I'm an artist, coder, and salsa dancer living in Malmö, Sweden, born and raised in Uppsala. I'm always learning something new, and these days most of that time goes into painting. If that's more interesting to you than my job history, have a look at my art.
I'm always interested in hearing about new opportunities and good problems. The quickest way to reach me is any of the links at the top of the page.
Experience
Backend Developer
Backend work on a microservice platform, plus the internal tooling the company runs on day to day.
- Responsible for delivering the rewrite of the platform GUI.
- Built the PostgreSQL analytics database now used across the company.
- Automated large parts of the customer support system, removing roughly 40% of tickets from the main support queue.
- Built an internal app for managing users and customers.
Fullstack IT Consultant
Consulting across a wide range of client projects, from new products to features on existing ones. The best part was the variety: a lot of small engagements meant a lot of different languages, stacks, and problem domains in a short span.
- At IKEA, worked on forecasting future demand. I was the engineer who exposed the model to the internal team that prices products.
- At StepStone, worked in an innovation hub.
- Gave a handful of internal TechTalks (~15 people) on blockchain and parser combinators.
- Mentored junior developers.
Self-employed
Ran my own thing after graduating: made generative art, sold it, and built the tooling around it.
- Sold generative NFT art on Cardano through my own storefront, taking about 400k SEK in revenue as an early entrant.
- Built Atomic Swap, a p2p dApp for trustlessly trading assets between Cardano wallets.
- Did every other job too: art and UX, marketing, customer support, taxes and accounting.
Backend Developer
Backend developer in a small agile team building an IT infrastructure management tool: a single view of an entire infrastructure, from licenses to servers to network devices and PCs.
- Integrated several new data sources into the graph database.
Programming Tutor
Tutored and graded first-year students in Scala on an introductory programming course.
Laboratory Assistant
Prepared and ran analyses of chromatography media, mixing solutions for the lab's different analyses.
Selected Work
A neon puzzle game built solo in Rust with the Bevy engine, and shipped on Steam. My first attempt at a game.
A p2p dApp for trustless asset trading on Cardano. Ran for a couple of years; quiet now.
A parser combinator library for TypeScript, for building parsers for custom languages and formats.
Generative art minted on Cardano, sold through a storefront I wrote in Elm. The site is still up.
Education
M.Sc.Eng. Computer Science
Heavy focus on the fundamentals of computer science and software engineering. For my specialisation I selected courses in machine learning, AI, and mathematics.
My thesis explored how to reduce the rate of false positive alarms in static analysis tools. We built a prototype by extending JavaDL, a custom language for static analysis, to use machine learning to find false positives.
Thesis: Filtering False Positive Alarms in JavaDL and Language Experience Report
Show all courses
| Course | Code | Credits |
|---|---|---|
| Degree Project in Computer Sciences for Engineers | EDAM05 | 30.0 hp |
| Introduction to Artificial Neural Networks and Deep Learning | EXTQ40 | 7.5 hp |
| Mathematical Statistics, Time Series Analysis | FMSN45 | 7.5 hp |
| Optimization for Learning | FRTN50 | 7.5 hp |
| Advanced Computer Security | EITN50 | 7.5 hp |
| Machine Learning | FMAN45 | 7.5 hp |
| Network Dynamics | FRTN30 | 7.5 hp |
| Algebraic Structures | FMAN10 | 7.5 hp |
| Monte Carlo and Empirical Methods for Stochastic Inference | FMSN50 | 7.5 hp |
| Applied Machine Learning | EDAN95 | 7.5 hp |
| Optimization | FMAN60 | 6.0 hp |
| Stationary Stochastic Processes | FMSF10 | 7.5 hp |
| Multicore Programming | EDAN26 | 7.5 hp |
| Matrix Theory | FMAN70 | 6.0 hp |
| Queuing System | EITF95 | 4.5 hp |
| Signal Processing in Multimedia | EITA50 | 7.5 hp |
| Computer Security | EITA25 | 7.5 hp |
| Sustainability and Resource Use with Perspectives on Information and Communication Technology | FMIF45 | 4.0 hp |
| Numerical Analysis | FMNF05 | 6.0 hp |
| The Business of Software | ETSF25 | 7.5 hp |
| Automatic Control, Basic Course | FRTF05 | 7.5 hp |
| Concurrent Programming | EDAF55 | 6.0 hp |
| Mathematical Statistics, Basic Course | FMSF45 | 9.0 hp |
| Algorithms, Data Structures and Complexity | EDAF05 | 5.0 hp |
| Functional Programming | EDAN40 | 7.5 hp |
| Electronics | EITA10 | 5.0 hp |
| Computer Organization | EITF70 | 6.0 hp |
| Applied Mathematics - Linear Systems | FMAF10 | 5.0 hp |
| Software Development in Teams - Project | EDAF45 | 7.5 hp |
| Object-oriented Modelling and Design | EDAF60 | 4.5 hp |
| Computer Communication | EITF45 | 7.5 hp |
| Design of Digital Circuits - A Systems Approach | EITF65 | 9.0 hp |
| Calculus in Several Variables | FMAB30 | 6.0 hp |
| Programming - Second Course | EDAA01 | 7.5 hp |
| Evaluation of Software Systems | EDAA35 | 7.0 hp |
| Discrete Structures in Computer Science | EDAA40 | 5.0 hp |
| Photonics | FAFA60 | 5.0 hp |
| Linear Algebra | FMA420 | 6.0 hp |
| Computer Introduction | EDA070 | 3.0 hp |
| Introduction to Programming | EDAA45 | 7.5 hp |
| Calculus in One Variable | FMAA05 | 15.0 hp |
| Cognition | TEK210 | 4.5 hp |