Senior / Staff Frontend Engineer — since 2007
I build interfaces for data that refuses to sit still.
Drilling telemetry, European power grids, telemedicine, live video. Nineteen years of making heavy, real-time products feel instant — and leading the teams that build them.
Kraków, Poland
- years in frontend
- 0
- years in frontend
- chart render latency
- 0s → 60ms
- chart render latency
- AI tools wired into one app
- ~0
- AI tools wired into one app
- published compiler research
- IEEE
- published compiler research
01 — Origin
- 2001
Lviv Polytechnic
Computer engineering, system programming. Algorithms, data structures — and the physical layer underneath them.
- LOGIC
Gates before frameworks
Truth tables, adders, flip-flops: learning how a CPU thinks, one logic gate at a time.
- SOLDER
Microelectronics
Soldering irons, rosin smoke and printed circuit boards — hardware you can burn your fingers on.
- TAPE
The Turing machine
A tape, a head and a set of rules: the idea that everything computable fits in a transition table never left me.
- C → EXE
Writing a compiler
A C-to-*.exe compiler with i486 FPU support, plus C++ systems work. Lexer, parser, code generation — the whole pipeline, by hand.
- VLIW
Native parallelism
Master's thesis: a C-to-VHDL transpiler with assembly-level optimisation for a VLIW CPU. Later published by IEEE.
- 2007
XMLHttpRequest in IE6
Started as a PHP/MySQL developer, tried XHR in IE6/7 — pages that update without reloading. Fell in love with the frontend for good.
Lviv Polytechnic
Computer engineering, system programming. Algorithms, data structures — and the physical layer underneath them.

