Foto von José Hernández
Full-Stack Product Engineer

José Hernández

Ich entwickle Software, die echte Probleme löst — von der Architektur bis zum letzten Pixel.

Ich bin ein autodidaktischer Entwickler mit einem konsequenten Ansatz für Softwarearchitektur und sauberen Code. Ich arbeite mit dem modernen Web-Entwicklungs-Stack, um funktionierende Produkte agil zu liefern — vom ersten Commit bis zum Produktions-Deployment.

Tech Stack

Werkzeuge und Technologien, die ich täglich nutze, um Produkte von Anfang bis Ende zu bauen.

Frontend

  • Next.js
  • React
  • TypeScript
  • Tailwind CSS

Backend & Datenbank

  • Node.js
  • PostgreSQL
  • Supabase

Tools & Cloud

  • Git
  • Docker
  • Vercel
  • Vitest

Ausgewählte Projekte

Projekte, komplett von Anfang bis Ende gebaut — vom Design bis zur Datenbank.

PagoMovilOCR

Open Source / npm-Paket

npm-Bibliothek, die venezolanische Pago-Móvil-Belege per OCR extrahiert, normalisiert und validiert.

Problem

In Venezuela bedeutet die Bestätigung einer Pago-Móvil-Zahlung meist, den Kunden um einen Screenshot zu bitten und Betrag, Referenz, Datum und Bank von Hand abzulesen — langsam, fehleranfällig und für ein Geschäft mit vielen täglichen Zahlungen nicht skalierbar.

Lösung

PagoMovilOCR automatisiert genau das: Es nimmt ein Bild des Belegs entgegen und liefert strukturierte Daten samt einer Reihe von Konsistenzprüfungen — ganz ohne eigenes Backend und ohne das Bild jemals an einen Server zu senden.

Engineering

  • Pipeline mit 4 unabhängig testbaren Stufen entworfen: OCR → Normalisierung → Parsing → Validierung.
  • Austauschbare OCR-Engine implementiert (standardmäßig Tesseract.js, läuft zu 100 % clientseitig/lokal via WebAssembly).
  • Registrierbares Bankprofil-System (`registerBankProfile`) gebaut, um das Format jeder Bank zu erkennen und, wenn sicher möglich, zu parsen.
  • USD/VES-Konvertierungsmodul mit offiziellem BCV-Kurs (über pydolarve.org) entwickelt, mit konfigurierbarem In-Memory-Cache und explizitem `stale`-Handling.
  • Gesamte Logik mit Unit- und Integrationstests in Vitest abgedeckt: Normalisierung, Parser, einzelne Validatoren, das Währungsmodul mit simulierten Providern und `verifyPayment` end-to-end mit simuliertem OCR.

Tech Stack

Node.jsTypeScriptVitestTesseract.jsOCR

Site Auditor

SEO & Performance Tooling

Analysiert die SEO-Gesundheit und Performance jeder beliebigen URL in Sekunden.

Problem

Technische SEO-Probleme und fehlerhafte Metadaten zu erkennen erfordert normalerweise das manuelle Durchsehen mehrerer verstreuter Tools, was schnelle Audits verlangsamt.

Lösung

Site Auditor zentralisiert die Analyse: Es nimmt eine URL entgegen, prüft deren OpenGraph-Tags und HTTP-Antwortzeiten und erstellt einen visuellen Übersichtsbericht auf einem einzigen Bildschirm.

Engineering

  • Next.js Server Actions implementiert, um Scraping und Analyse zu orchestrieren, ohne einen öffentlichen API-Endpunkt offenzulegen.
  • Den Parser für OpenGraph-Tags und HTML-Metadaten entworfen, inklusive Umgang mit unvollständigen oder fehlerhaften Fällen.
  • Die Ergebnisvisualisierung mit Recharts gebaut, wobei jede Prüfung einem Status zugeordnet wird (bestanden / Warnung / Fehler).
  • Eingegebene URLs validiert und bereinigt, um Anfragen an unsichere Domains zu verhindern.

Tech Stack

Next.jsServer ActionsTypeScriptTailwind CSSRecharts

DocuExtract

OCR & Document Automation

Extrahiert automatisch die wichtigsten steuerlichen Daten aus Rechnungen und Belegen.

Problem

Die manuelle Erfassung von Rechnungsdaten für die Buchhaltung ist langsam und fehleranfällig, und Unternehmen brauchen einen zuverlässigen Ablauf, selbst wenn sich die OCR beim Ergebnis nicht sicher ist.

Lösung

DocuExtract ermöglicht das Hochladen einer Rechnung oder eines Belegs und nutzt OCR, um die wichtigsten steuerlichen Daten zu extrahieren — bereit für die Buchhaltung. Bei niedriger Erkennungssicherheit wird das Dokument statt unzuverlässiger Daten in einen manuellen Prüfworkflow überführt.

