Portrait of Pierre Thalamy
Paris, France

Pierre Thalamy

Lead Software Engineer at Uptale

I build and run the software behind an immersive learning platform: backend services, cloud infrastructure and the tooling a small engineering team needs to ship with confidence. Full-stack by trade, strongest on the backend and infrastructure side.

Before industry, I completed a PhD on distributed self-reconfiguration algorithms for modular robots, working towards programmable matter at the FEMTO-ST Institute.

C# / .NET ASP.NET Core Azure Terraform React TypeScript C++ Distributed systems

Experience

Full CV
  1. Lead Software Engineer

    Uptale, Paris 2020 to present

    Uptale is an immersive learning platform that lets companies create, distribute and track 360° and virtual reality training at scale. I joined as a Senior Software Engineer shortly after my PhD and now lead a small engineering team while staying hands-on.

    • Own the backend and cloud infrastructure of the platform: ASP.NET Core services on Azure, provisioned and versioned with Terraform.
    • Lead the day-to-day of the engineering team: technical direction, code reviews, mentoring and delivery planning.
    • Ship full-stack features end to end, from data model and API to the React and TypeScript front end.
    • Drive reliability, observability and security work on a platform used by large enterprise customers.
    C#ASP.NET CoreAzureTerraformReactTypeScript
  2. PhD Researcher in Computer Science

    FEMTO-ST Institute, CNRS, Université Bourgogne Franche-Comté 2017 to 2020

    Research on distributed intelligence for programmable matter: how large ensembles of simple modular micro-robots can coordinate to rearrange themselves into arbitrary 3D shapes, quickly.

    • Designed scaffold-based self-reconfiguration algorithms that bring reconfiguration time down to O(∛N) for classes of shapes, with N the number of modules.
    • Technical lead on VisibleSim, the C++ modular robot simulator used by several research teams worldwide.
    • Five publications in international journals and conferences (AAMAS, IROS, RAS, SWEVO); thesis defended in October 2020.
    • Taught and coordinated undergraduate courses in networking, security and operating systems.
    C++Distributed algorithmsMulti-agent systemsSimulation
  3. Software Engineer, graduation project

    Supralog, Antibes 2017, 6 months

    Designed a secure REST backend in C# for an ERP aimed at non-profit organisations, a reactive Vue.js module for its web app and a cross-platform Xamarin mobile application on top of the same API.

  4. Research Assistant

    The Hong Kong Polytechnic University 2016, 4 months

    Took VisibleSim from a pre-release prototype to its first stable version: architecture overhaul, refactoring, documentation and new modules to support ongoing research.

  5. Research Assistant, Claytronics project

    Carnegie Mellon University, Pittsburgh 2014, 5 months

    Contributed to modular robotics research for programmable matter and implemented in C an embedded virtual machine for the Meld declarative language, later used in teaching and research.

  6. MSc in Computer Science and Engineering

    Grenoble INP - Ensimag 2014 to 2017

    Graduated with high honours, specialising in information systems engineering. Exchange semester at Universidad Politécnica de Madrid.

Selected work

Uptale platform

The backend and infrastructure of a SaaS used by large organisations to build and deliver 360° and VR training to headsets, browsers and learning management systems. Reliability, security and scale.

.NETAzureTerraform

VisibleSim

Open source C++ simulator for modular robots and programmable matter. I led its development for five years, from a research prototype to a tool used by teams in France, Hong Kong and the United States.

C++OpenGLOpen source

Scaffold-based self-reconfiguration

My doctoral research: a deterministic, fully distributed way for swarms of rotating micro-modules to build the internal scaffold of a shape and coat it, cutting reconfiguration time by orders of magnitude.

Distributed algorithmsSwarm robotics

Meld virtual machine

An embedded virtual machine written in C for Meld, the declarative language of the Claytronics project at Carnegie Mellon, so that logic programs could run directly on resource-constrained robot modules.

CEmbeddedLogic programming

Selected publications

All publications
  1. ThesisUniversité Bourgogne Franche-Comté, 2020
    Pierre Thalamy
  2. JournalSwarm and Evolutionary Computation, 2020
    Pierre Thalamy, Benoît Piranda, Frédéric Lassabe, Julien Bourgeois
  3. JournalRobotics and Autonomous Systems, 2019
    Pierre Thalamy, Benoît Piranda, Julien Bourgeois

Talks & media

PhD defense replay

Recorded on 9 October 2020 in Montbéliard, France. The presentation itself starts at 22:45; the chapters below jump straight to each part.

  1. Opening
  2. Presentation
  3. Questions & answers
  4. Director's feedback
  5. Award