Sheet 04 · About

I build the parts of a product people touch.
I'm a senior front-end engineer in Kyiv. I work with distributed product and design teams on React and Next.js applications, most often at the layer where a team turns design decisions into components and data contracts.
Since 2021 I've built sports video products. I started on Rapid Replay at Launch Labs, and after NBC Sports Next acquired it, I moved to SportsEngine Play, where I own the front end across the web app, the admin platform and the mobile app.
I like small typed contracts, screens that lead with the important thing, and motion that tells you what changed. You can see some of that on this site: click anywhere, or press T.
- Role
- Senior front-end engineer
- Based in
- Kyiv, Ukraine · UTC+2/+3
- Works with
- Distributed product teams
02Working notes
- Note 1
Contracts before components
I'd rather ship a component with three typed variants than one with twelve boolean props. The next engineer can read a union type in a few seconds.
- Note 2
Answer the main question first
A screen should answer the user's main question before it offers detail. I cut or defer anything that competes with that answer.
- Note 3
Check it in a browser
A green build proves the code compiles. I also open the page on a phone, tab through it with a keyboard, and read the console before I call it done.
03Toolbox
The tools I reach for first. The parts bin runs on Matter.js; grab a part and throw it.
- Core
- React, Next.js, React Native, TypeScript
- Data
- GraphQL, Apollo Client, Zustand, Jotai
- Video
- HLS, Amazon IVS
- Payments
- Stripe Elements
- Observe
- Sentry, Datadog RUM, PostHog, GA4
- Ship
- Docker, GitHub Actions, Fastlane
Parts bin · drag, throw, stack
- React
- Next.js
- React Native
- TypeScript
- GraphQL
- HLS video
- Performance
- Accessibility
- Analytics
- Product architecture
Next step
Hiring for a senior front-end role?
Email me about the role and the team.
Open to senior front-end roles and focused contracts

