LinkedIn profile
[2022 - current] Fullstack software developer, Protojour AS
[2017 - 2022] Senior software consultant, Knowit Objectnet
- Develop and architect various web-based solutions for different customers.
- Full stack web development
- Main technologies used: React/TypeScript, Spring/Kotlin, Rust, PostgreSQL, AWS/Google Cloud, Kubernetes/Docker, microservices, GraphQL
- Designed and developed an innovative Rust-based search engine for legal documents
[2014 - 2017] Software Developer, Opera Software
- Developed Opera Max for Android, a data savings manager/internet privacy application
- Android development in Java. User interface, network communication, SQLite database and lots of phone state monitoring
- Development of complex networking code (C++/linux APIs + JNI interface) for the VPN component
- Focus on SDK backwards compatibility. Wrote gradle build scripts to replace deprecated Eclipse/ant
- Largest task yet is moving the whole client/server architecture from a simple HTTP protocol to a multiplexing and fully encrypted HTTP2/SPDY based protocol. Designed and wrote a multithreaded Java utility library to facilitate the new protocol in all parts of the application, using a raw Java Socket internally
[2014 - 2014] Volunteer Developer, Norwegian Helsinki Committee
- I-DOC Case Matrix application (Android)
- Simple application for in-the-field gathering+synchronization of various media to be used as court evidence, in relation to human rights violations and war crimes
- Based on Apache CouchDB
[2013 - 2014] Principal Software Engineer, Nokia/Microsoft
- Lead the development of a proprietary, Scheme-based scripting language
- Implemented an Ahead-of-time compiler and several other performance optimizations for that language
- Had mentor responsibility related to a transfer of knowledge to Chinese developers
- Had Technical Area Owner responsibilities for font rendering, SQL/database and framework components supporting the Contacts application in the Nokia Asha platform, which is the basis forAsha 50x series
- Designed and developed a framework for fast, asynchronous image processing to be used as the main image loading/processing library for the Asha platform
- Responsible for architectural development and code review in the software components mentioned, as part of the Architecture and System Design team of Nokia Mobile Phones
[2011 - 2013] Software Engineer - Nokia
- Productized the Nokia Asha 501, the first Nokia phone and the first truly mass produced one based on the Smarterphone Framework.
- Central contributor to the strict performance and stability requirements of the phone, resulting in it being released on time and exceeding performance expectations.
Designed and implemented the high performance Asha Contacts application, including database design, internationalization (sorting, indexing) of the phonebook list, a low memory, stream-based - import algorithm used with JSON data from social networking applications, and frame rate optimization of the scroll menu.
- Worked extensively with the graphics performance of the image framework used by the Asha Gallery, making it exceed the required targets needed for productization.
[2007 - 2011] Software Developer - Smarterphone
- Designed and implemented several key UI framework components, each being instrumental to Smarterphone later being acquired by Nokia, including but not limited to:
- Text view widget and input system: Efficient bi-directional text layout algorithms with support for most of the scripts in use in the world today (using the freetype and harfbuzz libraries) + input methods with predictive typing and complex eastern script support. The maturity of these were better than Android's at the time. Developed an extensive automated test environment for text editing/rendering
- List view widget: Used for generically displaying menus in the UI. Optimised for fastest possible scroll frame rate, while still being fully dynamic and scriptable, in a constrained embedded environment
- Part of completing the Majestic project, a feature phone approved for the South American market by Telefonica, powered by the Smarterphone Framework
- Initiated process of version management migration from CVS to Git
[2004 - 2007] BS, Computer Science/Logic/Linguistics - University of Oslo