Resume

Thomas Coopman - Independent Software Consultant

Thomas Coopman has been fascinated with computers since he was a kid. Playing around at first, became programming later and after learning some programming for himself and a small detour starting studies for nursing, he went on and studied Master of Informatics at the KULeuven.

Thomas is a polyglot and loves to learn new languages. His latest language studies have taken him to Elixir, Elm, OCaml and he has a special affinity for functional programming languages.

Thomas is an independent software consultant, coach and architect focused on improving software through people. Thomas is also currently active in the DDD Belgium and Software Craftsmanship Belgium community.

Work

Infinite Tree 2016-01 - Current

Independent software consultant.

SD Worx 2018-01 - 2018-03

  • Consultant for Continuous Deployment: Investigate if it’s possible to roll out a continuous deployment pipeline across many teams.

Keywords: Continuous Deployment, Agile

Teamleader 2017-01 - 2018-01

  • Frontend Consultant:
    • Designing a frontend architecture that avoids the frontend monolith. I also gave a talk about this.
    • Coaching the frontend developers in building clean frontend applications with React and Redux.

Keywords: Frontend Architecture, React, Frontend Microservices

Protime 2015-05 - 2017-12

  • Team leader
  • Senior software developer Ruby, Javascript and C#
  • Agile software development
  • Architect

I started as senior developer on a ruby on rails project. I helped reducing accidental complexity in the code base and transformed the team from sprints to kanban.

After this I joined a different team on a C#(Event Sourcing/CQRS)/Javascript(React/Redux) project that was struggling to deliver. Here I started reducing the complexity in both the frontend and backend and also transformed this team to kanban. After a few months we went live with our first customers and started growing quickly. To support the grow we invested heavily in continuous deployment and continuous improvement.

During the whole time at Protime I was part of the architecture board where we discussed and guided architectural decisions. I also helped a transformation to feature teams so that more people were able to work on the same product. This transformation was both in architecture (microservices) and organisational.

Keywords: C#, Javascript, Ruby, React, Redux, Vue, Kanban, Event Sourcing, CQRS, DDD, Microservices, Continuous deployment, Authorization engine

Kenniscentrum Openbaar Domein (K-O-D) 2015-04 - current (continued as consultant)

  • Development of a road inspection tool with:
    • Elixir for a backend GPS transformation tool
    • Typescript/React frontend
    • Docker to develop and deploy
  • Development of a longitudinal profile for sewers:
    • Typescript/React and Bucklescript frontend
    • Elixir as backend server for pdf printing
    • NodeJs as pdf generation tool

Keywords: Typescript, Javascript, React, Elixir, NodeJs, Docker

Kenniscentrum Openbaar Domein (K-O-D) 2010-07 - 2015-04 Projectleader for IT projects

  • Development and project leader for a GIS Viewer, mostly for sewers
  • Project lead and development of a platform for searching and creating public domain projects in synergy

Interests

Hobby projects:

In my spare time I always try to learn. I focus on things that are relevant on the job or things that will broaden my perspective. This ranges from new programming languages (Elm or OCaml) for example, to DDD, architecture of coaching. I try to focus on a broad aspect of things, and go deeper into detail where necessary.

On my github or goodreads you can see some of these topics. On my github account you can also see that I try to participate in open source project and I’m also a maintainer for some small open source projects.

Meetups and conferences:

Keywords: DDD, Socrates, Workshops

Hobbies:

Education

Master of Informatics (KULeuven)

Masterthesis: A framework for dynamic extensible and context-driven domotics systems (A User-Oriented and Context-Aware Service Orchestration Framework for Dynamic Home Automation Systems)

A prototype of this framework was developed in Java, Qt with an ontology framework.

Relevant Trainings

Skills

Methodologies
Domain Driven Design Evolutionary Architecture
Kanban Agile software development
Continuos improvement
Backend
C# Elixir NodeJs
Ruby Java Python
OCaml Go
Frontend
Javascript Elm ReasonML/Bucklescript
HTML CSS Reactjs + Redux
GIS
ArcGIS Server + Desktop Geoserver
Leaflet Openlayers

Thomas Coopman

Software Consultant