I work in developer productivity. My main area of focus is making sure that merges to Stripe's monorepos is able to scale with the growth of our engineering force.
We're looking at having hundreds of concurrent merge submissions per hour. To do this we've implemented speculative builds in order to keep a, de facto, always green main branch.
Led teams that developed the capabilities for interledger transactions and banking infrastructure on a modern banking platform developed using functional languages and cloud technologies.
Taught functional programming in Haskell/Scala to Klarna's engineers and served as an adviser to various teams on Scala and functional programming related solutions.
Implemented the Scala 3 REPL, featuring lots of modern features like tab-completion, syntax highlighting and more.
Implemented semantic error reporting to allow for amazing error messages that tell you what went wrong, offer fixes and give concrete suggestions using your own code as example.
Wrote a documentation compiler - and enabled it to be much more than just creating API reference. It is a full-blown static site generator, where you can cross reference between code and documentation; which makes sure that you both cater to your users and contributors - without duplication.
As release manager, I implemented a release strategy, based on Rust's train model. I also gave several talks on Scala 3, kept the community engaged via workshops and hackathons.
Mentoring student on improvements to documentation compiler. Including type-safe templating engine and compiled documentation, ensuring that any code-snippet is always up-to-date with the released code.
Implemented the next generation documentation tool, alias dottydoc, for Scala. Improvements over the old scaladoc include a full Scala stack from runnable binary to client JavaScript using Scala.js
Working on the next generation Scala compiler, and the tooling surrounding it. This compiler would later go on to become the Scala 3 compiler.
The majority of the work consisted of identifying analyzing and xing issues in the compiler. Major contributions include partial evaluation of statically known function results, implementing a REPL based on Ammonite and laying the groundwork for the next generation documentation tools for Scala.
Master's Thesis: Image Processing Across Multiple Interconnected System-on-Chips
Developed a Linux kernel performance indexing framework, measuring relative performance difference in key parts of the kernel using Python.
Implemented reference counting in Axis's video memory driver for debug purposes. It identified a potential deadlock on its first day of service.
Researched and implemented GPU use cases for Axis's embedded systems using C and OpenGLES.
Built a system for cataloging and maintaining test data. Making more than a terabyte of data not previously cataloged, searchable.
Developed an ordering system and API for Malmö's largest taxi company using Scala, Akka and PostgreSQL. Enabling users to order cabs and track their location in real time.
Developed the second version of the taxi company's iOS app.
Project manager for iOS & Android development on taxi apps.
Data Structures, Abstraction and Design using Java
Programming and Databases
Computer Organization, taught students the basics of computer architecture, assembly and real time systems.
Developed the companion app and backend for a coffee bar and startup incubator. Enabling booking of meeting rooms, ordering products from the bar, Wi-Fi access as well as invoicing.
Webmaster and developer for the daily newspaper Skånska Dagbladet
Available upon request