Señor Developer
Tech Lead
Principal Engineer

About me(diafinger)

Born and raised in a small town in the west of Germany, I moved to Hamburg to study Media Information Science (Medieninformatik) at the FH Wedel. With my previous experience of building simple websites, I was able to land jobs as a student programmer at AOL and smaller companies.

After a year long break in which I studied in Bristol (UK) and lived and traveled in and around Vancouver (Canada), I returned to Hamburg to finish my Diploma (closer to the Master than the Bachelor degree) and start my career. I stayed there until the end of 2012 when I moved to Barcelona (Spain), a great place to enjoy life.

During my professional career I worked for agencies, a browser games company, an internet translation company https://tolingo.com, a large social network https://xing.com, a web development bootcamp https://www.ironhack.com, a bank https://solaris.bank, a regulated crypto exchange https://www.bsdex.de/, multiple startups, https://www.codurance.de and usually self-employed and remote.

While my role was usually that of a web developer, I also developed applications, designed and balanced the game mechanics of a football manager, taught and mentored aspiring web developers, led teams, consulted clients and planned a market rollout.

In the past, I worked with languages like Perl, PHP, Java and ActionScript. But since discovering Ruby in 2010 I have worked almost exclusively with Ruby - and all the other languages and DSLs that come with Ruby and Ruby on Rails applications.

I like Ruby so much that I started teaching it to beginners. First through RailsGirls workshops in Hamburg and Barcelona (where I also organized both). Later through periodical meetups in Barcelona and as a (paid) teacher and mentor in the Ironhack Web Development Bootcamp. I was also one of the organizers of Barcelona on Rails, the local Ruby User Group.

From 2016 on, I worked 18 months as a freelancer for solarisBank - a newly founded bank and tech company that offers financial products strictly over APIs. Their main office is in Berlin and I worked fully remote from Barcelona. Afterwards I have been back for a few weeks at XING Barcelona to single-handedly update their oldest and largest Ruby on Rails app to the latest Rails version 5.2, before joining Cookpad remotely, who have their (beautiful) office in Bristol, UK. In the four months with Cookpad I experienced a very dynamic working style where each team would start multiple small experiments each week. Small tweaks to UI, texts, features. Anything that could be measured and evaluated. Successful changes were kept and explored further, unsuccessful ones removed.

In 2019 I worked for multiple clients, with parallel contracts, until I joined BSDEX as one of the first engineers building services for this regulated crypto exchange. In the following years I took over more responsibilites there, led my team by example and discussed the roadmaps with the other unit leads. During that time I moved from Barcelona to Cologne [sic]. The following two years I've worked in mutliple projects for Railslove. In the most notable one I've been not only the most experienced developer, but team member. I helped to create processes and structures, supported our product owner and consulted the prioject management.

2024 and onwards have been rather turbulent times, working as a founding engineer in startups on tight budgets, taking over a management role as Regional Director (DACH) at Codurance, a software consulting agency rooted in the Software Craftsmanship community, and re-learning how to develop with AI and agentic setups!

In case you want to hire me

I enjoy working in small companies with small development teams. This setup promises light processes and demands independent workers. People have to show initiative and should be willing and able to make decisions. At the same time it enables transparency and clear communication structures.

I do consider myself to be a product developer thinking of all parts of an implementation and not only 'my code'. I prefer to write simple, maintainable code and to find a good, pragmatic solution, instead of a complex one. When layers of abstractions or optimizations become necessary, they can be added at the right moment.

I am a strong communicator. Spreading information and connecting people comes natural to me. I do push my colleagues to share more. Be it through the group chat or in pull request descriptions or by creating new tickets. When I am in the office, I use the opportunity to connect with people outside of my team to learn more about the business in general. When I am remote, video chats help discussing complex matters.

I am happy to work in a fully remote position. At home in Germany I have a great setup with standing desk, 4k screen, 250 MBit fibre connection and a sunny balcony.

Feel free to offer me competitively compensated remote roles. I am registered as a 'Freiberufler' (freelancer) in Germany. For the right offer, you might be able to convince me of full-time employment.

Most challenging development projects

2026 tinkering with Agentic AI development

  • Built a remote agentic pipeline on an old Mac mini, reachable securly over SSH - MS Conductor orchestrating multiple models in fixed roles (architect, implementer, auditor), connected to MCPs, with deterministic flows and an ever improving harness to work on my own projects.
  • Lesson: Deterministic quality gates ensure code quality, style and security stay high.
  • Lesson: AI amplifies whatever it finds. The better the foundation, the better the results can be.

