Freiberuflicher Full-Stack-Entwickler

Ich konzipiere und entwickle Webanwendungen für Gründer und Produktteams.

Ein SaaS, das ich seit seiner ersten Codezeile betreue, interne Werkzeuge, die Teams jeden Morgen öffnen, und wiederkehrende Arbeit, ersetzt durch Code, der von allein läuft.

Projekte in Produktion

Ein Produkt, um das ich mich allein kümmere, und zwei Werkzeuge, die ich an Kunden ausgeliefert habe. Für die beiden letzten gilt eine Vertraulichkeitsvereinbarung: Ich beschreibe, was sie tun, nicht was in ihnen steckt.

SaaS-Plattform zum Sammeln und Verwalten von Nutzerfeedback.

Eigenes Produkt

Feedbee

SaaS-Plattform zum Sammeln und Verwalten von Nutzerfeedback.

Produktteams sammeln ihr Feedback in Tabellen und Slack-Kanälen und verlieren nach ein paar Wochen den Überblick. Feedbee führt dieses Feedback an einer Stelle zusammen, verknüpft es mit Vorschlägen, über die Nutzer abstimmen, und veröffentlicht eine Roadmap, die alle einsehen können. Ich habe das Produkt von Anfang bis Ende gebaut: mandantenfähige Architektur, REST-API, ein öffentlicher Bereich pro Kunde und kostenpflichtige Abonnements. Hosting und Support übernehme ich ebenfalls, was mich zwingt, Code zu schreiben, den ich Monate später wieder aufgreifen kann.

Stack

  • React
  • Node.js
  • API REST
  • PostgreSQL
  • Stripe
  • Multi-tenant

Das Produkt online ansehen

Planung der Live-Sendungen und der Teams einer Redaktion auf einem einzigen Bildschirm.

An einen Kunden ausgeliefertes Werkzeug

LivePlanner

Planung der Live-Sendungen und der Teams einer Redaktion auf einem einzigen Bildschirm.

Eine Redaktion organisierte ihre Live-Sendungen zwischen einer geteilten Tabelle und Nachrichten, die über den Tag verteilt verschickt wurden. Um herauszufinden, wer verfügbar war, musste man das halbe Team anschreiben. LivePlanner bringt den Sendeplan, die Zuweisungen und die Verfügbarkeiten in eine einzige Ansicht, mit Anmeldung über Slack und über das bereits eingesetzte Projektmanagement-Werkzeug, damit kein weiteres Passwort nötig ist. Administratoren haben einen eigenen Zugang, um Teams zu verwalten und über überlappende Zeitfenster zu entscheiden. Das Werkzeug ist redaktionsintern und der Zugang bleibt authentifiziert.

Stack

  • Next.js
  • TypeScript
  • NestJS
  • PostgreSQL
  • Slack API
  • OAuth

Fachanwendung für die Teams eines Immobilienunternehmens.

An einen Kunden ausgeliefertes Werkzeug

Icade

Fachanwendung für die Teams eines Immobilienunternehmens.

Die Teams verfolgten ihre Vorgänge in getrennten Dateien, mit Geschäftsregeln, die jeder auf seine Weise anwendete. Ich habe eine interne Anwendung entwickelt, die diese Vorgänge bündelt und für alle dieselben Regeln anwendet, mit Masken, die auf jedes Profil zugeschnitten sind. Die Zugriffsrechte bilden die internen Rollen ab, und die Exporte fließen in die Werkzeuge, die der Kunde bereits nutzt. Das Fachliche bleibt vertraulich, ich halte mich an das, was die Anwendung tut.

Stack

  • React
  • TypeScript
  • Node.js
  • PostgreSQL
  • Docker

So arbeite ich

Vier Wege, ins Gespräch zu kommen, je nachdem, wo Ihr Projekt steht. In jedem Fall erhalten Sie einen schriftlichen Leistungsumfang, bevor ich beginne.

  1. Ein MVP, das online geht

    Einige Wochen

    Sie haben eine Idee und jemanden zu überzeugen: einen Investor, ein Gremium oder Ihre ersten Nutzer. Ich schneide den Umfang auf das zu, was den Nutzen belegt, und entwickle diese Version, Hosting und Domainname inbegriffen. Sie gehen mit einem Produkt heraus, das Ihre Nutzer öffnen können, und mit dem Code-Repository.

  2. Ein vollständiges Produkt

    Mehrere Monate, in Etappen aufgeteilt

    Sie haben ein Produkt zu bauen oder ein internes Werkzeug für Ihre Teams auszurollen. Ich übernehme die technische Konzeption, die Entwicklung, die Inbetriebnahme und die Begleitung der ersten Nutzer. Jede Etappe kommt auf einer Testadresse ausgerollt an, Sie arbeiten damit, bevor wir zur nächsten übergehen.

  3. Die Übernahme eines bestehenden Projekts

    Kurzes Audit, danach ein Takt, der zu Ihrem Team passt

    Der vorherige Entwickler ist weg und niemand weiß mehr, was mit der Codebasis anzufangen ist. Ich bringe das Projekt zuerst lokal zum Laufen und lese es, dann übergebe ich Ihnen eine schriftliche Bestandsaufnahme: was trägt und was zuerst brechen wird. Danach entscheiden Sie, ob wir reparieren, übernehmen oder einen Teil neu schreiben.

  4. Die Automatisierung einer wiederkehrenden Aufgabe

    Von einigen Tagen bis zu einigen Wochen

    Ein Team überträgt Daten von einem Werkzeug ins nächste, hakt jede Woche bei denselben Leuten nach und überwacht eine Tabelle, um zu prüfen, dass nichts durchgerutscht ist. Ich ersetze diese Handarbeit durch einen Dienst, der von allein läuft: Er hängt sich an die bereits eingesetzten Werkzeuge, verschickt die Nachrichten zum richtigen Zeitpunkt, setzt nach einem Fehler wieder auf und hält fest, was er getan hat. Auch No-Code-Szenarien, die langsam oder teuer geworden sind, überführe ich in Code, den Sie beherrschen und dessen Preis Sie kennen.

