Dr. James Collier

Software Engineer.

Interests

Reliable systems, functional programming, software engineering, scientific computing, open-source software, full-stack web development.

Bio

I am a software engineer with over 10 years of professional experience on systems ranging from tiny embedded medical microchips, through to web applications and high-performance supercomputers. I grew up in a small town in rural Australia then completed a PhD at Monash University applying information compression to the protein structural alignment problem. Now I live in the Netherlands with my lovely wife and three children. Currently, I work for VIB Technologies building web applications.

Experience

2019-current Flemish Institute of Biotechnology, Gent, Belgium Bioinformatics Tool Developer

2019 Topic Healthcare Solutions, Best, The Netherlands Embedded Software Engineer

2018 IMec Connected Health Solutions, Eindhoven, The Netherlands Embedded Software Engineer

2017-2018 Topic Embedded Systems, Best, The Netherlands Embedded Software Engineer

2010-2015 Monash University, Clayton, Australia Software Engineer

Education

2012-2016 Doctor of Philosophy, Monash University, Clayton, Australia (Thesis)

2011 Honours Degree of the Bachelor of Computer Science, Monash University, Clayton, Australia

2008-2010 Bachelor of Science, Monash University, Clayton, Australia

Technologies

Languages Purescript, Elm, Haskell, Rust, Javascript, Typescript, SQL, C, Python, Emacs Lisp, Common Lisp, Clojure, C++, Java, CSS

Tools Git, Docker, Emacs, Spago, Cargo, Cabal, Nix, Poetry, npm, Kubernetes, GNU/Linux

Libraries React, FastAPI, PyTest, Hedgehog, Hypothesis, Redux, Servant, Rel8, SQLAlchemy

Software

Zephyr Dead code elimination tool for Purescript written in Haskell.

yaml YAML encoding/decoding library for Elm.

Phylio Purescript library for parsing phylogenetic trees.

VIB-CSS CSS library for styling websites and apps for the Flemish Institute for Biotechnology.

Super 3D pattern matching on proteins written in C, also a Python wrapper library.

SCope Web app to visualise single-cell transcriptomics data. Backend written in Python using FastAPI and SQLAlchemy. Frontend written in Typescript using React, Redux, and Redux-Saga.

Falcon-client GUI Client application for Falcon closed-loop neuroscience platform. Uses Rust to communicate with Falcon over ZeroMQ. Uses Elm to display a web GUI interface with real time plotting using WebSockets.

MMLigner Align protein structures in 3D space using Minimum Message Length inference. Written in C++.

Golden Gate Assembler Store and organise genetic products for robotic vector assembly. Simulate genetic vector assembly. Written in Elm and Python.

Acinetobase Static site generated from data in a CSV table and images. Generator written in Haskell.

Buzz Real-time student interaction platform featuring polls, Q&A, and quizzes. Using Python and Typescript React, Redux, RTK Query, and WebSockets.

ionbot Commercial proteomics web app for AI driven analysis. Using Python and Kubernetes on the backend, Vue on the frontend. I integrated single sign-on with OpenID Connect and payments with Stripe.

Awards

2017 Vice-Chancellors Commendation For PhD Thesis Excellence by Monash University.

2016 Recommended for “Best Thesis” award by external thesis examiner, Prof. Anna Tramontano.

2013 Victorian Life Sciences Supercomputing Initiative (VLSCI) Travel Grant.

2012-2016 Australian Postgraduate Award (APA) Postgraduate scholarship.

2012-2016 National ICT Australia (NICTA) Postgraduate scholarship.

2009 Undergraduate Vacation Scholarship.

2008 Member of Golden Key International Honour Society for outstanding achievement.

Publications

2022 Acinetobase: the comprehensive database and repository of Acinetobacter strains Database 10.1093/database/baac099

2022 Unipept Visualizations: an interactive visualization library for biological data Bioinformatics 10.1093/bioinformatics/btab590

2021 AutoSpill is a principled framework that simplifies the analysis of multichromatic flow cytometry data Nature Communications 10.1038/s41467-021-23126-8

2017 Statistical inference of protein structural alignments using information and compression Bioinformatics 10.1093/bioinformatics/btw757

2016 On Sufficient Statistics of Least-Squares Superposition of Vector Sets Journal of Computational Biology 10.1089/cmb.2014.0154

2014 A new statistical framework to assess structural alignment quality using information compression Bioinformatics 10.1093/bioinformatics/btu460

2012 Super: a web server to rapidly screen superposable oligopeptide fragments from the protein data bank Nucleic Acids Research 10.1093/nar/gks436

Presentations & Talks

2022 How to setup a development environment for Python @ VIB (2022) YouTube

2021 Background task execution @ VIB Slides

2014 A new statistical framework to assess structural alignment quality using information compression @ European Conference on Computational Biology Slides

2013 Protein Structural Alignment Problem in Biology Three-Minute Thesis YouTube