mpeshekhonov
RU

Maksim Peshekhonov

Senior Frontend Engineer

Remote, Russia

About

Senior Frontend Engineer, 7 years. Stack: React, TypeScript, JavaScript, Next.js, REST API, CI/CD.

I build complex UIs and ship them to production: roles and access, long forms, GraphQL, WebSocket, CI/CD, production debugging.

Worked at X5, BI.ZONE, NLMK, Citilink. At POTALONU I was the sole frontend: streamer donations and a Canvas hall-layout editor. Looking for a remote Senior Frontend role with ownership of a module from API to release.

Work experience

POTALONU LLC

Senior Frontend Engineer

Ticketing and streamer tools

Sep 2025 - Jun 2026

Remote

sendonate.com

Sole frontend: Mini App, streamer dashboard, overlay

ReactTypeScriptJavaScriptViteWebSocketCI/CDGitHub ActionsSentry

Problem

Needed a donation Mini App, streamer dashboard, and overlay on one backend without drift.

Role

Sole frontend: React, Vite, TypeScript; REST API, WebSocket alerts, GitHub Actions, Sentry.

  • Built on React a donation Mini App, streamer dashboard, and overlay with alerts and progress bar; shipped to production
  • Connected REST API and live WebSocket alerts
  • Set up CI/CD (GitHub Actions) and Sentry: three clients on one API without FE/backend drift
  • Closed the full path: pay in Mini App, streamer dashboard, live alert in OBS

PREEGLOS

Ticket storefront and hall layout editor

Next.jsReactTypeScriptJavaScriptCanvasPostgreSQLCI/CDGitLab CI

Problem

Needed checkout and an in-house hall editor instead of seats.io.

Role

Next.js storefront (Auth.js, PostgreSQL, Orval) plus Canvas hall editor and embeddable seat picker; CI/CD (GitLab CI), Docker Compose.

  • Built the storefront and checkout on Next.js: Auth.js, PostgreSQL, REST API from OpenAPI
  • Built a Canvas hall-layout editor and an embeddable seat-picker widget instead of seats.io
  • In production: dozens of halls and events - organizers draw layouts themselves, buyers pick seats on the site
  • Set up CI/CD (GitLab CI) and delivery with Docker Compose

X5 Tech

Senior Frontend Engineer

IT for X5 Group, Russia's largest grocery retailer

Apr 2024 - Jul 2025

Remote

NKZ 3.0 - procurement approval

Module for hundreds (up to thousands) of internal users

ReactTypeScriptJavaScriptViteOrvalKeycloakreact-hook-form

Problem

Roles, statuses, and multi-step approval in one UI for internal users.

Role

One of 2 frontend engineers: Keycloak, react-hook-form, Orval from OpenAPI, UI Kit; owned the Vite migration with code splitting.

  • One of 2 frontend engineers: React, TypeScript, Keycloak roles, long forms, REST API (Orval), UI Kit
  • Owned the Vite migration with code splitting on long flows
  • Covered the full approval UI cycle: roles, statuses, forms, stage transitions
  • Ran code review and breakdown of frontend modules with backend

BI.ZONE

Senior Frontend Engineer

Cybersecurity - Threat Intelligence products

Jun 2023 - Mar 2024

Remote

Threat Intelligence

Cyber threat analytics, frontend team of 3

ReactTypeScriptJavaScriptGraphQLApolloD3.jsJest

Problem

Threat categories, detail cards, and relationships in one workspace for analysts.

Role

Threat-category sections and detail form for relationships on GraphQL/Apollo; D3 graph; virtualization, Jest.

  • Built threat-category sections and a detail form for relationships on GraphQL (Apollo)
  • Added list virtualization; covered with tests (Jest); ran code review
  • Categories and the detail form became the main way to link threats in the product
  • Built part of the entity relationship graph on D3.js for analysts

NLMK

Senior Frontend Engineer

Steel industry: digital tools for plant production

May 2022 - Jun 2023

Remote

Cast iron release registration

SPA replacing Excel

ReactTypeScriptJavaScriptTanStack TableTanStack QueryKeycloakCI/CDSentry

Problem

Plant teams tracked releases in Excel: data loss and slow shift filtering.

Role

React SPA: TanStack Table, React Query, Keycloak; CI/CD (GitLab CI), Sentry. Plant visit under the real shift scenario.

  • Replaced Excel with a React SPA: tables (TanStack Table), React Query, Keycloak
  • Visited the plant, watched the real shift flow, and reflected it in the UI
  • Plant teams moved to web as the primary process (dozens of shift users)
  • Wired Sentry and CI/CD (GitLab CI): faster to find and fix production errors

Citilink

Frontend Engineer

Large electronics e-commerce

Apr 2021 - Apr 2022

Remote

Catalog

Migration from PHP/Symfony to Next.js

Next.jsReactTypeScriptJavaScriptREST APIReduxJest

Problem

Move catalog to Next.js with filters, SEO, and microservice REST.

Role

Catalog scope: filters, sort, pagination, URL state, REST API; code review in yarn workspaces.

  • Moved the catalog zone to Next.js: filters, sort, pagination, REST API, URL state
  • Kept SEO: pages and filters stay indexable via the URL
  • One URL filter state works for both retail and wholesale catalog views
  • Ran code review in a monorepo (yarn workspaces)

Skills

Languages

TypeScriptJavaScript (ES6+)HTML5CSS3SCSS/SASSPythonNode.js

Frontend

ReactNext.js (SSR/SSG)Redux ToolkitMobXTanStack QueryTanStack TableReact Hook FormZodCanvasFramer MotionRiveLottieReact NativeExpoFeature-Sliced DesignModule FederationTailwind CSSCSS-in-JS / Emotion

Build & CI/CD

GitWebpackViteyarn workspacesmonoreposcode splittingCI/CDGitLab CIGitHub ActionsDocker

API & backend

REST APIOpenAPI/OrvalGraphQL (Apollo Client)WebSocketPostgreSQLSQLDrizzle ORMNest.jsDjango RESTKeycloakAuth.js

Web3

Web3web3.jsTonConnect

Quality & process

JestVitestReact Testing LibraryPlaywrightStorybookSentrycode reviewScrumAgile

UI & product

e-commercedesign systemsUI KitMaterial UIFigmaTelegram Mini Appsi18nextnext-intl

English — B1

  • Tula State Communal Construction College

    Land and property relations · 2015 - 2018

    Tula, Russia

  • Computer Academy STEP

    Web development · 2016

    Tula, Russia

Winner of Digital Breakthrough hackathon (2021, 2020), Hack.Genesis _ONLINE_, Virus Hack finalist, WorldSkills championship expert.

All projects

Home

Open to offers

Senior Frontend / Fullstack — remote or hybrid. Message on Telegram or email; I usually reply within a day.