# Jakub Dvořák > Personal site of Jakub Dvořák, AI and backend engineer in Prague (BSc, Systems Programming, MFF UK; Master's in AI at MFF UK since October 2026). > As co-founder and CTO of Zoplio (an AI assistant that books meetings; Mar to Oct 2026) he wrote all of the backend: the REST API, the TypeScript and Python SDKs and the MCP server. AI engineer at Kreedl, full-time (Jan to Jun 2026). Contributes fixes to open-source projects (merged in PostHog's JavaScript SDK). Thesis: a multisig Bitcoin wallet in which every signature is made on a Trezor. > Alongside engineering, as a secondary interest, he does independent interpretability research (sparse autoencoders, superposition, long-context memory), heading toward the overlap of high-performance deep learning and AI safety. He is looking for a role as an AI engineer or backend engineer (Python, TypeScript), in Prague or remote. Platform and developer-tools teams are a good fit too. Full-time, as an employee or on a contract (Czech IČO). He can start now. ## Quick facts - Looking for: AI engineer or backend engineer roles (Python, TypeScript). Platform and developer-tools teams too. - Where: Prague or remote (CET) · EU citizen - When: Available now · full-time, as an employee or on a contract (Czech IČO) - Languages: Czech (native) · English (C1) - Education: BSc Computer Science, Charles University (2026) · Master’s in AI there since October 2026, arranged around work - Works with: Python, TypeScript/JavaScript (Node.js), Kotlin, C · LLM apps and agents on the Gemini and Claude APIs, MCP · REST APIs and SDKs · MongoDB, PostgreSQL, Redis · Docker, GitHub Actions, Linux ## Pages - [Home](https://kubadvorak.com/): who Jakub is, experience, selected work, open source, hackathons, research, side projects - [About](https://kubadvorak.com/about): background, the kind of role he wants, education, skills, languages - [Now](https://kubadvorak.com/now): what he is focused on right now - [CV](https://kubadvorak.com/cv): curriculum vitae (printable PDF linked there), including the systems programming coursework - [Research](https://kubadvorak.com/research): his interpretability research (sparse autoencoders, superposition, long-context memory), with the status of each project - [Bitcoin multisig wallet](https://kubadvorak.com/work/bitcoin-multisig-wallet): the bachelor's thesis in depth, how it works and what a Trezor demands before it signs - [Zoplio developer API](https://kubadvorak.com/work/zoplio-api): how the public API, SDKs and MCP server work: keys, rate limits, quotas, idempotent retries, signed webhooks ## Work - [Bitcoin Wallet for Advanced Users](https://github.com/Majny/bitcoin-multisig-wallet): BSc thesis, MFF UK, defended June 2026, graded Excellent and nominated by the supervisor for a special award. Android M-of-N multisig wallet in which every signature is made on a Trezor via Trezor Connect; the backend coordinates the cosigners but never holds key material and never signs. Runs any policy from 2-of-3 up to 15-of-15 on testnet (the 15-of-15 on the Trezor emulator); also used on mainnet with real funds. Hand-written BIP-174 (PSBT) encoding and parsing, multisig P2WSH script and bech32 encoder; seven Kotlin/Ktor microservices on PostgreSQL under Docker Compose; 123 backend test methods, with keys and addresses pinned to the published BIP-32, BIP-84, BIP-173 and BIP-350 test vectors; a four-attack threat model for how the app handles Trezor Connect deeplink callbacks. [Thesis, 100 pp](https://dspace.cuni.cz/handle/20.500.11956/210821) · [Write-up](https://kubadvorak.com/work/bitcoin-multisig-wallet) - [Zoplio developer API](https://zoplio.com/docs): Zoplio is an AI assistant that books your meetings over WhatsApp, Slack and email. Jakub wrote all of its backend, including the public REST API (keys, rate limits, usage quotas), signed webhooks, the SDKs on npm (@zoplio/sdk-js) and PyPI (zoplio) and the hosted MCP server. He was co-founder & CTO from March to October 2026; in October 2026 Zoplio was put on hold, as on its own it was a feature rather than a standalone product. - Open source (since October 2026): merged a session replay fix in PostHog's JavaScript SDK (https://github.com/PostHog/posthog-js/pull/5325) with unit and Playwright tests, and documentation fixes in Trezor Suite and ical-generator. - Hackathons and competitions (Jakub writes the code; Lukáš Hellesch does the product side): - [AirGap Mandates](https://github.com/Majny/airgap-mandates), FinTechers Hackathon, October 2026 (Track 3, "Securing the agentic bank"). A bank's AI agent proposes payments but holds no write credential; money moves only within a mandate signed on a Trezor Safe 3 or after a human confirms on the device, and every step lands in a transparency log that can be verified offline. - [Heirloom](https://github.com/Majny/hackathon-cursor), Cursor Hackathon Prague, September 2026: an AI grandson that phones Grandpa and turns his stories into a family archive, each paragraph traced back to what he said. - Grant Ops, Prague Builder Day (Duvo × Anthropic), June 2026: an agent that checks a research grant's expenses against the funder's rulebook and cites the rule for each flagged line. - Red Bull Basement '26, May 2026: Czech national top 10 with Boletiqo, a platform of AI agent teams for running a small company (closed in 2026). - Kreedl Intelligence: an internal Gemini-powered pipeline for pitch-deck analysis used in investment screening; Python, FastAPI, MongoDB, Docker (AI Engineer at Kreedl, Jan to Jun 2026) - Systems programming (Bachelor's specialization, MFF UK): a RISC-V (Sv32) teaching kernel in C built in a team of three (heap, scheduling, synchronization, virtual memory, user-mode processes); a compiler from a C subset to LLVM IR (flex, bison, IRBuilder); parallel programming with TBB, OpenMP, SYCL (CPU target), Spark and C# async on a SLURM cluster; Linux Administration (QEMU/KVM, systemd, DNSSEC, backups verified by a restore) - Research (models and interpretability; https://kubadvorak.com/research): - [Absorption Atlas](https://github.com/Majny/absorption-atlas): how a concept is carried inside Gemma-2-2B/9B depends on what kind of concept it is: letter-like properties are absorbed into token-specific sparse-autoencoder latents, while is-capitalized has no single latent causally carrying it (16-page technical report + code) - [superposition-phases](https://github.com/Majny/superposition-phases): in toy models of computation in superposition, when a layer has to compute more functions than it has neurons, the superposed code grows continuously out of the dedicated-neuron solution rather than appearing in a sudden jump (a 256-job CPU sweep). The 40-page write-up is finished but not public yet; the public code is the early, single-seed first pass - Memory in long-context LLMs: does a model know which part of its KV cache it will need before it needs it, and how far ahead? Running; the first measurements run through November - An earlier project, [Lost in the Monitor](https://github.com/Majny/lost-in-the-monitor), is a published null result on chain-of-thought monitoring - [sectionsight](https://github.com/Majny/sectionsight): an agent skill (Claude Code, Codex, Gemini CLI) that sets up cookieless, privacy-first website analytics and checks the result in a real browser with Playwright; MIT - [GazeUp](https://gazeup.cz): daily Czech-language AI news as short videos and a weekly newsletter; side project - [Writing](https://kubadvorak.substack.com): Substack ## Education - BSc in Computer Science (specialization Systems Programming), Faculty of Mathematics and Physics, Charles University (MFF UK), 2023 to 2026, thesis graded Excellent - Master's in Artificial Intelligence, MFF UK, since October 2026 ## CV - [CV (PDF)](https://kubadvorak.com/cv.pdf) Contact: hi@kubadvorak.com