Beat Hagenlocher
Founder @surplus.dev
About Me
I want to do good better, and be less wrong.
Looking to apply my skills in software engineering, teaching, design and ops to work on the world's most pressing problems.
Interested in AI Safety, Education, Macroeconomics, Mathematics, Local-first Software, Systems Thinking, Category Theory, Learning and Programming Languages.
Currently growing my digital garden, playing around with my Doom Emacs config, building humane.tools, and thinking about where to go next.
When I'm not at the computer/learning/reading, you can find me on walks with friends, doing sports, or organizing my favouriteyouth camps during the summer.
Skills & Abilities
Frontend: TypeScript · SolidJS · TailwindCSS · UnoCSS · Phoenix LiveView · ClojureScript
Backend: Clojure · Elixir · Haskell · SQL · PostgreSQL
Also: Racket · C · Rust · Nix · NixOS · Docker · Git
Software Architecture
Functional Programming
Local-first Software
Customer Development
Web Design
Design Thinking
Systems Practice
The Mom Test
The Heart of Innovation
Analytics (event tracking, funnels, user paths) to understand my readers' needs on my digital garden and to drive a website redesign at active group GmbH.
PostHog
Plausible
Style: Towards Clarity and Grace
Practical Typography
Experience
- Applied Systems Practice to the problem of digital collaboration
- Built prototypes
- Conducted Customer Development Interviews
- Set up a tech stack ensuring velocity
- Built an MVP
Surplus | Mox SF
A 3-month startup accelerator program for generating public good (aka. surplus)
Participating Founder
Founding
Software Engineering
Software Architecture
User Testing
Analytics
Built the todo app from scratch, iterating through learnings from Customer Development Interviews.
Software Architecture
TypeScript
Nix
SolidJS
TailwindCSS
Local-first Software
Design
AI Safety Fellowship | AI Safety Tübingen
A 3-month fellowship for 20 fellows with stipends and housing.
Project Lead | Grantwriting
Making decisions under uncertainty: finding mentors, organizing housing, estimating a budget, gathering support from stakeholders like the ELLIS Institute/the Max Planck Institute, writing the grant application for Coefficient Giving.
Operations
active group GmbH
Software Architect
Writing software for German industrial clients: a Clojure monitoring platform for a factory, and a user-facing map application with a SolidJS/TypeScript frontend and a Clojure backend.
Software Architecture
TypeScript
Clojure
ClojureScript
Docker
Nix
SolidJS
UnoCSS
TailwindCSS
Emacs
nvim
Deutsche Schülerakademie
A 17-day summer program for high-achieving students ages 16 to 19.
Course Instructor
Designed and taught 50-hour university-level courses: On the science of learning (2022), empirical methods & science (2025), and on nand2tetris (2026).
Science
Teaching
Computer Science
Psychology
Learning
Systems Practice
Design Thinking
Elixir
Phoenix LiveView
Tailwind CSS
CodeMirror
Nix
Software Development | Hacker School
Working Student
Developed courses and the accompanying course website; introduced a knowledge base system.
Racket
Pollen
Sociocracy
Teaching
rootlinks
A program teaching students the skills to become sustainability changemakers by solving real-world challenges.
Working Member
Co-created the Learning Journey of two semesters, coached a challenge team, and recruited the 3rd batch.
Sociocracy
Design Thinking
Systems Thinking
Teaching
Coaching
Recruiting
Customer Development | rootlinks program
Participant
Customer Development and Applied Systems Practice for Fidenso (now defunct).
Customer Development
Systems Practice
Implemented a web server for a machine learning project in Haskell. Developed parts of a project frontend in ClojureScript.
Haskell
Clojure
Machine Learning
Emacs
magit
Developed AI Agents for Blobby Volley VR. Represented TNG at the TNG booth at OOP 2020.
C#
Python
Unity
Reinforcement Learning
Tensorflow
Projects
A Mastery Guide for the Common Core projects at 42 School, filling gaps in the curriculum.
Writing
Racket
Pollen
Tailwind CSS
The final project of the Common Core at 42: A web app for playing Pong (with chatting, accounts)—still has some rough edges.
Elixir
Phoenix LiveView
PostgreSQL
Tailwind CSS
Education
- Libc functions
- A shell
- A ray tracer
- An IRC server
- A full-blown web app
Completed 24 projects that included writing, amongst other things:
C
C++
Docker
Elixir
Racket
BSc Physics | ETH Zürich
Up to the 3rd semester.
Participation in the rootlinks program.
C++
Python
Final grade: 1.0
Received a prize for the best Abitur in Chemistry.