~/dominik.polzer cd ./About

About Me


How I Started Coding
I began coding nearly a decade ago, initially driven by a passion for creating games (using MonoGame/XNA and WinForms) as a hobby while studying civil engineering.
By 2017, I had reached my third year in civil engineering, with most of the courses completed. However, I realized it wasn't something I wanted to pursue full-time, so I decided to pursue an Associate's degree at one of Croatia's top-tier computer science colleges.
Shortly after completing my courses, I landed my first Full Stack Engineer role at a small startup called Dotmetrics.

Professional Experience

Short version

Over roughly 10 years of professional experience, I've worked with a wide range of technologies and tools, including C#, Rust, SQL, JavaScript, PowerShell, Bash, Python, Go, and all the major cloud platforms. Along the way I gained experience in distributed systems, multithreaded systems, large codebases, data processing, search systems, and high-traffic GraphQL servers.

Longer version / Career Timeline

  • Exein — Software Engineer, Distributed Systems (Apr 2025 – Present):At Exein I'm on the core backend team, scaling the high-availability systems behind continuous firmware vulnerability scanning and analysis.
    Highlights
    • - Architected and built Exein's Vulnerability Tracker from the ground up — a greenfield Rust microservice (hexagonal architecture, Axum + SQLx/Postgres) for continuous firmware vulnerability tracking, authoring the majority of the code from the initial scaffold through production launch. It re-analyzes firmware SBOMs against evolving CVE data and delivers reliable impact notifications to upstream platforms over NATS.
    • - Designed the NATS-based event pipeline orchestrating the cross-service analysis flow — scan-created, SBOM-analysis-completed and vulnerability-checked events carrying work between the analyzer API, the tracker, and the CVE-analysis engine. Implemented both the publisher and consumer sides, cascade-safe scan/object deletion events, in-process worker queues that drain SBOMs into analysis, stream-error recovery so the event loop degrades gracefully instead of failing, and service-to-service API-key authentication.
    • - Built the typed CycloneDX SBOM enrichment pipeline with VEX output — including diagnosing and working around silent data-loss bugs in the upstream CycloneDX deserializer — and wired CVE-severity scoring into the platform's scan scores.
    • - Solved production performance problems end to end: restructured the tracker's Postgres schema (baseline + latest-scan retention) to eliminate slow queries, moved result materialization to streamed row fetching, and cut hot analyzer-API endpoints down to two DB roundtrips via batched score queries.
    • - Owned major analyzer-API features: the AI/CRA compliance workflow (status state machine backed by DB constraints), the S3/MinIO file-storage subsystem with IAM bucket-policy integration tests, PDF report generation, and a full OpenAPI overhaul that made the API self-describing for both humans and AI agents.
    • - Developed an agentic AI tooling layer with API introspection and runtime code generation to support autonomous CVE analysis.
    • - Stabilized and scaled the core vulnerability-analysis platform — Rust libraries and CVE ingestion pipelines — and migrated the databases to a scalable schema.
    • - Designed and optimized data-ingestion and search services in Rust, improving CVE source-ingestion throughput by 24× using PostgreSQL native batch inserts.
    • - Played a key role on the core backend team, scaling high-availability systems critical to client growth and the company's successful $70M and $100M investment rounds.

  • Bullhorn — Software Engineer, Distributed Systems (Aug 2021 – Aug 2025):Bullhorn is a U.S. healthcare recruitment platform. The specific product I was hired for had been in production for 20 years and ran at significant scale, serving large healthcare groups like HealthTrust, Maxim, and Beacon Hill.
    I optimized systems for these high-traffic clients and was part of the core team that built and maintained the infrastructure code and the GraphQL server handling requests from the new mobile and portal apps. That server processed about 100k requests/min at peak times and offloaded most async workflows to multiple Hangfire instances. The work frequently required deep dives into the EF ORM's "intermediate" representation — expression trees — and the resulting SQL execution plans. The SQL generated by .NET's LINQ provider wasn't always optimized for larger queries, so I wrote custom expressions that hooked into how the ORM generated its final SQL.
    On the same platform I also designed and implemented a cross-language (F# → C#) Business Rule engine — a system-abuse-prevention gateway that integrated with our existing GraphQL and REST layers — and optimized data-heavy GraphQL search resolvers down to under 500ms, while querying across millions of records on a 5 TB+ dataset.
    Key learnings
    • - Working with 5M+ lines-of-code codebases.
    • - High-traffic GraphQL server library and query development.
    • - How to optimize EF ORM queries by hooking into expression-tree generation.
    • - How to optimize SQL queries and execution plans, and work with complex SQL schemas.
    • - How to analyze and fix codebase vulnerabilities by writing custom tooling around CVEs.
    • - How to architect custom HTTP & GraphQL middleware that propagates both object-oriented exceptions and functional errors correctly.

  • Rust Experience:For most of my earlier professional projects we used .NET on the backend, but in 2022 I had my first opportunity to work with Rust in a production environment. I contributed to a Rust-based matching engine that enabled insurance companies to find B2B customers and offer tailored packages. There we used technologies such as Actix, SQLx, Grafana, Prometheus, OpenTelemetry, and Postgres. I really enjoyed Rust as a language, coming from a previous C# project that had a custom Maybe implementation, and a bit of F#.
    Key learnings
    • - How to work with async runtimes and frameworks like Tokio, Actix and Axum.
    • - Learned a lot about memory ordering and the atomics API in Rust from "Rust Atomics and Locks".
    • - Worked with codegen and the Rust build pipeline all the way from AST and HIR through to LLVM.
    • - How to refactor deprecated crates in a Rust repository and resolve breaking changes.

  • Combis:At Combis, I worked on a B2B employee-management platform integrated with MS Dynamics 365. My focus was on the backend, particularly the async scheduler, the job-queuing engine, and the invoice-generation engine.
    I also developed early versions of Teams chatbots that let executives and project managers trigger internal workflows through Teams chat controls, as well as the initial version of a distributed blacklisting/whitelisting service for syncing potential B2B actors across the HT group companies.
    Key learnings
    • - How to architect full-stack file-sharing (Google Drive–like) systems
    • - How to develop distributed blacklisting/whitelisting services
    • - How to automate invoice generation and job-scheduling workflows through tools like Hangfire and Azure.
    • - How to develop code-execution Teams chatbots.

  • Dotmetrics:I started out working on .NET-based admin portals and a multithreaded backend aggregation engine that processed website user-traffic metrics (from our embedded scripts) for EU & UK sites.
    It was a great first job, where a small team of principal engineers handled close to 1,000 EU sites. I had the opportunity to learn about write-heavy Cassandra clusters, BigQuery, SQL, key web metrics, and efficient web scrapers.
    Key learnings
    • - How to write efficient web scrapers
    • - How to handle large (write-heavy) Cassandra clusters
    • - How to process and store large amounts of data
    • - How to architect multithreaded backend systems that aggregate large amounts of data using C# constructs like ThreadPool, ConcurrentQueue, ConcurrentDictionary, and other Task Parallel Library (TPL) constructs.

Curiosity District
Most recently, I founded my own company, Curiosity District. It's where I bring together everything from the past decade — distributed systems, Rust and .NET backends, cloud infrastructure, and applied AI / deep learning — to build my own software products and take ideas all the way from prototype to deployment. The name captures the idea: curiosity is what has always driven how I learn and build, and the company is built around exactly that.

Open-Source Projects
Throughout my career, I’ve worked on my own projects, prototyping with new tech, cloud services, and languages. I’ve also contributed to several open-source projects, including:
  • Contributed to QrSync (a cross-device file-sharing CLI-based Rust app) by updating the entire dependency tree to the latest versions and resolving breaking changes, mostly related to HTTP middleware.
  • Contributed to the TypeScript-to-Rust parser engine for the Windmill project, which offers a distributed cloud-hosted workflow engine.

Free Time
In my free time I enjoy hiking, swimming, coding, and chess puzzles.

What's next

I'm looking forward to more exciting challenges in distributed systems, and I'd like to explore embedded systems too, since I've become increasingly interested in that area recently.