Eduard Shavyrko — CV
Senior React / TypeScript engineer · architectural depth · AI-leveraged delivery · 6+ years
Buenos Aires, Argentina · edshav@pm.me · LinkedIn · GitHub
Summary
Senior React engineer who owns frontend architecture end-to-end and brings modern AI-leveraged delivery to senior IC work. Designs custom Claude Code skills and methodologies that scale architectural analysis on real client codebases. LATAM-remote with full US-business-hours overlap. Available for B2B SaaS and AI-native startup engagements.
Work Experience
Monetarium Explorer — Block explorer for the Monetarium blockchain
Frontend & Project Lead · Mar 2026 – present · Remote · Contract
Solo FE + Architecture / Methodology Lead on a 3-person team adapting a 10-module Go-backed block explorer (derived from decred/dcrdata) to the Monetarium multi-coin chain (VAR + up to 255 SKA coin types).
- Built two custom Claude Code skills (
mutation-analyzer,generate-tasks-json) plus a Node automation tool that scaled architectural analysis and bulk GitHub-issue creation across the 10-module codebase. The mutation-analyzer has a 5-mode state machine (Interview → Explore → Synthesize → Consolidate → Lint), a strict 10-section synthesis template, and an evaluation harness. Sanitized, harness-agnostic versions published at github.com/edshav/skills. - Curated a 30+ document architectural wiki under a methodology I designed: per-area data-flow traces, mutation-impact analyses, pattern catalogs, and a cross-cutting constraint taxonomy linked from every flow.
- Delivered ~12 page/feature adaptations: address page multi-coin rewrite (per-coin balance / charts / CSV,
?coin=URL contract viaCoinCtxmiddleware), SKA-supply charts with big-integer precision, mempool multi-coin aggregation,/parametersand/attack-costMonetarium-specific adjustments. - Cross-stack WebSocket work: migrated the backend WebSocket library to
coder/websocket(replacing a deprecated dependency) via AI-assisted Go work; on the FE, worked extensively in the WebSocket Stimulus controllers powering live block / mempool / address updates. - Modernized the ~6-year-stale FE toolchain (Webpack + plugins + lint / format) and introduced Vitest as the FE test framework — the project had no FE tests when I joined.
- Introduced the team’s process scaffolding from a Telegram-only starting point — GitHub Issues + Project board, daily standups, written specs, agentic AI coding tooling — and drove sprint planning, issue triage, and a “contract-is-the-seam” feature decomposition (1 Feature → 1 parent issue +
[DATA]+[UI]sub-issues).
Stack: Webpack, SCSS, Hotwired Stimulus, WebSocket, Vitest, Go HTML templates; Go + PostgreSQL backend (read and understood); Claude Code skills, Node.
Career break — international relocation
Feb 2025 – Feb 2026 · Buenos Aires, Argentina
Deliberate pause overlapping international relocation to Argentina (settled as legal resident). Returned to work in March 2026 on the Monetarium engagement.
Wezom — Oil & Gas ERP for US client
Senior Frontend Developer · Jan 2022 – Feb 2025 · Remote · ~3 years across 2 phases
Senior FE on a 12-person delivery team for an anonymized US oil & gas client (~1,500 employees, 17 offices). Two sequential phases on the same engagement: Billing MVP, then FE lead on the CRM sub-system.
- Phase 1 — Billing MVP (~14 months). Led the FE team (3 devs) building the FE from scratch. The MVP converted the 1,500-employee client into a multi-year ERP engagement — the headline business outcome.
- Phase 2 — CRM sub-system (~22 months). Lead FE on CRM. Owned architectural calls for the sub-system (state shape, module boundaries, conventions, technology choices) while the company’s FE tech lead operated at cross-ERP coordination level.
- Monorepo with horizontal shared modules. UI library, date utilities, validation library lived as Turborepo packages consumable by any ERP sub-system; sub-system business logic stayed in its own module.
- URL as source of truth for view state. Multi-step forms persist step state in query params + a server-side draft; data tables persist sort / filter / pagination in query params. Refresh-safe, tab-close-safe, shareable URLs.
- Customized AntD data-table system — the headline FE complexity on CRM. Server-side sort / filter / pagination with URL persistence, column resize / reorder / hiding with persistence, inline editing. AntD components were extended directly (not wrapped behind a facade), requiring deep familiarity with AntD’s internals.
- Analytics-view configuration wizard. 6 step form with URL + server-side draft state, conditional step branching, per-step validation via React Hook Form + Zod. Back / refresh / accidental tab-close all recover.
- Dropdown perf for large option lists. Server-side pagination + server-side search inside dropdowns — option list stays small regardless of total option count.
- Followed by Wezom Gamify (Oct 2024 – Feb 2025). Moved to Wezom’s Gamify SaaS — a workplace-engagement product with back-office and front-office portals — for the final ~5 months of my Wezom tenure. Senior FE + mentor on a 5-person team; built dashboards for tasks, achievements, and leaderboards with MUI + Chart.js; shared UI component library and common libs across both portals via Turborepo; mentored the team’s junior FE.
Stack: React, Next.js, TypeScript, Apollo Client, GraphQL, Ant Design (heavily customized), React Hook Form, Zod, Storybook, Turborepo, React Testing Library, MUI, Chart.js.
FreeUA — Banking service-message viewer (legacy → React rewrite)
Frontend Developer · Oct 2020 – Mar 2021 · Remote · ~6 months
Solo FE on a 4-person team rewriting a legacy Java + jQuery monolith’s frontend as a greenfield React.js app. Product was a real-time service-message viewer for the financial sector — server-pushed events rendered as a live data table with filters and search. Shipped a working MVP.
- Greenfield React rewrite. Full-replacement cutover (not strangler); the new React FE shipped as the switched-on replacement of the legacy UI layer. Backend stayed Java.
- End-to-end FE ownership. Module structure, component design, real-time message handling, and FE-stack choices were all mine — no senior FE on the project to defer to.
- Real-time service-message data table. Incoming messages stream in over Socket.IO; the UI renders them as a live, sortable data table with filters and free-text search on top.
Stack: React.js, Socket.IO, SCSS modules.
Earlier Roles
- Unit Space — Frontend Developer · Apr 2021 – Dec 2021 · E-commerce admin panel + storefront on a 5-person team. Stack: React, Redux Toolkit, REST, Ant Design.
- LETSBAR — Frontend Developer · Nov 2019 – Sep 2020 · Solo FE on a reservation web app for restaurants / cafés / bars. Stack: React, Next.js, Redux, SCSS.
- Mine Cards — Frontend Developer · Jun 2019 – Sep 2019 · First commercial role. FE for a social-network MVP with marketplace features. Stack: React, SCSS modules, Redux, Firebase.
Skills
- Languages & Frameworks: TypeScript, JavaScript, React.js, Next.js
- State Management: TanStack Query, Apollo Client, Redux Toolkit
- API Integration: GraphQL, REST, WebSocket, Socket.IO
- Performance Optimization: SSR, caching, lazy loading
- Data Visualization: Chart.js, ECharts, Recharts, Leaflet
- Testing & CI/CD: Vitest, Jest, React Testing Library, Playwright, GitHub Actions
- UI Libraries: Ant Design (deep customization), MUI, Storybook, Tailwind CSS
- Architecture & Code Organization: Monorepo (Turborepo), URL-as-source-of-truth view state
- AI-leveraged development: Custom Claude Code skills, agentic coding workflows, AI-assisted cross-stack delivery
- Project Management: GitHub Projects, Agile / Scrum
Selected Public Work
- github.com/edshav/skills — harness-agnostic SKILL modules for AI coding agents:
mutation-analyzer(mutation-oriented code analysis with a 5-mode state machine),generate-tasks-json(contract-as-seam GitHub-issue planning),github-cli(gh-discipline baseline). Drop-in for Claude Code, Codex, Cursor, Aider. - github.com/edshav/next-redux-saga-typescript — Next.js + Redux + Saga + TypeScript reference example (20★).
- github.com/edshav/ai-global-settings — tooling that composes SKILL modules from multiple sources into one agent’s global settings via git submodules + a TypeScript build pipeline.
Education
Bachelor’s Degree in Mechanical Engineering — Kharkiv University, Ukraine