2024–2025 at Zazu: neo-bank for African SMEs

  • one of the first two engineers on a greenfield Rails 8 monolith (Hotwire, Phlex, PostgreSQL)
  • double-entry ledger: immutable postings, signed customer-facing movements, transfer execution under nested row-level locks with post-commit projection
  • composable transaction query object: JSONB filters, Postgres full-text search, cursor pagination, time-series aggregation feeding the dashboard charts
  • authorization system from scratch: structured permission grammar, composable roles, fail-closed controllers, per-index authorizing scopes
  • maker-checker approval workflow: generic service/action/payload change requests, N-of-M approvals, state machine, append-only audit trail
  • event log with per-aggregate versioning and database-enforced optimistic concurrency
  • onboarding and mentoring new engineers as the team grew from 2 to 8
  • challenging because of: correctness under concurrency, building banking primitives before the core-banking API integration was ready, evolving scope in an early-stage startup

2024 Carlos: a corporate mobility app

  • one colleague, 8 weeks
  • first shippable and marketable version for web, Android and iPhone, thanks to Turbo, Stimulus, Turbo Native and Strada
  • challenging because of: underspecified requirements, time and budget constraints, expectation management

2021–2023 at Remondis: Binity smart waste logistics

  • technical owner the core API of an smart (IoT) waste-logistics platform for two years
  • migrating a ball-of-mud Rails monolith to a modular Packwerk architecture with clear package boundaries
  • taming unreliable external APIs with retries, idempotent background jobs and sequence-based order tracking
  • ensured nightly route optimization got more reliable by leaning heavily onto background processes
  • introduced custom role-based multi-tenant authorization with ActionPolicy across the whole API
  • implemented optional Azure AD single sign-on through a custom Devise strategy
  • reporting dashboards backed by pre-computed statistics for fast queries
  • setting up a full test suite, linters and quality gates and CI/CD on GitHub Actions and Azure, plus Conventional Commits with semantic-releases and generated OpenAPI docs
  • running architecture sessions and maintaining the data-model documentation for the team
  • challenging because of: a lot of technical debt left by a lone cowboy programmer, poor data integrity, two external legacy systems with unstable APIs, lack of specification, documentation or automization

2019–2021 Börse Stuttgart Digital Exchange: regulated crypto-exchange

  • one of the first engineers at BSDEX, led a small team, shaped roadmaps and requirements with the other unit leads
  • building the regulated service layer around the trading engine: authentication, KYC, crypto custody, fiat escrow, authorization, the ops back-office and regulatory reporting
  • leading the support and operations back-office (an internal Rails app) end-to-end, as its creator and main contributor
  • building the tax-reporting service greenfield: working against an AWS Athena data lake, credentials via Vault, CSV exports to S3
  • designing versioned, HMAC-signed JSON APIs for external and institutional clients, incl. key management
  • writing a reusable 'four-eyes principle' Rails engine with approval authorization flows and audit trails
  • ordered, idempotent background jobs (Que on Postgres) to keep our ledger consistent with Solarisbank and Blocknox despite concurrent workers
  • authoring shared gems adopted across the org: a structured JSON logger, a regulatory audit-trail middleware, an AWS Athena wrapper (also released as open source)
  • challenging because of: strict banking and data-privacy regulation, event ordering against concurrent processing, ~10 services and several external partners to keep in sync, zero-downtime expectations, and a fast-growing team spread across four companies

2018 at XING: Jobs app

  • 10 weeks project with the single task to update to the latest Rails version
  • XING's oldest and largest Ruby on Rails app, started more than 10 years ago on Rails 0.8
  • it was running on outdated Ruby and Rails versions
  • updating many (internal and external) dependencies, some of them deprecated
  • removing monkey-patches and overrides of private Rails APIs that changed or got deleted
  • rewriting tests of refactored code parts from minitest to rspec
  • finished on time on with PRs for the latest Ruby and Rails versions and comprehensive documentation about the changes

2017 at solarisBank: Business Identifications

  • extracting existing functionality out of a monolith while building a dockerized m/SOA architecture
  • adding new functionality in new services
  • connecting to a terrible XML (non SOAP) API (without good documentation)
  • following banking and data privacy regulations closely
  • challenging because of: constantly changing architecture, unstable API, time pressure to be the first on the market with a solution to identify businesses and their legal representatives in an online process

2014 at XING: XTM statistics

  • collecting usage data
  • accumulating existing data
  • creating a data structure optimized for query speed
  • displaying statistics to different user roles through a flexible interface
  • challenging because of: development of the whole feature, finding a maintainable and fast solution without increasing the technical complexity of the whole project

2013 at XING: messages (over 1 billion existing threads)

  • modeling the data structure
  • optimizing queries for speed
  • migrating from old Perl to new Ruby implementation without affecting the users
  • challenging because of: the sheer amount of data, the sensitivity of the data, the search results' speed and quality

2012 at tolingo: integrating Salesforce CRM

  • replacing old PHP monolith
  • new customer facing Rails app
  • new operators facing Rails app
  • implementing a new payment solution
  • integrating Salesforce
  • Ruby services to glue internal and external apps together
  • challenging because of: the complexity of the task, developing new apps, integrating a large external application, big bang release (not the idea of the dev team)

rather inactive