We are Tweag I/O

for composable software

Modular, simple, composable. It's the only way we have found to build fast, correct and maintainable software. Modular means that we build software as a collection of independently useful and reusable parts. We ruthlessly refactor each part to keep it focused on a single purpose, making it simple. We deliver software fast by thinking about composability left right and centre, connecting parts together from whichever direction, like train wagons. Composability lets us express arbitrarily complex behaviours with less code.

Functional, typed, immutable. These are the key technologies for composable software. We build parts as functions, because functions compose where objects do not. We use types to describe functions, because one type is worth a thousand out-of-date comments. We keep data immutable, because immutability lets us focus on the business logic holistically without getting bogged down by hundreds of corner cases.

Dec. 2013


Nov. 2015

Paris office opening

Oct. 2015-2018

Horizon 2020 SAGE participant

Sep. 2016

New Cyprus office

Jan. 2016

Awarded French "Innovating Enterprise"

Oct. 2017

Tweag UK opening


Didier Mascarelli


PhD (INSA Lyon) in artificial intelligence. 25 years of international sales and marketing experience.


Hatha Yoga teacher

Rock climbing

Mathieu Boespflug

Founder and CEO

PhD (École Polytechnique) formal methods and compiler design. Dreams distributed systems.

Banging bits in Haskell


Building factories that build factories

Benjamin Robin

Chief Financial Officer

MBA (ESSEC). Former financial auditor and Head of Finance. In love with Excel for financial modelling and reporting.

Playing with Excel

French grammar


Theodora Tsentas

Operations Manager

A journalist by training, managed a media ethics think-tank and agricultural research scholarships. I keep things ticking around here.

Budgets and forecasts

Decreasing entropy in the Tweagverse

Compulsively renaming Drive folders

Stephanie Bertels

Tweag I/O Limited

Background in market research for new product innovations. MSc in International Business.

Sign things

Spreadsheet aesthetics expert


Office Manager

From SF to Paris to digital nomad wannabe. Over a decade of experience running & optimizing daily business operations in the tech world. Live, learn and run!

Juggling & checking Asana tasks

Happy tech champion

Slow food ninja

Arnaud Spiwack

Senior Architect

PhD (École Polytechnique) in homological algebra and dependent types. Core team of Coq proof assistant. Mathematician and software engineer. Wish Bear.

Torturing type systems

Solving Rubik's cube

Putting topoi in your computer

Manuel Chakravarty

Functional programming evangelist

PhD (Technische Universität Berlin) concurrent functional programming & compilers. Lambda Scientist.



Compulsively checking Twitter

Eelco Dolstra

Senior software engineer

Nix project founder. PhD (Utrecht University) on purely functional software deployment. Programmer-Archeologist.




Tom Nielsen

Data Scientist

PhD (Neuroscience, UCL). Data scientist with a background in experimental and computational science. I like to invent new ways of building predictive models.

Basic Simple Functional Programming

Bayesian Probabilistic Programming

Patch clamping

Matthias Meschede

Data Scientist

PhD Geophysics (IPG Paris). Passion for Science. Reduces data to color.

Data wrangling

Physical modeling

Classical music

Dominic Steinitz

Applied mathematician

PhD (Kingston) Applied mathematician, statistician & functional programmer. Jack of all trades - closet differential geometer.

Data modelling


Blogging my enthusiasms

Graham Christensen

Nix Community Leader

Taking Nix to the next level. Founder, NixOS Security Team. Author of OfBorg, the Nixpkgs continuous integration tool.


Community Management


Ben Ford

Culture + Performance Commando

Former Royal Marine. Martial artist. Rider of motorcycles. Chef. Applying lessons from all of those to building elite development teams.

Building high performance dev teams


Continuous improvement

Jonas Pfenniger Chevalier

Automation Architect

Managing infrastructures with code. And a healthy dose of stubborness.




Facundo Dominguez

Senior software engineer

MSc (Montevideo) in program fusion transformations. Software craftsman and engineer. Maintainer of Cloud Haskell. Dreams of ways to make software correct.

Bug hunting

GHC hacking

Nick Clarke

Senior Software Engineer

MMath (Oxford). Likes tidying codebases and writing documentation in verse. Secretly hates type classes.



Hanging upside down

Alexander Vershilov

Senior software engineer

PhD (Saint Petersburg State) theoretical physics. Tying the knot between abstract problems and computer aided solutions. Gentoo developer.

GDB-ing Haskell


Growing a long beard and long hair

David Smith

Site Reliability Engineer

Idris fanboy, Magpie, former chef. Won't stop believing that software development can be better. Helping to make academics dreams a reality.



Making developers' lives easier

Antoine Eiche