02 — Path
IOIX Ukraine
Frontend Engineer
Real-time visitor analytics platform; championed moving the corporate PHP engine to XHR/AJAX.
ViaCube
Frontend Engineer
Components for a web-based operating system: presentation editor, file manager. Dojo, Comet.
Archify GmbH / Freelance
Browser Extension Specialist
Privacy-first search engine (blippex.org): a WebRTC peer-to-peer client living inside browser extensions for 5 browsers, sharing anonymised data.
SoftServe
Frontend Engineer
Calendar-based alert management utility for enterprise scheduling (ExtJS).
EPAM Systems
Frontend Team Lead
Led an 8-person team on a fintech platform and a hotel booking system.
Hitbox Entertainment
Lead JS / Mobile Engineer
Cordova → React Native migration, native HLS modules, live trivia at scale.
ENTSO-E
Senior Frontend Engineer
Geospatial energy platform from scratch, TYNDP submission system, monorepo.
Emmacare
Acting Tech Lead & FE Architect
Monorepo, security audit, WebRTC video, design-system theming.
Corva.ai
Senior Frontend Engineer
Drilling telemetry at 600k points: virtualization, workers, AI-driven architecture.
kiedykarta.pl
Independent product
Real waiting times for Polish residence permits, built end to end.
Corva.ai
Dec 2025 — present
Senior Frontend Engineer
Owner of data-heavy reporting apps: high-frequency drilling telemetry, processed and drawn with low latency for real-time monitoring.
Virtualized charts
2.3s → 60ms — render latency
Inherited a slow app and built a custom Highcharts windowing engine — O(1) instead of O(N) for 400k elements, with native scroll physics and cross-filtering intact.
Renderer-agnostic migration
~10s → <1s — worst-case freeze, 600k points
After a WebGL prototype (SciChart, ~60 FPS) I distilled the findings into a spec — conversion → parsed model → renderer — with a 10-chart parity matrix and an 18-item pitfall catalogue, then drove the ECharts migration in a single AI-assisted session.
Architecture an AI can drive
60 → 120 — AI tools
Re-architected hard-coded behaviour into a configurable settings model the platform assistant can operate safely: single-write commands with read-back, stale-scope detection, undo baselines.
Depth ↔ time mapping
O(log N) — event projection
Coordinate mapping and data compaction for drilling time-series: prefix-sum indexing, piecewise linear interpolation and O(log N) binary search to project events onto non-linear axes.
TimeCompactor & filters
40+ — filtering rules
A fault-tolerant layer syncing malformed, non-contiguous data plus reactive filtering — 40+ business rules, cascades, interval merging — behind the most-used app in the ecosystem.
Off the main thread
200k+ — records per export, no jank
A Web Worker pool sized by hardwareConcurrency, zero-copy transfers and a sliding-window scheduler: no more UI freezes during 200k+ record exports.
8,000 requests, tamed
8,000+ — concurrent requests
Re-engineered fetching with chunking, retries, aggregation and AbortController cancellation — a crash-prone bottleneck became stable.
Emmacare
Jul 2023 — Dec 2025
Senior FE Engineer · acting Tech Lead & FE Architect
Owned frontend architecture and technical decisions, working directly with the CEO and CTO through constant reprioritisation.
Two projects, one monorepo
2–4× — faster feature migration
Made the case for and executed the merge: unified Ant Design versions, TypeScript with a global typing system, React Query replacing legacy Redux.
Security audit
XSS → CSP — hardened surface
A proactive audit surfaced XSS vulnerabilities; introduced content sanitising, a CSP and JWT best practices.
Theming over BEM
tokens — single source of style
Replaced legacy BEM with theming on Ant Design tokens — long-standing CSS conflicts gone, design system finally feasible.
Real-time care
WebRTC — video visits
WebRTC video conferencing on Amazon Chime SDK, a themeable charting library on Recharts, scheduling on FullCalendar.
Team
lead — architecture & people
Mentoring on architecture, code reviews, interviews, onboarding, demos and estimation.
ENTSO-E
Oct 2019 — Jul 2023
Senior Frontend Engineer
Platforms for the European network of transmission system operators: geospatial data, regulatory submissions and reports.
Geospatial platform, from scratch
0 → 1 — built from scratch
Architected a platform for geospatial and statistical energy data: API contracts, data structures, stack. Mapbox with custom data expressions and GeoJSON layers via turf.js; a Refine.dev admin panel.
Rescuing TYNDP
AngularJS 1.2 — stabilised and extended
Took over the Ten-Year Network Development Plan submission system on AngularJS 1.2 that previous vendors had left unmaintainable; refactored to components, opened a path to React, kept hard EU regulatory windows.
Reports without a backend
PDF in workers — no duplicated logic
One codebase shared across services, and client-side PDF generation with pdfMake inside Web Workers — mapping rendered data straight into reports.
Monorepo for the ecosystem
1 — frontend ecosystem
Shared libraries for ADFS/MSAL authentication, charting and geospatial components.
Hitbox Entertainment
Jan 2016 — Mar 2021
Lead JS / Mobile (React Native) Engineer
A high-traffic streaming platform competing with Twitch, plus a live trivia app competing with HQ Trivia.
Cordova → React Native
RN — new mobile platform
Proposed and led the migration of the mobile platform from Cordova/AngularJS to React Native — big gains in rendering performance and mobile UX.
Native HLS
low-latency — ExoPlayer bridge
Custom native modules bridging HLS playback through ExoPlayer on Android for low-latency video.
Live trivia at scale
spikes — synced via HLS frames
A real-time trivia app surviving massive concurrent spikes, synchronised through WebSockets and HLS data frames.
Streaming PWA
PWA — offline + push
React + Workbox progressive web app: one real-time streaming experience across browsers, offline support, push sync.
07 — Selected project
Oct 2026 — present · independent · live
Share of cases still waiting
KM · 95% CIIllustrative Kaplan–Meier curve with confidence band
Data
A daily Node/TypeScript pipeline — scrape → rule-based multilingual parsing → case merging. Statistics stay honest on incomplete data: Kaplan–Meier ranges and low-sample flags.
Product
React + TanStack Start static prerender, custom SVG charts, offline-capable PWA; reader-submitted cases with passwordless sign-in (Telegram, Google, passkeys) on Cloudflare Functions + D1.
Delivery
GitHub Actions → Cloudflare Pages at near-zero cost. Privacy-first: pseudonymised data, cookieless analytics. Built with Claude Code — I owned the problem, domain rules and verification; the agent wrote code and tests.
08 — Stack
Languages & frameworks
05- React
- TypeScript
- JavaScript (ES6+)
- React Native
- Node.js
Architecture
09- Monorepos (pnpm, Webpack)
- SSG / prerendering
- PWA & service workers
- TanStack Query
- Zustand
- REST
- GraphQL
- WebSockets
- WebRTC
Data visualization
10- ECharts
- Highcharts
- SciChart (WebGL/WebGPU)
- Custom SVG
- Mapbox
- d3-geo
- turf.js
- Nivo
- Recharts
- FullCalendar
Performance
06- Custom virtualization
- Web Workers, zero-copy
- Canvas / WebGL
- Code splitting
- Bundle optimization
- Binary search, prefix sums
UI systems
07- Ant Design
- MUI
- Refine.dev
- Styled Components
- SCSS
- Figma
- Storybook
Security & quality
06- XSS/CSP audits
- Sanitizing
- JWT best practices
- Jest
- Vitest
- React Testing Library
CI/CD & infra
03- GitHub Actions
- Cloudflare Pages / Functions
- Azure DevOps
AI-assisted engineering
04- Spec-driven agent workflows
- Claude Code
- Cursor
- LLM tool-calling