Fork me on GitHub

Dr. Bertrand Caron Full Stack Software Engineer | Data Scientist

Brisbane, Australia

Profile

Doctor in Computational Biochemistry with 7+ year experience in Software Engineering, DevOps and Data Science. I have a passion for writing great software, to solve hard problems, in simple ways. I have extensive experience building backends and scalable REST APIs, with a string interest for new frontend technologies like React. I also have experience leading teams, products and projects.

Experience

Tech Lead (Supervisor: Dr. David Raffelt)

Brisbane, Australia
Fugro
June 2020 - April 2021

As a Tech Lead, I was responsible for the development of an internal software product that provides solutions for Fugro's data management and data lineage issues. As part of this role, I was also managing up to four innovation engineers (Team Lead), and responsible for stakeholder engagement and prioritisation of the product backlog (Product Owner).

  • Stack: Go Express (Typescript) backend, React front-end

Team Lead (Supervisor: Dr. David Raffelt)

Brisbane, Australia
Fugro
November 2019 - June 2020

As a Team Lead, I was managing a team of four data scientists and innovation engineers to write Cloud Automation software that delivered value to our clients. I was responsible for providing technical leadership to the team and ensuring Agile best practices were utilised by the team (Scrum Master).

  • Stack: Julia / Python (numpy, opencv, tensorflow) backend, AWS Lambda and AWS Fargate integration

Innovation Engineer (Supervisor: Dr. David Raffelt)

Brisbane, Australia
Fugro
December 2018 - November 2019

As an Innovation Engineer, I was responsible for developing software and/or algorithms to support Fugro products, data processing automation and client services delivery.

  • API design (Golang, PostgreSQL 10+)
  • Implementing software best practices: automation pipelines (CI/CD), continuous testing and deployment

PhD Student (Supervisor: Prof. Alan E. Mark)

Brisbane, Australia
The University of Queensland
April 2015 - Now
During my PhD, I have developped the following skills:
  • Software Engineering I have written code for more than 30 projects, some of them open source and available on my Github. They total tens of thousands of lines of code and span areas ranging from graph matching to combinatorial optimisation.
  • Communication I have presented my PhD work at conferences in multiple countries: Germany, The Netherlands, Switzerland.
  • Project Management and Collaboration I have led multiple international collaborative projects: Bennion Brian (LLNL, USA), Engler Martin (HHU, Germany).
  • Writing I have co-authored multiple scientific papers and wrote a thesis (120 pages and counting).
  • Data Analysis I have analysed large datasets in search of patterns.

Research Assistant (Supervisor: Prof. Alan E. Mark)

Brisbane, Australia
The University of Queensland
Jan 2015 – Mar 2015
The Automated topology Builder and Repository is a python-CGI website backed up by an MySQL database and sitting on an Apache server. It totals 180,000 submitted molecules, more than 6,500 users and up to 2,000 page views per day. My contributions involved:
  • Database Refactoring: Shrinking the database by 95% by moving files from the database to the file system.
  • MVC Refactoring: Refactoring of the code to comply to the Model - View - Controller paradigm. Heavy use of Jinja2 templates
  • Implementation of a RESTful API: Both as a way to integrate new features as well as standardising old ones.
  • Search Engine Optimisation (SEO): Implementation of a SEO strategy with Google Analytics, tracking of download and topology generations with custom-labeled events

Experimentally-guided coarse-grained RNA folding (Supervisor: Prof. Samuela Pasquali)

Paris (France)
Laboratoire de Biochimie Theorique (LBT), Institut de Biologie Physico-Chimique (IBPC)
Feb-July 2014
  • Development of SAXS-CG, an Ab-Initio Small-Angle X-ray Scattering (SAXS) profile prediction tool written in Fortran

Properties of Model Regnum-Specific Lipid Bilayers (Supervisor: Dr. David Poger)

Brisbane (Australia)
School of Chemistry and Molecular Biosciences, The University of Queensland
Feb-July 2013
  • Advanced shell scripting (awk) and data visualisation (gnuplot), Python programming (Quantum Mechanical output text parser)

Introduction to Protein Dynamics (Supervisor: Dr. Sophie Barbe)

