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


Sep. 2016

New Cyprus office

Nov. 2015

Paris office opening

Oct. 2015-2018

Horizon 2020 SAGE participant

Jan. 2016

Awarded French "Innovating Enterprise"


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

Mathieu Boespflug


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

Banging bits in Haskell


Building factories that build factories

Stephanie Bertels

Tweag I/O Limited

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

Sign things

Spreadsheet aesthetics expert

Nadiannie Moungomo

Office Manager - Paris

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

Eva D'hondt

Data Scientist

PhD (Radboud) in Natural Language Processing. Language engineer and data scientist. Occasional wrestler of neural networks.

Text Mining


Reducing ambiguity, one oxford comma at a time

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

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

Mateusz Kowalczyk

Software Engineer

Computer scientist, spare time hacking, few years Haddock maintainer, now distributed systems and production Haskell. I like Agda, nix, Haskell and other cool stuff.

Type wrangling

Space-leak chasing

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

Félix Raimundo

Data engineer

Fond of designing concurrent systems while drinking whisky.

Moving around and enriching data



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

James Haydon

Software engineer

PhD (Oxford) Geometry and higher category theory. Likes trying to apply n-categories to software problems.



Drawing commutative diagrams

Jonas Pfenniger Chevalier

Devops engineer

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




Olivier Nicole

Engineering intern

Distributed systems and compiler design.


Making coffee

Ioanna Mavromiti

Administrative assistant