Work
Everything I've shipped
Side projects, client builds and the day job. Some of it is polished, some of it was a weekend spent answering a question I couldn't stop thinking about.
Now
Live on iOSFlowy is a private period and cycle tracker for iPhone. One quiet minute a day turns into a calendar you can actually read.
Experience
Where I've worked
- fynkFull-timeSoftware Engineer (Editor)Jul 2026 → Present · Vienna, Austria (Hybrid)
Contract lifecycle management: drafting, negotiation and signing in one place.
I own the document and template editor, the part of fynk where a contract is actually written. Everything that touches it is mine: the contract features, the AI built on top of them, the performance work, and the maintenance that keeps the rest possible. Tiptap and ProseMirror in Vue 3, on a Laravel backend.
Highlights
- A customer reported a thousand-cell template they could no longer type in. Profiling found eight independent full-document walks running on every keystroke, cursor move and scroll, so I replaced the DOM queries and node view re-renders on the typing path with derived state. A typed character went from 12 to 16 document.querySelector calls to none, and Cmd+A from 1,426 to none.
- The same pass turned up work happening nowhere near the typing path: the minimap sweeping around 1,030 elements and forcing a reflow on every scroll event, still doing it after it had been closed, and Sentry tracing holding 86% of the main thread on load.
- Reworked the layout, design and behaviour of the features that make a contract a contract rather than a text file: dynamic fields, conditional content, signature and approval blocks, dynamic tables, column layouts, headers and footers, section references, track changes. The pieces were already there; the work was making them read clearly on the page and behave the way someone drafting a contract expects.
- Migrated Tiptap v2 to v3, put upstream extensions back in place of our forks, and cut 70-odd dead exports. Then reorganised the editor tree around what code does to the document rather than which library construct it happens to use, so that a new engineer, or a coding agent, can find the one place a change belongs without reading the whole editor first. The architecture doc that came out of it is what the team and its agents work from now.
- Took a piece of the editor off a vendor's cloud and onto our own infrastructure. Contracts are the last documents a company wants leaving its own systems, so the tighter answer was to run it ourselves rather than pass customer text through someone else's service.
- Launchbox StudioSelf-employedFounderApr 2024 → Present · Remote
- SteerlabPart-timeProduct EngineerJul 2025 → Jul 2026 · Paris, France (Remote)
- Frontier AI LabFull-timeSenior Software EngineerOct 2025 → Jun 2026 · Remote
- AI AcquisitionFull-timeProduct EngineerAug 2025 → Dec 2025 · Dubai, UAE (Remote)
- AlpineProduct EngineerNov 2024 → Jul 2025 · New York, United States (Remote)
- mroadsFull-timeApr 2022 → Nov 2024 · Hyderabad, India (Remote)
Projects
Built and shipped

Alawyer
2026Engineering support for an AI legal intelligence platform.

REFCO Club
2026A private real estate membership platform for Fort Worth.

ScrantonAI
2024An AI chatbot for Scranton's public records, contracts and more.

Launchbox Studio
2024The web design and development studio I founded.

Caption Me
2024Upload a video, get styled captions burned in.

Ecommerce Admin + Store
2024Multi-store platform with a public storefront API.

Jam and Play
2023A music course platform, built for a client.

Team Chat
2023Real-time chat with servers, channels and roles.

TaskFlow
2023Drag-and-drop task board backed by Appwrite.

Travel Agency
2023A landing page built to sharpen my UI taste.







