Hi. My name is Dirk Ger­rits, and I’m a pro­grammer and com­puter sci­en­tist. My pas­sion?
Op­ti­miza­tion
To de­sign and im­ple­ment al­go­rithms that com­pute the best pos­sible so­lu­tion to re­al-world prob­lems.

Pur­suing this pas­sion in acad­e­mia, in­dus­try, and spare time I’ve ac­quired a di­verse set of skills and in­ter­ests that I con­tinue to hone and ex­pand with an in­sa­tiable hunger for knowl­edge.

Skills and interests

  • Algorithms and data structures
    Design, analysis, implementation.
  • Writing and presenting
    See my blog and publications.
  • Programming paradigms
    Imperative, functional, object-oriented, concurrent, distributed.
  • Computer languages
    I greatly enjoy learning new ones.
    Proficient with: C++, Python, LaTeX, HTML/CSS/JavaScript.
    Have also used: Assembly, Bash, C, C#, Common Lisp, Erlang, Forth, Haskell, Java, Mathematica, PHP, Pascal, Perl, Prolog, R, Ruby, Scheme, SQL.
  • Natural languages
    Dutch (native), English (fluent), German (reading/listening).
  • Visualization
    Making data and processes insightful and explorable.
  • Video games
    Playing them, studying their design and implementation.
  • Mathematics
    Geometry, discrete math, statistics.
  • Physics
    Classical and orbital mechanics.
  • Psychology and neuroscience
    How best to use my brain and entice those of others.
  • Running
    Exercise is the ultimate brain enhancer.

Work ex­pe­ri­ence

  • 2013 – 2014: Post-doc
    Uni­ver­sity of Am­s­terdam, the Nether­lands
    Eind­hoven Uni­ver­sity of Tech­nology, the Nether­lands

    • Re­search and de­vel­op­ment of a we­b-based tool for vi­sual an­a­lytics in the dig­ital hu­man­i­ties.
  • 2008 – 2013: PhD stu­dent
    Eind­hoven Uni­ver­sity of Tech­nology, the Nether­lands

    • Per­formed prac­tical ex­per­i­ments and the­o­ret­ical re­search into robot push plan­ning and dy­namic map la­bel­ing, re­sulting in pub­li­ca­tions in var­ious in­ter­na­tional jour­nals and con­fer­ences.
    • Graded home­work and taught tu­to­rials (mini-lec­tures) in Bach­elor courses on al­go­rithms and data struc­tures, with ex­cel­lent stu­dent re­views.
    • De­vel­oped and main­tained web­site for the Al­go­rithms re­search group.
    • De­vel­oped and main­tained web­site for the 19th In­ter­na­tional Sym­po­sium on Graph Drawing. Also helped with var­ious tasks during the con­fer­ence to en­sure every­thing went smoothly.
    • Project work for As­sem­bléon Nether­lands B.V.
      (Part of “Ken­niswerk­er­sregeling” project KWR09598 “SUPREME”.)
      For a part of their ex­isting op­ti­miza­tion soft­ware:
      • Made rec­om­men­da­tions that would re­duce com­pu­ta­tion time from hours to sec­onds for the ex­isting line of pick & place ma­chines.
      • De­vel­oped pro­to­type for this part of the soft­ware for a new line of ma­chines.
      • Used sim­u­la­tions with pro­to­type to rec­om­mend a de­sign for the new line of ma­chi­nes; 20–60% pro­jected gain in pro­duc­tion speed com­pared to ex­isting ma­chines.
  • Summer 2005: In­tern
    Franz Inc., Oak­land CA, United States of America

    • De­vel­oped a tool to easily ac­cess C++ li­braries Franz In­c.’s Al­le­groCL, which thereby be­came the first Common Lisp im­ple­men­ta­tion with such a fea­ture.
  • 2004 – 2008: Stu­dent as­sis­tant
    Eu­flex Em­ploy­ment Ser­vices, Eind­hoven, the Nether­lands

    • Tutor stu­dents and grade their as­sign­ments for var­ious courses in al­go­rithms, data struc­tures, and im­per­a­tive, func­tional, and logic pro­gram­ming being taught at the Eind­hoven Uni­ver­sity of Tech­nology.

Education