Stack

Die Werkzeuge, die ich täglich benutze. Ich wechsle, wenn ein Projekt es verlangt, nicht wenn etwas Neues erscheint.

Front
  • React
  • Next.js
  • TypeScript
  • Tailwind CSS
Back
  • Node.js
  • NestJS
  • Express
  • API REST
Daten
  • PostgreSQL
  • Prisma
  • TypeORM
  • Redis
Infrastruktur
  • Docker
  • VPS Linux
  • Nginx
  • GitHub Actions
  • Vercel
Integrationen
  • Stripe
  • Slack
  • OAuth
  • n8n
  • Make

Häufige Fragen

Was man mich fragt, bevor unterschrieben wird.

Sind Sie derzeit verfügbar?

Ich arbeite immer an einem Hauptprojekt, dazu kommen einige Stunden Wartung für frühere Kunden. Schreiben Sie mir mit Ihrem Termin: Ich sage Ihnen innerhalb eines Werktags, ob ich ihn halten kann und ab welchem Datum ich starte. Wenn ich das Projekt nicht übernehmen kann, sage ich das sofort.

Arbeiten Sie remote oder bei uns vor Ort?

Ich arbeite standardmäßig remote, mit einem wöchentlichen Termin per Video und einem gemeinsamen Kanal für die Fragen des Alltags. Für Kunden in der Île-de-France komme ich für das erste Scoping vorbei und für die Momente, die es verdienen, etwa eine heikle Inbetriebnahme. Der Rest lässt sich aus der Ferne sehr gut steuern.

Welche Art von Projekten übernehmen Sie?

Ich entwickle maßgeschneiderte Webanwendungen: interne Werkzeuge, fachliche Back-Offices, SaaS-Produkte und Oberflächen, die an bestehende APIs angebunden sind. Ich übernehme auch die Automatisierung wiederkehrender Aufgaben: zwei Werkzeuge synchronisieren, bei Personen nachhaken, jede Woche einen Bericht erzeugen oder ein No-Code-Szenario, das zu langsam oder zu teuer geworden ist, durch einen maßgeschneiderten Dienst ersetzen. Reine Visitenkartenseiten mit WordPress und rein grafische Relaunches mache ich nicht.

Können Sie eine Aufgabe automatisieren, die mein Team von Hand erledigt?

Ja, das ist Teil meiner Arbeit. Ich schaue mir die Aufgabe zuerst so an, wie sie heute erledigt wird, zusammen mit der Person, die sie erledigt, und schreibe dann einen Dienst, der sie übernimmt: Er verbindet sich mit den bereits genutzten Werkzeugen, läuft zum richtigen Zeitpunkt, setzt nach einem Fehler wieder auf und hinterlässt zu jedem Lauf eine Spur. Wenn die Automatisierung bereits als No-Code-Szenario existiert und viel kostet oder oft bricht, überführe ich sie in Code.

Übernehmen Sie Code, den jemand anderes geschrieben hat?

Ja, das ist ein regelmäßiger Teil meiner Tätigkeit. Ich bringe das Projekt zuerst lokal zum Laufen und lese den Code, dann übergebe ich Ihnen eine schriftliche Bestandsaufnahme: was trägt und was zuerst brechen wird. Danach entscheiden Sie, ob wir laufend reparieren oder einen Teil neu schreiben.

Wem gehört der Code, den Sie schreiben?

Der Code gehört Ihnen. Ich arbeite in Ihrem Repository, oder ich übertrage Ihnen meines am Ende des Auftrags, zusammen mit den Zugängen zum Hosting und der Deployment-Dokumentation. Sie zahlen mir keine Lizenz, und niemand braucht mich, um das Projekt weiterzuführen.

Wie läuft ein Auftrag ab?

Ein Auftrag beginnt mit einem Gespräch, in dem Sie den Bedarf beschreiben und ich Fragen stelle. Danach schicke ich Ihnen einen schriftlichen Leistungsumfang mit Etappen und Preis, vor der ersten Codezeile. Während der Entwicklung wird jede Etappe auf einer Testadresse ausgerollt, mit der Sie selbst arbeiten. Der Auftrag endet mit der Inbetriebnahme und einer dokumentierten Übergabe.

In welchen Sprachen arbeiten Sie?

Ich arbeite auf Französisch und auf Englisch, schriftlich wie in Besprechungen. Code, Kommentare und technische Dokumentation sind standardmäßig auf Englisch, weil die nächste Person, die das Repository öffnet, nicht unbedingt Französisch spricht. Wenn Ihr Team überall Französisch bevorzugt, machen wir es so.

Wo sitzen Sie und für welche Kunden arbeiten Sie?

Ich sitze in Paris und arbeite für Kunden in Frankreich und in Europa. Zeitzonen nahe der Pariser Zeit bereiten keinerlei Schwierigkeiten. Bei größeren Verschiebungen legen wir zu Beginn des Auftrags ein gemeinsames Zeitfenster fest, an das ich mich halte.

Sprechen wir über Ihr Projekt

Beschreiben Sie in ein paar Zeilen, was Sie bauen wollen, wo Sie stehen und wann Sie es online sehen wollen. Wenn ich nicht der Richtige bin, sage ich Ihnen das in meiner Antwort.

Sie erhalten am nächsten Werktag eine Antwort.