Experience
Pitch Software GmbH
Senior Software Engineer
Berlin, Germany
January 2019–January 2024
- Contributed to the development of Pitch's backend and frontend systems, working over 4 different product areas and specializing in the offline-first sync system
- Introduced a reproducible development environment and tooling, improving workflows and productivity across the engineering team.
- Led a cross-team documentation working group, making technical onboarding smoother and improving internal knowledge sharing
- Took initiative to fix many frontend and backend problems, gaining buy-in from leadership
- Designed and implemented improvements to the core sync system to address data loss and developer productivity issues in offline-first functionality, working with senior leadership on a long-term roadmap
- Mentored junior engineers, guiding them through their first feature implementations and fostering technical growth
Geeny/Telefonicá Next GmbH
Backend Developer
Berlin, Germany
March 2017–December 2018
- Hired as part of the full-time expansion of the Geeny IoT Cloud platform from Telefonicá Next GmbH, a corporate startup, to build a data privacy-first IoT solution
- Designed and realized architectural level design and communications in a microservices environment
- Defined internal Docker development workflows, implemented CI and CD between microservice repositories with GitLab.
- Worked with a range of microservice and data engineering technologies
Red Pineapple Media GmbH
Software Engineer
Berlin, Germany
April 2015–February 2017
- Helped rewrite the video ad delivery system from PHP to a modern Clojure stack
- Rewrote business-critical APIs, improving performance and reliability with fewer resources
- Developed the company's Real Time Bidding (RTB) bidder
- Played a key role in system design, partner communication, and architecture decisions
lifelife UG
Full Stack Developer
Berlin, Germany
November 2014–April 2015
- Created a decoupled separate service to interact with the main Rails application
- Implemented funnel metrics, multiple locale support, and more
Skyscanner Ltd
Intern at Change the Market (R&D)
Edinburgh, UK
June–August 2013
- Built a better R&D frontend interface by writing a small DSL and parser in JavaScript
University of St Andrews
Research Intern
St Andrews, UK
June–July 2012
- Created a population simulation tool for demographic and graph database testing
Outside Responsibilities
Co-Organizer
Clojure Berlin Meetup
Berlin, Germany
October 2016–Present
- Part of a small team taking turns to MC, filling in for speakers, and getting to know the Clojure community across Berlin
Orga Team Member and Coach
ClojureBridge Berlin
Berlin, Germany
4 events, Summer 2015–Summer 2017
- Conducted outreach, triaged attendee invitations, organized catering, and more
Coach and Host
ClojureBridge Learner Group
Berlin, Germany
Summer 2015–Present
- Host weekly learner group sessions
Education
BSc (Hons) in Computer Science
University of St Andrews
United Kingdom
2010-2014
- Graduated with a 2:1 in June 2014
- Heavy practical education with subjects including: Data Encoding, Artificial Intelligence, Operating Systems, Computer Architecture, Knowledge Discovery and Datamining, and Programming Language Design and Implementation (PLDI)
University Thesis
Senior Honours Project (2014)
A System to Perform Sentiment Analysis of Tweets
- Wrote a program in Clojure and Python to judge different methods of feature extraction for sentiment analysis of Tweets using simple Machine Learning
Software Developer
- email: ben@lovell.io
- website: https://ben.lovell.io
- github: socksy
- mastodon: @socksy@toot.cat
Experience
Tower
Senior Software EngineerBerlin, Germany
June 2025 –
Contributed to CLI tooling, backend infrastructure, and developer experience for Tower's serverless Python platform. Core contributor across the Rust CLI, Go/Rust/TypeScript monorepo, and infrastructure:
- led, architected and implemented the development of an MCP (Model Context Protocol) server in the Rust CLI, proving critical for adoption
- improved reactivity and reduced backend load & frontend data consumption by introducing a shoulder tap SSE/fetch system
- designed and built the Organizations multi-tenancy system end-to-end, including database migrations, API changes, and billing integration
- migrated infrastructure provisioning to Terraform/OpenTofu, including EKS dataplane, AWS SSO user management, and observability pipelines
- parallelized Go test suite with isolated databases, reducing test runs from ~1m30s to ~5s, and eliminating flaky tests
Self Employment
Freelancer & Open SourceBerlin, Germany
September 2024 – June 2025
Took time between roles for contract work and open source contributions.
- helped designed and implement a dependency injection framework in Rust for a client
- contributed packages to NixOS
- worked on some small projects for a Clojure TUI, incident response management, clojure.berlin
Pitch Software GmbH
Senior Software EngineerBerlin, Germany
January 2019 – April 2024
Contributed to the development of Pitch's backend and frontend systems, working over 4 different product areas and ending up specializing in the offline-first sync system. Some of the stuff I worked on:
- introduced a reproducible development environment and tooling, improving workflows and productivity across engineering team using a combination of nix, docker, bash and Python
- led a cross-team documentation working group, making technical onboarding smoother and improving internal knowledge sharing
- took initiative to fix many frontend (CLJS/React) and backend (CLJ/Postgres) problems, gaining buy-in from leadership with cost/benefit analyses
- designed and implemented improvements to the core sync system to address data loss and developer productivity issues in the offline first functionality, working with senior leadership on a long-term roadmap
- mentored junior engineers, guiding them through their first feature implementations and fostering technical growth
Geeny/Telefonicá Next GmbH
Backend Data EngineerBerlin, Germany
March 2017 – December 2019
Hired as part of the full time expansion of the Geeny IoT Cloud platform from Telefonicá Next GmbH, in order to build a data privacy first IoT solution I've:
- architected a microservices infrastructure on AWS with Docker, Kafka and HTTP/JSON
- analysed and translated product requirements into technical implementations
- delivered 3 crucial Clojure services under a month-long time constraint
- led the effort to have a 15-repo continuous integration and deployment process with GitLab CI/CD, reducing the release cycle from weeks to minutes
Red Pineapple Media GmbH
Software EngineerBerlin, Germany
April 2015 – February 2017
I was brought on to help the urgent rewrite of the video ad delivery system from PHP using a modern Clojure stack. Key role in system design and performance.
lifelife UG
Full Stack DeveloperBerlin, Germany
November 2014 – April 2015
Created a decoupled separate service to interact with the main Rails application. Implemented funnel metrics, multiple locale support, and more.
Skyscanner Ltd
Intern at Change the Market (R&D)Edinburgh, UK
June 2013 – August 2013
Built a better R&D frontend interface by writing a small DSL & parser (in JavaScript).
University of St Andrews
Research InternJune 2012 – July 2012
Created a population simulation tool for demographic and graph db testing.
Outside Responsibilities
Clojure Berlin Meetup
Co-OrganizerBerlin, Germany
October 2016 – Present
Part of a small team taking turns to MC, filling in for lack of speakers, and keeping our 900 member meetup connected
ClojureBridge Berlin
Orga Team Member and CoachSummer 2015 – Summer 2017
Conducted outreach, triaged attendee invitations, organized catering, etc.
Education
University of St Andrews
2.1, BSc (Hons) in Computer ScienceSt Andrews, UK
2010 – 2014
Heavy practical education with subjects including:
Data Encoding, Artificial Intelligence, Operating Systems, Computer Architecture, Knowledge Discovery and Datamining, Programming Language Design and Implementation (PLDI)