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 via CoinCtx middleware), SKA-supply charts with big-integer precision, mempool multi-coin aggregation, /parameters and /attack-cost Monetarium-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