François-René Rideau
Architecting Solutions to Softwaring Processes

Phone: +1 617 575 9012
French national, US permanent resident

Click here for a printer-friendly version.

Work Experience

Bridgewater Associates, Wilton, CT (Senior Cloud Developer)9 months
Secure reproducible cloud deployment on Amazon AWS. Refactored the existing build and configuration system using Buildbot, Make, Python, Jsonnet and Terraform; then redesigned it using Scala, Nix, Pants and Terraform.
Google, New York, New York (Developer Experience Designer)3 years
DX Design for Software at Scale — thousands of developers controlling zillions of machines.
Partook in open-sourcing the deterministic distributed build system
Refactored the design and implementation of Bazel’s extension language Skylark.
Added garbage collection to the
git support of the code hosting platform
ITA Software, Cambridge, Massachusetts (Senior Software Engineer)8 years
Airline information systems (acquired by Google in 2011): airfare search engine QPX; passenger reservation system QRes.
Co-authored an Object-Relational Mapper for transaction processing with Oracle; notably automated schema upgrade.
Designed, developed and supported the build, test and deployment infrastructure; coordinated release with other teams.
Audited code for security. Added messaging features. Decoded legacy data and created a distributed engine to migrate it.
Ported the codebase to a 64-bit Lisp compiler. Curated free software libraries, compilers.
Worked alone or in tight-knit team. Managed up to five interns. Worked on team reorganization.
CRPGL, Luxembourg (Researcher)18 months
Public Research Center. Developed web-based collaborative tools in Common Lisp.
IDEALX, Paris, France (Consultant)8 months
Open Source Engineering Consultancy. Consulted on B2B middleware, real-time high-level languages, secure terminals.
   Proved formal correctness (in Coq) of a centralized e-cash payment protocol.
France Telecom, Paris, France (Research Engineer)36 months
Researched under Jean-Bernard Stefani. Experimented with distributed calculi.

Technical Skills

Interaction design for creative processes. Software development toolchain and team organization. User Experience and Developer Experience. Controlling overall man-machine system complexity to achieve flexibility and maintainability, robustness and security — ultimately end-user satisfaction at sustainable costs.
Design and implementation of distributed agent systems, programming languages, operating systems, cryptographic protocols, transactional object persistence, real-time memory allocation, resource management with or without a kernel.
Operating Systems
System Administration for Linux (NixOS, Debian, RedHat), BSD, Solaris; macOS, Windows.
Programming Languages
Common Lisp, Scala, Racket, Clojure, Shell, Java, C, OCaml, Haskell, Javascript, Python, Perl, PL/SQL, Smalltalk, C++, Erlang, FORTH, Assembly (x86, 6502, ARM), BASIC, Prolog, etc.
Distributed programming. Firewall, VPN, routing, TCP/IP, filesystems, DNS, SMTP.
Web Development
Static and dynamic services (AJAX or continuation-based/modal interface), HTTP, Apache, PHP, MySQL, Oracle, Lisp, XML, SSL, PKI...)
Scribble, LaTeX, SGML, XML, Markdown.
Special Skills
Formal logic, proofs. Metaprogramming. Object-Oriented, Logic and Functional Programming. etc.
“Artificial Intelligence”
Search strategies and heuristics, declarative programming, inference engines. Reflection for monitoring and metaprogramming. Basic statistical text analysis, fuzzy logic. Algorithmic complexity, with notable applications to Data compression or PAC-learning. Knowledge bases and data representation. Human-Computer Interaction and software usability.

Formal Training

PhD candidate in Computer Science at École Nationale Supérieure des Télécommunications (Paris).
Thesis subject: the semantics of reflective systems, as applied to building distributed systems.
Research interrupted to pursue professional opportunities.
DEA d’Informatique at the ESSI (University of Nice). [Equivalent to Masters in Computer Science]
+ Teacher in Mathematics in a high-school (Professeur Agrégé).
Student at the École Normale Supérieure (rue d’Ulm, Paris). [Best school for scientific research in France]
Various university diplomas and titles from examinations and competitive examinations in Mathematics and Computer Science.
Specialized in the Formal Semantics of Computer Programs under Patrick Cousot.
Teaching assistant in Computer Science and Mathematics in introductory university-level classes.
High-school then university-level studies at the Lycée Louis-Le-Grand (Paris).
Baccalauréat C (Maths) 1990. Classes Préparatoires.

Mission Statement: Contributing Vision to Software Development

I will study your problem domain and distill its essence in a domain-specific language; around this language I can then design, implement and evolve radically simple solutions that are robust and maintainable, secure and efficient.

I enjoy getting my hands dirty, but first I want to understand where we are going. I will pick the low-hanging fruits first, but as part of a plan to pick all marginally affordable fruits. I will use sound theory to achieve massive practical gains — and avoid predictable pitfalls.

Many development teams have a narrow horizon that leads them to code bloat and bad quality, with diminishing returns and accumulated technical debt. Our team will keep a broad horizon to maintain a sustainable development environment. Many teams are blinded by focus on hardware devices and software artefacts and end up sacrificing the ends to the means; our team will include user experience and developer experience in our designs, and optimize the interactions that matter.


Native French speaker. Fluent in English.High-school Spanish. Basic Vietnamese.
Maintainer of Common Lisp build tools. Contributor to many free software projects, mostly in Lisp.
Co-organizer of monthly Lisp meetings. Secretary of the Association of Lisp Users.

Wrote essays and spoke at conferences on Free Software. Wrote essays and spoke at conferences on Economic Liberty.

Previously: Was CTO for an off-shore software development consultancy,
Founded the TUNES project for a free reflective computing system.

Blogging about Computing Systems vs Computer Systems at
Blogging at — tweeting at — Composing songs.

Select Peer-Reviewed Publications


François-René Rideau. Metaprogramming and free availability of sources, January 1999. Translated from the french article “Métaprogrammation et libre disponibilité des sources” published in conference “Autour du Libre 1999”.
François-René Rideau and Robert P. Goldman. Evolving ASDF: More Cooperation, Less Coordination. In International Lisp Conference, 2010.
François-René Rideau. LIL: CLOS reaches higher-order, sheds identity and has a transformative experience. In International Lisp Conference, 2012.
François-René Rideau. ASDF 3, or Why Lisp is Now an Acceptable Scripting Language. In European Lisp Symposium, 2014.
François-René Rideau. From Software Creationism to Software Evolutionism. In Salon des Refusés, April 2017.