Über den Service
ÜbersetztIch bin ein Haskell Entwickler und schreibe Serverdienste, die von Grund auf korrekt sind, nicht durch Zufall. Mein Ansatz beruht auf den größten Stärken der Sprache: leistungsstarkes statisches Typsystem, Funktionsreinheit und explizite Effekte. Wenn ich Ihre Domäne mit algebraischen Datentypen modellieren und den Compiler ungültige Zustände ablehnen lasse, hören ganze Kategorien von Laufzeitfehlern einfach auf zu existieren. Das ist kein akademischer Idealismus, sondern ein praktischer Weg, Software zu liefern, die am Freitagabend genauso funktioniert wie in den Tests, und die ein neues Teammitglied mit Zuversicht refaktorisieren kann, weil die Typen sie innerhalb der Grenzen halten.
Im Laufe der Jahre habe ich HTTP-APIs, Hintergrundarbeiter, Datenverarbeitungs-Pipelines und Kommandozeilen-Utilities in Haskell erstellt. Ich bin mit dem Kern-Ökosystem vertraut: Servant und Yesod für das Web, STM und async für die Nebenläufigkeit, persistent und hasql für Datenbanken sowie den vertrauten GHC-, Cabal- und Stack-Tools. Ich kümmere mich auch um die Leistung: Ich profiliere mit GHC-Tools, denke bewusst über Faulheit und Striktheit nach, weiß, wann ich auf strikte Datentypen, entpackte Vektoren oder Streaming-Bibliotheken zurückgreifen sollte, um den Speicher flach und den Durchsatz hoch zu halten. Property-Testing über QuickCheck ist für mich ein Designwerkzeug, keine Formalität.
Sie erhalten von mir einen Codebestand, der tatsächlich ein Vermögenswert ist: kleine zusammensetzbare Funktionen, klare Modulgrenzen und Dokumentation, die das Team pflegen kann. Ich fühle mich ebenso wohl dabei, einen neuen Dienst von einem leeren Repository bis zur Produktion zu erstellen, wie ich einem bestehenden Haskell-Projekt beitrete, um Fehler zu beheben, technische Schulden zu zähmen, den Code zu beschleunigen und das Team in Richtung idiomatischer funktionaler Muster zu bringen. Wenn Ihnen korrekte Software, die sicher zu ändern ist, wichtig ist, helfe ich Ihnen.
— Backend HTTP-APIs mit Servant und Yesod
— Domänenmodellierung mit algebraischen Typen und Typklassen
— Nebenläufigkeit über STM, async und Threads
— Datenbankzugriff über persistent, hasql und PostgreSQL
— Property-Testing mit QuickCheck und Hspec
— Profilierung, Strengheitsanalyse und Optimierung
— Bauen mit GHC, Cabal, Stack und Nix
Im Laufe der Jahre habe ich HTTP-APIs, Hintergrundarbeiter, Datenverarbeitungs-Pipelines und Kommandozeilen-Utilities in Haskell erstellt. Ich bin mit dem Kern-Ökosystem vertraut: Servant und Yesod für das Web, STM und async für die Nebenläufigkeit, persistent und hasql für Datenbanken sowie den vertrauten GHC-, Cabal- und Stack-Tools. Ich kümmere mich auch um die Leistung: Ich profiliere mit GHC-Tools, denke bewusst über Faulheit und Striktheit nach, weiß, wann ich auf strikte Datentypen, entpackte Vektoren oder Streaming-Bibliotheken zurückgreifen sollte, um den Speicher flach und den Durchsatz hoch zu halten. Property-Testing über QuickCheck ist für mich ein Designwerkzeug, keine Formalität.
Sie erhalten von mir einen Codebestand, der tatsächlich ein Vermögenswert ist: kleine zusammensetzbare Funktionen, klare Modulgrenzen und Dokumentation, die das Team pflegen kann. Ich fühle mich ebenso wohl dabei, einen neuen Dienst von einem leeren Repository bis zur Produktion zu erstellen, wie ich einem bestehenden Haskell-Projekt beitrete, um Fehler zu beheben, technische Schulden zu zähmen, den Code zu beschleunigen und das Team in Richtung idiomatischer funktionaler Muster zu bringen. Wenn Ihnen korrekte Software, die sicher zu ändern ist, wichtig ist, helfe ich Ihnen.
— Backend HTTP-APIs mit Servant und Yesod
— Domänenmodellierung mit algebraischen Typen und Typklassen
— Nebenläufigkeit über STM, async und Threads
— Datenbankzugriff über persistent, hasql und PostgreSQL
— Property-Testing mit QuickCheck und Hspec
— Profilierung, Strengheitsanalyse und Optimierung
— Bauen mit GHC, Cabal, Stack und Nix