Toulouse (France)
Laboratoire d'Ingénierie des Systèmes Biologiques et des Procédés (LISBP)
June-July 2012
  • Discovery and use of scientific software: Unix Environment, Shell Scripting (Bash, Zsh)

Education

PhD (Doctor of Philosophy) in Computational Biochemistry

Brisbane (Australia)
The University of Queensland
April 2015 - Now
  • Thesis title: "Improving Automated Force Field Parametrisation for Molecular Simulation: A Graph Approach" (Link)
  • Funded by a UQI scholarship.
  • Submitted (October 2018), currently under review.
My thesis focused on the use of graph-based approaches to develop new automated parametrisation paradigms which can exploit large data sets to simultaneously develop and assign parameters for empirical force field used in Biomolecular simulations. Many of the tools developed as part of this thesis have been open-sourced on Github (github.com/bertrand-caron) and have been made available to the scientific community.

Master of Science and Technology in Analytical, Physical and Theoretical Chemistry

Paris (France)
École Normale Supérieure (ENS) - University Pierre and Marie Curie (UPMC)
2012 - 2014
Relevant courses: Multi-scale modelling of complex systems, Modelling principles and methods of molecular properties, Molecular modelling: applications, Elementary processes in chemical reactivity: from simple to complex systems.

Bachelor of Science and Technology in Chemistry

Paris (France)
École Normale Supérieure (ENS) - University Pierre and Marie Curie (UPMC)
2011 - 2012
Relevant courses: Cell Molecular Biology, Chemical Kinetic and Reactivity, Intermolecular Bonding.

"Classe Préparatoire aux Grandes Écoles" in Physics, Chemistry and Engineering Sciences

Paris (France)
Lycée Henri IV
2009 - 2011
Two-year intensive Chemistry (12 hours/week), Mathematics (12 hours/week) and Physics (10 hours/week) courses to prepare for a two-month national examination. Received at the École Normale Supérieure ULM.

"Baccalauréat Scientifique", English European Section, magna cum laude ("Mention Très Bien")

Amiens (France)
Lycée Louis Thuillier
2008 - 2009

Skills

Computer Languages

Python

Lambda functions, major libraries (subprocess, sciPy, numPy), module development

Go

Written multiple production services in Go, including advanced features: goroutine, memory and CPU profiling (gprof)

Javascript / TypeScript

Common libraries (fetch, Node, Express), writing both front- and back-end code, mostly in TypeScript

Ruby

Experience building WebApps with Ruby on Rails framework

Bash

Functional programming in bash, development of large libraries (2k+ lines), multithreaded scripts

Julia

Basic Julia (data science)

Haskell

Basic functional programming: static typing, currying, pattern matching, guards

Objective-C

Cocoa framework, XCode

Fortran

Multiple big projects, including development of modules, derived types and operator overloading

Frameworks

React-Native

Building cross-platform mobile applications

React

Experience building single page application (SAPs) with React; hooks and functional components

Cloud Providers

AWS

Extensive experience with AWS, including AWS CLI and AWS Cloud Development Kit (CDK)

Markup - Typesetting - Data Visualisation

Data Visualisation

Advanced scientific plotting experience: matplotlib (Python), flot.js (Javascript)

HTML

Experience with advanced Markup: Google's structured data, templating

CSS

Experience with popular libraries (Bootstrap) and icons (Font Awesome)

LaTeX

Typesetting large, complex documents with a robust, programmable and version-controlled approach

Databases

MySQL - MariaDB - SQLite - PostgreSQL

Experience with large tables (millions of rows), table refactoring, query optimisation

Neo4j

Basic graph queries

DynamoDB

Experience with basic DynamoDB functionalities (Query/Scan), primary and sort keys

Redis

Basic usage as a key/value store (implementing memoization cache)

Workflow Tools

Git

Advanced git worklow: branching, merging, rebasing, submodules

VIM

Mouse-free productivity, most advanced features : syntax highlighting, code folding, key mapping

Makefile

Automated data-driven workflows

Programming Paradigms