Site Reliability Engineer

PhD (Rennes) on Hopfield neural networks. Running several IaaS/PaaS on my laptop. Dream of SSH-less datacenters.


Production line Monkey Patching


Kris Jenkins

Functional Frontend specialist

Startup veteran and former CTO, Kris is happiest at the interface between technology and end-users: the frontend.

Polish It, Ship It

David Bowie Envy

It's Just A Monoid

Yves Parès

Software Engineer

PhD (UPMC Paris 6) medical informatics, knowledge engineering. NLP enthusiast. Cursing the typesystem when coding in Haskell and longing for it when coding in Clojure.

Functional programming

Knowledge bases, RDF and ALCUEQOBHIR+

Typing þ and ð on a QWERTY keyboard

Andreas Herrmann

Software Engineer

PhD Computational physics (Fribourg, ETH Zurich). Functional programming enthusiast. Hacks Haskell for fun.



FP in C++ templates

Gaël Deest

Software Engineer

PhD (Rennes) on FPGA accelerators. Functional programming convert. Dreams of expressive tools for designing type-safe hardware.

Taming HLS design tools


Modeling programs as polyhedra

Nicolas Mattia

Software engineer

I am a system control engineer. Fast, correct and maintainable code is too important to leave it to software engineers, so I entered the fray.


Salvaging codebases

Kalman filters and PID controllers

Théophane Hufschmitt

Software Engineer

Msc (École polytechnique) in programming languages theory. Grows a binary tree in his garden.


Writing Haskell in Ocaml

Writing Ocaml in Haskell

Mark Karpov

Software Engineer

Haskell enthusiast and open source contributor. Balancing correctness with reality.



Struggling with Nix

Guillaume bouchard

Software Engineer

PhD (UCBL Lyon 1) computer graphics. Looking for the perfect tool to do the job.

Writing hideous C++ hacks for performance

Real-life clouds expert

Writing a ray-tracer in any language

Juan Raphael Diaz Simões

Software Engineer

PhD (École Polytechnique) in formal methods in embryogenesis. Learned to code by listening to a compiler. Wants to refactor the world.


Repetitive tasks


Krzysztof Gogolewski

Software engineer

MSc (École Polytechnique) in computer science, BSc (University of Warsaw) in mathematics. Puts type systems on everything.

GHC hacking


Computational complexity

Shao Cheng

Software Engineer

Late stage Haskell addict. Enjoys chasing buzzwords. Working on a Haskell to WebAssembly compiler.


DSLs and Compilers

Web Development

Andrienne Papadopoulou

Financial analyst

MSc Investement and Risk Finance. In love with numbers, google apps and nature.

Populating spreadsheets


Philip Patsch

Site Reliability Engineer

Fell into the FP potion as a young programmer. Everything is a compiler if you do it right. Like my parsers, my humour is usually context-free.

Fixing linker errors

Duct-tape w/ strong types

Drinking Club Mate

Félix Baylac

Site Reliability Engineer

Jack of all trades, master of some. Dreams of correct, maintainable, reproducible software by night. Tries to accomplish that by writing Haskell and Nix by day.

Software Archeology

We need to write a tool for that

Hyperlinking the typeclassopedia on message boards

Saeed Hadikhanloo

Data Scientist

PhD (U. Paris Dauphine) Applied Mathematics. Math problem solving enthusiast. Seeking the beauty of math through models. An old math olympiad participant.

Math modeling/coding

Statistical learning

Driving on highways

Sebastian Kazenbroot-Guppy

Software Engineer

Currently focused on Haskell, Elm, game development. Loves finding elegant solutions to hard problems.

Leveraging Type Systems

Writing Go (programming language)

Playing Go (board game)

Florian Klink

Site Reliability Engineer

Instantiates infrastructure in the morning, digs into arcane low-level things in the evenings, dreams of an IPv6-only world at night.


Uncluttering codebases

Debugging your toaster

Tobias Pflug

Senior Software Engineer

Started out with C, Assembler and oscilloscopes and fell in love with FP, Types and Nix eventually.



Conference organizing

Nicolas Bacquey

Software Engineer

PhD (U. Caen Normandie) on cellular automata. Loves learning and solving hard problems. Sees tree transductions everywhere.

Computational complexity

Algorithmics on exotic models


Roman Cheplyaka

Software Engineer, Bioinformatician

MSc (Manchester) bioinformatics & systems biology. With Haskell for 10+ years and still in love.

Analyzing DNA sequences

Writing Haskell

Using Nix

Hans Hoeglund

Senior Software Engineer

Composer and functional programmer. I enjoy finding simple solutions to hard problems, usually by looking for a category.



Distributed Systems