Engineering

  • Die Verarbeitungspipeline (Upload → OCR/Extraktion → Parsing → Persistenz) entworfen und die serverseitige Verarbeitung von der UI getrennt.
  • Tesseract.js (Spanisch + Englisch) für OCR auf Bildern integriert, sowie native Textextraktion aus PDFs mit pdf-parse.
  • Ein Konfidenzsystem gebaut, das OCR-Zuverlässigkeit und erkannte Steuerfelder kombiniert und unterhalb eines konfigurierbaren Schwellenwerts automatisch an die manuelle Prüfung weiterleitet.
  • Spezialisierte Regex implementiert zur Erkennung von Steuer-IDs (NIT/RIF/CUIT/RFC/RUC), Daten (numerisch und in Textform) und Beträgen anhand buchhalterischer Schlüsselwörter.
  • Daten pro Unternehmen mit Supabase Row Level Security isoliert und Originaldokumente über kurzlebige signierte URLs aus einem privaten Storage-Bucket ausgeliefert.
  • Den Supabase `service_role key` ausschließlich in serverseitigen Route Handlers gehalten, niemals im Browser exponiert.

Tech Stack

Next.jsTypeScriptNode.jsTesseract.jsTailwind CSSSupabase

TrimLink

URL Shortener & Analytics

Kürzt Links und erfasst Klick-, Land- und Gerätemetriken.

Problem

Lange Links sind schwer zu teilen und bieten keine Transparenz darüber, wer mit ihnen interagiert.

Lösung

TrimLink verwandelt lange URLs in eindeutige Kurzlinks und erfasst anonym Klicks, Land (per IP) und Gerätetyp.

Engineering

  • Die Weiterleitung von Kurzlinks mittels Next.js Middleware auf Edge-Ebene implementiert.
  • Das Analytics-Schema in Supabase entworfen, um Klicks zu erfassen, ohne personenbezogene Daten zu speichern.
  • Länderauflösung per IP und Geräteerkennung anhand des User-Agents gebaut.
  • Eindeutige Kurz-IDs mit Kollisionsprüfung generiert.

Tech Stack

Next.jsMiddlewareTypeScriptTailwind CSSSupabase

LexChain

LegalTech & Blockchain

Erstellt dynamische Rechtsverträge und prüft deren Integrität über einen Blockchain-Fingerabdruck.

Problem

Freelancer, die mit Kunden in verschiedenen Ländern arbeiten, benötigen an die jeweilige Jurisdiktion angepasste Verträge, ohne für jeden einfachen Fall auf einen Anwalt angewiesen zu sein — und müssen nachweisen können, dass das unterzeichnete Dokument im Nachhinein nicht verändert wurde.

Lösung

LexChain erstellt dynamische Verträge je nach ausgewählter Jurisdiktion und berechnet einen digitalen Fingerabdruck des Dokuments, der auf einem Ethereum-Testnetz gespeichert wird — so lässt sich jederzeit überprüfen, dass der Vertrag nicht verändert wurde.

Engineering

  • Dynamische PDF-Generierung mit pdf-lib aus jurisdiktionsspezifischen Vorlagen implementiert.
  • ethers.js integriert, um den Hash des Vertrags zu berechnen und auf einem Ethereum-Testnetz zu speichern.
  • Das System parametrisierbarer Vertragsvorlagen nach Land und Vereinbarungstyp entworfen.
  • Die Formulareingaben validiert, um die Konsistenz des erzeugten Vertrags sicherzustellen.

Tech Stack

Next.jsTypeScriptTailwind CSSpdf-libethers.jsEthereum-Testnetz

Ergebnisse

  • 2 unterstützte Jurisdiktionen (Spanien, Venezuela)

Berufserfahrung

Das ist Arbeit, die ich tatsächlich für ein reales Unternehmen geleistet habe, kein eigenes Projekt.

Full-Stack Developer / Product Engineer

RE/MAX Arena

2025 — 2026

Ich habe digitale Lösungen für ein reales Immobilienunternehmen entwickelt und betreut — sowohl das kundenseitige Produkt als auch die internen Tools des Teams.

Verantwortlichkeiten

  • Entwicklung und Pflege der Unternehmenswebsite, anschließend Leitung eines kompletten Relaunches mit Rebranding.
  • Aufbau interner Dashboards und maßgeschneiderter CRUD-Tools zur Digitalisierung der Teamprozesse.
  • Implementierung von PDF-Generierung und Exportabläufen für interne Berichte.
  • Integration von KI- und Geolokalisierungs-APIs in die internen Tools.
  • Deployment und Betrieb der Anwendungen in Produktion, einschließlich Serveradministration.
  • Mitwirkung an der lokalen SEO-Strategie und Online-Reputation, wodurch eine Basis von über 100 positiven Google-Bewertungen aufgebaut wurde.
  • Migration und Administration des Büro-LAN; der technische Support der Arbeitsplätze war eine ergänzende Aufgabe im Bereich Infrastruktur.

Stack

PHPJavaScriptSQLREST-APIsLinux / ServerNetzwerktechnikTechnisches SEO

Bauen wir etwas zusammen?

Verfügbar für den Einstieg in ein Team. Wenn du ein Full-Stack-Profil suchst, das ein Produkt von der Architektur bis zum Deployment tragen kann, lass uns reden.