DRY (Don't Repeat Yourself)

Extensive eperience with refactoring large, legacy codebases

Functional Programming (FP)

Haskell, Functional Python (no control flow statement, writing pure functions)

Test Driven Development (TDD)

Testing libraries: unittest (Python), cucumber (Ruby); code coverage

Object-Oriented Programming (OOP)

Python Classes, Inheritance

Continuous Integration

Experience with Gitlab CI and GitHub Actions, continuous deployment with git submodules

Coding Techniques

Code Optimization

Experience with profiling tools: Apple's Instruments, GDB, Python's PDB

Code Parallelization

Experience with both OpenMP and MPI, subprocess (Python), Cluster (JS)

DevOps

Docker

Advanced Docker features: multi-stage builds, BuildKit, layer optimisation

Linux Distributions

Experience with Ubuntu (14.04, 16.04), CentOS (6, 7), Darwin; package managers

Hosting - Web Servers

DNS Records, Apache, NGINX, CGI (uwsgi, Flask), HTTP/HTTPS

Cloud Computing

Amazon Web Services (AWS) EC2 (t2.micro), Nectar Research Cloud, HPC

Presentations

Writing modern (3.8+) Python Code

Brisbane PyLadies, Brisbane (Thursday, 4 March 2021)
Make sure you are aware of (and using!) the latest Python features, so you can get the most out of your code. Included will be things like type hinting, f-strings, named tuples/dataclasses and the infamous walrus operators!

Writing modern (3.6+) Python Code

Brisbane PyLadies, Brisbane (Thursday, 6 February 2020)
Included will be things like type hinting, f-strings, names tuples/ dataclasses and maybe some tooling!

Publications

The molecular origin of anisotropic emission in an organic light-emitting diode

Nano Letters (2017)
T. Lee, B. Caron, M. Stroet, D.M. Huang, P.L. Burn, A.E. Mark

Elucidating the Spatial Arrangement of Emitter Molecules in Organic Light‐Emitting Diode Films

Angewandte Chemie (2017)
C. Tonnelé, M. Stroet, B. Caron, A.J. Clulow, R.C.R. Nagiri, A.K. Malde, P.L. Burn, I. R. Gentle, A.E. Mark, B.J. Powell

Validating lipid force fields against experimental data: Progress, challenges and perspectives

BBA - Biomembranes (2016)
D. Poger, B. Caron, A. E. Mark

Some Like It Hot: The Relative Effect of Membrane Composition on Lipid Ordering

J. Phys. Chem. Lett. (2014)
B. Caron, A.E. Mark, D. Poger

Effect of Methyl-Branched Fatty Acids on the Structure of Lipid Bilayers

J. Phys. Chem. B (2014)
D. Poger, B. Caron, A.E. Mark

Teaching

Tutor

Brisbane (Australia)
The University of Queensland
August 2015 - November 2017
  • CHEM3011: Advanced Physical Chemistry Semester 2, 2015-2017: 16-45 students, 3 hours per week
  • SCIE2100: Introduction to Bioinformatics Semester 1, 2016-2017: 52-55 students, 3-6 hours per week (2016: received tutor award)

Tutor - Oral Examiner (2 hours/week, groups of 3-4 students, class of 40+)

Paris (France)
Lycée Henri IV
August 2015 - November 2017
Oral examiner for students in first year of 'Classe Préparatoire aux Grandes Écoles' in Physics, Chemistry and Engineering Sciences.

Awards

HealthHack BNE (3rd place)

November 2017
Andra: A robot conversation with patients to encourage healthy lifestyle choices
November 2017

Tutor Award – School of Chemistry and Molecular Biosciences (SCMB)

October 2016
Awarded to top 10% tutors
October 2016

Shortlisted for the 2015 Lush Prize (Young Researcher Category)

August 2015
August 2015

2015 CTCMS Symposium Poster Prize

May 2015
Awarded first prize for 'Insights Into the Structure and Order of Bacterial Membranes'
May 2015

UQ International Scholarship (UQI)

April 2015
Scholarships awarded competitively, based on merit, to outstanding international students undertaking a research higher degree.
April 2015

XXVth French Chemistry Olympiads (2nd)

2009
Medaled by the French Academy of Science for ranking Second.
2009

Referees

Prof. Alan E. Mark

VC Senior Research Fellow, School of Chemistry and Molecular Biosciences, The University of Queensland (Australia)

Assoc. Prof. Mikael Boden

Course Supervisor (SCIE2100), Assoc. Prof. of Bioinformatics, The University of Queensland (Australia)