Context
German/EU public procurement — hundreds of thousands of tenders scattered across dozens of incompatible portals.
Problem
Finding relevant tenders across 15+ portals and preparing bid docs is slow and manual.
My role
Sole architect & engineer.
Approach
Connectors to 15+ procurement portals (TED, DTAD, evergabe, Cosinex/DTVP …) → one Tenders DB (Postgres 16 + pgvector) with cross-source dedup and semantic search; PDF/DOCX autofill; evergabe-bot backfill via AdsPower + Playwright; XVergabe XML.
Outcome
Cross-portal tender coverage in one searchable DB with autofilled bid docs.
Stack
Node/TSPostgres+pgvectorPlaywrightAdsPowerXVergabe XMLLLM