Education: Master of Science, Computer Science (1993)

Work experience

Independent software engineer ⋅ 2016-present

2019-present: Ruter AS

I work as solution architect, tech lead and full-stack developer on a team that develops and maintains an event driven microservices architecture for processing, monitoring and visualising live and historic public transport data.

  • Languages: Java, Kotlin, TypeScript, SQL
  • Frameworks & libraries: Spring Boot, Kafka Streams, Reactive Streams (Reactor), React, Hibernate/JPA, Apollo GraphQL, JetBrains Exposed, JUnit
  • Persistence: PostgreSQL, Elasticsearch, Cassandra
  • Technologies: Amazon AWS, Kubernetes, Docker, Linux, Kafka, REST, GraphQL
  • Tools: Gradle, Git, GitLab CI/CD, Prometheus, Grafana, Datadog, JIRA, Confluence
  • Methods: DevOps, Scrum, Kanban, Domain Driven Design, TDD

2018-2019: Telenor Digital

I worked with the Digital Distribution Technologies team (since spun off as Millom), which develops, maintains and operates a set of APIs that enable Google, Facebook and other service providers to deliver services directly to subscribers across Telenor business units in Asia and Europe.

In particular, I developed an API in partnership with Google that bridges from REST via gRPC over to Telenor’s Diameter/SCTP peering network, to facilitate subscriber authentication and phone number verification over EAP-AKA directly from the subscriber’s handset.

  • Languages: Java, Python, Groovy, HCL, Bash, C, Go
  • Frameworks & libraries: JAX-RS, Protocol Buffers, jDiameter, JUnit
  • Technologies: Amazon AWS, Linux, Docker/Kubernetes, Elasticsearch, gRPC, Diameter/SCTP, Nginx, OAuth2
  • Tools: Intellij IDEA, Gradle, Git, Wireshark, Terraform, Jenkins, Loggly, New Relic, Kafka, JIRA, Confluence
  • Methods: DevOps, Scrum, TDD

2017-2018: Telia Norge

In brief
  • Full-stack developer (web, app, API, backend, DB)
  • Technical architect & advisor
  • Advisor to project management
  • Systems operations

In detail »

  • Languages: PHP, HTML, CSS, JavaScript, PL/SQL, SQL, TypeScript
  • Frameworks & libraries: Laravel, Symfony, Smarty, GuzzleHttp, jQuery, Node.js, Vue.js, React, Ionic, Angular
  • Infrastructure: Linux, Apache, PHP-FPM, OCI8, REST
  • Database: Oracle
  • Tools: PhpStorm, Xdebug, Webpack, Gulp, Toad for Oracle, SQL Developer, Git/BitBucket Server, Bamboo, Docker, Vagrant, JIRA, Confluence, Vim, Xcode, iTunes Connect
  • Standards & formats: HTTP, OAuth2, JWT, JSON, CORS
  • Methods: DevOps, Agile, Kanban, TDD

2016-2017: Norgesjakten

In brief
  • Chief technical architect
  • Full-stack developer (app, web, API, backend, DB)
  • Systems operations

In detail »

  • Languages: Swift, Objective-C, Python, TypeScript, HTML, CSS
  • Frameworks & libraries: Cocoa Touch, Core Data, MapBox, JSONCache, Wikitude AR, Angular, AWS CLI
  • Infrastructure: iOS, Android, REST, Amazon AWS (Lambda, DynamoDB, API Gateway, S3, CloudWatch)
  • Database: AWS DynamoDB (NoSQL)
  • Tools: Git/GitLab, Xcode, Atom, Android Studio, QuickDBD, AWS CLI, AWS Toolkit for Eclipse, emulambda, Swagger, Apiary, iTunes Connect, TestFlight
  • Standards & formats: HTTP, JSON, CORS

Origon ⋅ 2012-2016

In brief
  • Original idea, all UX, design & development*

In detail »

  • Languages: Objective-C, Java
  • Frameworks & libraries: Cocoa Touch, Core Data, MapKit, Core Location, RESTEasy, JAX-RS, Jackson, Objectify
  • Infrastructure: iOS, REST, Google App Engine
  • Database: Google Cloud Datastore (NoSQL)
  • Tools: Git, Xcode, Eclipse, Google Plugin for Eclipse, Maven, iTunes Connect, TestFlight
  • Standards & formats: HTTP, JSON

* I no longer maintain Origon, but it’s still available in the App Store, which it will continue to be until it stops working.

Microsoft Development Center Norway ⋅ 2008-2012

FAST was acquired by Microsoft in 2008, and after a transition period under the name FAST, a Microsoft Subsidiary, FAST became Microsoft Development Center Norway, an integral part of the Microsoft Office organisation.

In brief
  • Feature owner for topology management, scaling, backup & restore for Search in SharePoint 2013
  • Development lead for for the Enterprise Search core in SharePoint 2010

2010-2012: Senior Program Manager

In detail »

2008-2010: Senior Development Lead

In detail »

  • Languages: C#, C++, Java, Python
  • Framework: .NET
  • Infrastructure: Windows Server, SharePoint, .NET, WCF/SOAP, Linux, TCP/IP, IP sockets
  • Database: SQL Server
  • Standards & formats: HTTP, SOAP, WSDL, XML
  • Tools: Git, Visual Studio, PowerShell, SharePoint, Product Studio (internal bug tracker), Remote Desktop
  • Methods: Scrum, TDD

Fast Search & Transfer (FAST) ⋅ 2005-2008

I first returned to FAST in 2004 as a hired consultant from Accenture, working on customer projects with FAST’s Global Services organisation. Then in 2005 I formally rejoined FAST.

In brief
  • Created collaboration and deployment tools for efficient customer installations of ESP (Enterprise Search Platform)
  • Established guidelines and best practices for streamlined and repeatable customer installations of ESP
  • Built tailored search solutions for customers across Europe

2007-2008: Director, Solutions Architecture Center EMEA

In detail »

2005-2007: Senior Solutions Architect, Global Services (GS)

In detail »

  • Product: FAST Enterprise Search Platform (ESP)
  • Languages: C++, Python, Java
  • Infrastructure: Linux, Solaris, AIX, Windows, TCP/IP, IP sockets, RAID, SAN, NAS
  • Tools: CVS, Emacs, Vim, VNC, SSH tunneling, Confluence, JIRA, Excel

Accenture ⋅ 2001-2005

I’m working my way back in time, please come back later :)