Curriculum Vitae

2023-01-07

Education

Experience

  • February 2020 - present: Lead engineer, MongoDB
  • June 2019 - January 2020: Senior engineer, MongoDB
  • January 2012 - May 2019: Member of technical staff, TightDB/Realm
  • August 2009 - December 2010: Edifor (freelance), Network Theory Ltd
  • January 2005 – December 2011: Self-employed developer, system administrator
  • January 2004 – December 2019: Writer (freelance), Audio Media/[Alt om Data]
  • February 2004 – December 2004: Developer and technical writer, Medical Insight A/S
  • February 2007 – December 2007: External supervisor of students’ projects, TEC (Frederiksberg)
  • August 2002 – January 2004: Consultant and software developer, Silex Science/Cortex Consult
  • June 2000 – August 2002: Software developer, Netgroup
  • January 2000 – June 2000: Field scientist, Ciphergen Biosystems
  • June 1999 – December 1999: Civilian service, Neurobiological Research Unit, Rigshospitalet
  • April 1998 – June 1999: Computational scientist, Structural Bioinformatics
  • February 1998 – April 1998: Civilian service, Royal Danish Library
  • December 1994 – December 1997: Ph.D. student, Roskilde University
  • September 1993 – December 1993: Teaching assistant (numerical analysis), University of Copenhagen

Projects

  • Segfault Handler (April 2018 - present)
    • Maintainer (since v1.1.0) of a small node.js module to help debugging C/C++ extensions
    • git, C++, JavaScript, npm, node.js
  • Git Version Control Cookbook, 2nd edition (March 2018 - July 2018)
    • Book about git
    • git, shell scripting
  • Realm Data Adapters (October 2017 – November 2019)
    • Development of bridge between Realm and relational databases
    • Shell scripting, node.js, npm, TypeScript, Postgres, SQL Server, git
  • Realm JavaScript (August 2017 - present)
    • Development of JavaScript SDK for the Realm database
    • Shell scripting, C++, JavaScript, React Native, node.js, npm, git, CMake
  • Realm Java Benchmarks (February 2016 - May 2016)
    • Development of benchmark suite of mobile databases
    • Java, Android, git, Python
  • Realm Java (August 2014 - August 2017)
    • Development of Android SDK for Realm database
    • C++, Java, NDK, git, shell scripting
  • TightDB Node (February 2012 - January 2014)
    • Development of Node SDK for TightDB database
    • C++, JavaScript, shell scripting, git
  • TightDB Python (August 2012 - January 2014)
    • Development of Python SDK for database
    • C++, Python, shell scripting, git
  • TightDB PHP (January 2012 - January 2014)
    • Development of PHP SDK for database
    • C++, PHP, shell scripting, git
  • XcodeCon (July 2010 – December 2011)
    • Conversion engine for Cool:Gen to EGL
    • Perl, Cool:Gen, EGL, Subversion, shell scripting
  • Introduktion til JavaScript (February – May 2010)
    • Authoring a booklet (75 pages) about JavaScript in Danish
    • JavaScript, OpenOffice
  • BASE (May 2009 – June 2010)
    • Development of web applications, backup scripts, build management scripts, and framework for Global Software Configuration Management
    • Perl, JavaScript (jQuery, prototype, Dojo), SQL (Oracle), Synergy
  • Chemetics (March – December 2009)
    • Development of analysis tools for chemists and biologists in the form of KNIME nodes
    • KNIME, Python, shell, Subversion, Java
  • Switch.dk (October 2008 – March 2009)
    • Development of web based self-care solutions, in particular backend components including integration with Oracle based ERP system, DIBS (Danish credit card gateway), PBS (Danish payment gateway), and E-Boks (Danish document archive).
    • PHP, SQL (MySQL, Oracle), Subversion
  • GSCM (April 2007 – October 2008)
    • Development of web applications and framework for Global Software Configuration Management including e-learning, release registration and newsticker applications
    • Perl, SQL (Oracle), JavaScript (prototype/scriptaculous), Synergy
  • LiSA (September 2006 – April 2007)
    • Maintenance and development of internal chemoinformatic software for registration and data analysis of large compound libraries
    • Delphi, C, Matlab, Python, Subversion
  • Pluggable Authentication Modules - the definitive guide to PAM for Linux sysadmins and C developers (March 2006 – December 2006)
    • Authoring a booklet about Pluggable Authentication Modules (PAM)
    • PAM, C, OpenOffice
  • EasyViz (February 2004 – December 2004)
    • Design and documentation of high availability architecture and installation at hospitals for image archive and analysis software
    • Shell scripting, Heartbeat (Linux HA), C, CVS
  • MPU (April 2003 – August 2003)
    • Development of library and utilities for manipulating Maestro files
    • C, CVS
  • Chemetics (February 2003 – April 2003)
    • Development of application for selection of oligo libraries
    • C, CVS
  • CAFE (January 2001 – July 2002)
    • Design, development, maintenance and documentation of internet payment system including anti-fraud engine and backend components interfacing payment gateways
    • C, PHP, Perl, SQL (MySQL), CVS
  • Linux – Friheden til at vælge (June 1998 – February 1999)
    • Author/editor of a book about Linux
    • DocBook, CVS
  • panal (April 1998 – February 1999)
    • Development of software to statistical analysis of proteins
    • Perl, shell scripting
  • MDreac (January 1995 – December 1997)
    • Development of parallel software for simulation of large reactive mixtures undergoing phase separation
    • Fortran-77, PVM
  • EDCS (February 1996 – August 1997(
    • Development of simulation software for 1-dimensional granular media coupled to thermostats
    • C
  • Kinetic Compiler (May 1992 – December 1993)
    • Design and development of domain specific language for simulations and analysis of complex chemical reactions
    • C, make, lex & yacc

Publications

Thesis

  • Non-equilibrium Molecular Dynamics: Application to oscillating chemical reactions and inelastic colliding particles. Ph.D. thesis. Roskilde University, 1997.
  • Komplekse kemiske reaktionssystemer: Eksperimentelle og teoretiske metoder. Award winning thesis. Co-author: M.P. Ipsen. University of Copenhagen, 1994.
  • Chemical waves in reaction-diffusion systems: A numerical study. M.Sc. thesis. University of Copenhagen, 1994.

Scientific papers

  • Oscillating chemical reactions and phase separation simulated by molecular dynamics. Journal of Chemical Physics 107, 9406 (1997). Co-authors: E. Praestgaard and S. Toxvaerd.
  • Controlling the temperature of one-dimensional systems composed of elastic and inelastic particles. Physical Review E 57, 1929-1938 (1998). Co-authors: E. Praestgaard, S. Toxvaerd, and P. Padilla.

Text books

Feature articles

  • 100+ articles in Alt om DATA (2004 - 2019).
  • 10+ articles in DKUUGnyt (2000 - 2010).
  • When memmove() fails. Realm blog, 2017.
  • Big data excavation with Apache Hadoop. Linux Magazine, 144/2012.
  • Backing up portables with Box Backup. Linux Magazine, 88/2008.
  • The status of the GNU Fortran project. Linux Weekly News, November, 2005.