Curriculum Vitae
2023-01-07
Education
- December 1997. Ph.D. (soft material science). Roskilde University
- May 1994. M.Sc. (chemistry). University of Copenhagen
- May 1992. B.Sc. (computer science and chemistry). University of Copenhagen
- June 1989. High school. Frederiksværk Gymnasium
- June 1986. Primary/secondary school. Storebjergskolen, Hundested
Experience
- October 2024 - present: Director, CrateDB
- February 2020 - August 2024: 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
- Git Version Control Cookbook, 2nd edition. Packt Publishing, 2018. Co-authors: E. Zattin, A. Olsson, and R. Voss.
- Introduktion til JavaScript. Libris, 2010.
- Pluggable Authentication Modules - the definitive guide to PAM for Linux sysadmins and C developers. Packt Publishing, 2007.
- Linux – friheden til at vælge. Co-authors: P. Toft, S.J. Andersen and others. IDG Bøger, 1999; Globe, 2000
- Introduction to Chemical Kinetics. Roskilde University, 1996
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.