180 lines
13 KiB
HTML
180 lines
13 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8" />
|
||
<title>Oleg Proskurin — CV — Salmon (Senior Frontend)</title>
|
||
<link rel="stylesheet" href="/templates/cv-style.css" />
|
||
</head>
|
||
<body>
|
||
<header class="cv-header">
|
||
<h1 class="name">OLEG PROSKURIN</h1>
|
||
<p class="role"><strong>Senior Frontend & Full-Stack Engineer / Tech Lead</strong></p>
|
||
<p class="contacts">Remote · GMT+7 (EMEA overlap, AU overlap) · Deel contractor, W-8BEN</p>
|
||
<p class="contacts">
|
||
<a href="mailto:usulpro@gmail.com">usulpro@gmail.com</a> ·
|
||
Telegram <a href="https://t.me/usulpro">@usulpro</a> ·
|
||
<a href="https://www.linkedin.com/in/oleg-proskurin-76784453/">LinkedIn</a> ·
|
||
<a href="https://github.com/UsulPro">GitHub</a> ·
|
||
<a href="https://dev.to/usulpro">Dev.to</a> ·
|
||
<a href="https://focusreactive.com/blog/author/usulpro/">Blog</a>
|
||
</p>
|
||
</header>
|
||
|
||
<section class="cv-section">
|
||
<h2>Summary</h2>
|
||
<p>
|
||
Senior frontend and full-stack engineer with 9 years of production experience,
|
||
specialized in <strong>React, Next.js, and TypeScript</strong> with deep
|
||
<strong>design-system and component-library</strong> work, including 5 years
|
||
leading remote projects for US, UK, EU, and AU clients. Storybook steering-team
|
||
alumnus and maintainer of widely-used Material-UI and component tooling on NPM.
|
||
Comfortable across the full stack: Redux Toolkit / RTK Query state, Emotion
|
||
styling, REST / GraphQL integration with generated typings, web performance
|
||
(Core Web Vitals, bundle analysis) and accessibility. Currently Tech Lead on
|
||
PrimeUI (<a href="https://primeui.com/">primeui.com</a>, launched Feb 2026),
|
||
where I built and maintain a 200+ React component library, the design-system
|
||
tooling, and the pipeline that composes components into production pages.
|
||
</p>
|
||
</section>
|
||
|
||
<section class="cv-section cv-skills">
|
||
<h2>Skills</h2>
|
||
<p><strong>Frontend</strong>: TypeScript, React (18/19), Next.js (App Router, SSR/SSG/ISR, data fetching). Redux Toolkit, RTK Query. Emotion, Tailwind, Material-UI (MUI), shadcn-style design systems. TanStack Start/Router, Vite, Webpack. Component-driven development, design systems & shared component libraries, Storybook, theming & localization</p>
|
||
<p><strong>Testing & Quality</strong>: React Testing Library, Jest, Playwright, Vitest. Sentry, error monitoring. ESLint, Prettier. CI/CD: GitHub Actions, Bitbucket Pipelines, CircleCI, Travis, Netlify, Vercel. Code review, architecture design</p>
|
||
<p><strong>Performance & Accessibility</strong>: Core Web Vitals, Lighthouse, bundle analysis, render optimization, WCAG</p>
|
||
<p><strong>Data & Integration</strong>: REST & GraphQL with generated API typings, WebSockets. PostgreSQL, Drizzle ORM. Vercel, Cloudflare, Serverless & Edge functions, Docker</p>
|
||
<p><strong>Headless CMS & eCommerce</strong>: Sanity, Storyblok, Contentful, Payload, Hygraph, DatoCMS. Shopify, Crystallize, Stripe. Content modeling, multi-environment publishing, large-scale migrations</p>
|
||
<p><strong>AI Engineering</strong>: LLM orchestration (multi-model routing, prompt caching), MCP server development, AI-augmented development workflows (Claude Code, Codex daily)</p>
|
||
</section>
|
||
|
||
<section class="cv-section">
|
||
<h2>Experience</h2>
|
||
|
||
<article class="cv-job">
|
||
<div class="cv-job-header">
|
||
<span class="company">PixelPoint Ltd.</span>
|
||
<span class="role">Tech Lead & Senior Frontend / Full-Stack Engineer, PrimeUI</span>
|
||
</div>
|
||
<div class="cv-job-meta">
|
||
<span>France · Remote</span>
|
||
<span class="dates">Feb 2025 – Present</span>
|
||
</div>
|
||
<p class="cv-job-desc" style="font-style: normal;">
|
||
PrimeUI (<a href="https://primeui.com/">primeui.com</a>, launched Feb 2026) is a
|
||
multi-surface platform that generates production-ready websites from a curated
|
||
React component library. Lead developer owning ~70% of platform architecture,
|
||
with the component library, the design system, and the component-based page
|
||
generation pipeline as my core areas.
|
||
</p>
|
||
<ul>
|
||
<li><strong>Built and maintained the component library that is the core product asset</strong>: 200+ React components with props schemas, variants, and design constraints, organized into families and groups. Curated and structured it as a design system that the rest of the platform builds on.</li>
|
||
<li><strong>Built the design-system tooling</strong>: an internal tool to define a project's visual identity (colors, typography, design tokens) and apply it across the component library, so generated pages carry a consistent theme.</li>
|
||
<li><strong>Built a component-matching scoring model</strong> that evaluates how well adjacent components fit together: it compares their layouts, entry and exit widths, and component format, and produces a combinability score that ranks candidate compositions.</li>
|
||
<li><strong>Set up the page generation pipeline</strong>: composes components from the registry into full responsive pages, validating each against the component's props schema with retry recovery, then renders and previews before export.</li>
|
||
<li><strong>Own the Studio web app frontend</strong> (TanStack Start, React, TypeScript): canvas-based sitemap interface, generation/preview/editing UI, with WebSocket-based streaming of responses into the UI.</li>
|
||
<li><strong>Designed the code-export pipeline</strong>: generates a customer-owned, production-ready Next.js + Tailwind project (no vendor lock-in) in ~45 sec, ~1.5 min end-to-end. Also built and published the <code>@primeuicom/mcp</code> server on NPM (25 tools, verified across 6 coding agents).</li>
|
||
<li><strong>Run code review and architecture discussions</strong> as daily routine; introduced Claude Code and Codex into team workflow, built custom developer tooling on top (codex-bee, epic-loop).</li>
|
||
</ul>
|
||
</article>
|
||
|
||
<article class="cv-job">
|
||
<div class="cv-job-header">
|
||
<span class="company"><a href="https://focusreactive.com">FocusReactive</a></span>
|
||
<span class="role">Tech Lead & Senior Frontend / Software Engineer</span>
|
||
</div>
|
||
<div class="cv-job-meta">
|
||
<span>London · Remote</span>
|
||
<span class="dates">May 2019 – Feb 2025 (5 yrs 10 mos)</span>
|
||
</div>
|
||
<p class="cv-job-desc" style="font-style: normal;">
|
||
International web consultancy for clients in the US, UK, Europe, and Australia.
|
||
Shipped 15 production Next.js / React applications with TypeScript, Redux Toolkit
|
||
and RTK Query, headless CMS, and serverless/edge backends.
|
||
</p>
|
||
<ul>
|
||
<li><strong>Built and maintained shared component libraries and design systems</strong> across client projects, working component-driven with Storybook, theming, and localization. Shipped CMS-KIT, an open-source Headless CMS starter and component library reused across 15 projects, cutting kickoff from days to hours and accelerating development by ~30%.</li>
|
||
<li><strong>Owned frontend performance and accessibility</strong>: optimized client applications for Core Web Vitals, ran bundle analysis and render optimization, and brought pages to WCAG accessibility standards.</li>
|
||
<li><strong>Built the frontend for MarketFinance</strong> (<a href="https://focusreactive.com/marketfinance-case-study/">case study</a>), a fintech lending platform, and other consumer-facing products across regulated and high-traffic domains.</li>
|
||
<li><strong>Architected the Tipico US backend on Sanity Headless CMS</strong>: 5 publishing environments, 3 datasets, white-label architecture. Operating scale: 122 CMS users, 75M requests/month, 98 document types, 165K stored documents.</li>
|
||
<li><strong>Integrated REST and GraphQL APIs with generated typings</strong> across projects; authored a <a href="https://focusreactive.com/headless-graphql-api-comparison/">comparison of headless GraphQL APIs</a> on the FocusReactive blog.</li>
|
||
<li><strong>Led technical hiring and team development</strong>: designed an assessment mirroring real working conditions, ran 30 interviews leading to 8 hires, mentored new engineers; introduced error monitoring (Sentry) and code-review practices.</li>
|
||
</ul>
|
||
</article>
|
||
|
||
<article class="cv-job">
|
||
<div class="cv-job-header">
|
||
<span class="company"><a href="https://github.com/GitNation/live-conferences">GitNation</a></span>
|
||
<span class="role">Senior Software Engineer (Part-time, concurrent)</span>
|
||
</div>
|
||
<div class="cv-job-meta">
|
||
<span>Remote</span>
|
||
<span class="dates">May 2019 – Feb 2025</span>
|
||
</div>
|
||
<p class="cv-job-desc" style="font-style: normal;">Built publishing flow via Slack API and a reusable web framework for conference websites; migrated GitNation conferences to Headless CMS.</p>
|
||
</article>
|
||
|
||
<article class="cv-job">
|
||
<div class="cv-job-header">
|
||
<span class="company"><a href="https://osome.com/sg/">Osome</a></span>
|
||
<span class="role">Frontend Developer</span>
|
||
</div>
|
||
<div class="cv-job-meta">
|
||
<span>Singapore</span>
|
||
<span class="dates">Jun 2018 – May 2019</span>
|
||
</div>
|
||
<p class="cv-job-desc" style="font-style: normal;">Built fuzzy-logic search system and advanced UI animations for the corporate-services platform.</p>
|
||
</article>
|
||
|
||
<article class="cv-job">
|
||
<div class="cv-job-header">
|
||
<span class="company"><a href="https://www.skipp.dev">Skipp</a></span>
|
||
<span class="role">JavaScript Engineer</span>
|
||
</div>
|
||
<div class="cv-job-meta">
|
||
<span>Moscow</span>
|
||
<span class="dates">Nov 2017 – Jun 2018</span>
|
||
</div>
|
||
<p class="cv-job-desc" style="font-style: normal;">B2B marketplace for Skolkovo Innovation Center (100 companies); GraphQL subscriptions for real-time chat.</p>
|
||
</article>
|
||
</section>
|
||
|
||
<section class="cv-section">
|
||
<h2>Portfolio</h2>
|
||
<p class="cv-portfolio">
|
||
<a href="https://primeui.com/">PrimeUI</a>,
|
||
<a href="https://focusreactive.com/marketfinance-case-study/">MarketFinance</a>,
|
||
<a href="https://www.firsty.app/">Firsty</a>,
|
||
<a href="https://focusreactive.com/sanity-platform-case-study/">Tipico-Platform</a>,
|
||
<a href="https://www.iwm.org.uk/membership#membershipModal">IWM membership</a>,
|
||
<a href="https://focusreactive.com/notsoape-case-study/">NotSoApp</a>,
|
||
<a href="https://www.caleffionline.it/">Caleffy</a>,
|
||
<a href="https://focusreactive.com/hardhat-case-study/">Hardhat</a>,
|
||
<a href="https://focusreactive.com/porchlight-case-study/">Porchlight</a>,
|
||
<a href="https://github.com/GitNation/live-conferences">Gitnation</a>,
|
||
<a href="https://focusreactive.com/blog/">FocusReactive blog</a>,
|
||
<a href="https://join.reverse.health/tour/nutrition-monthly-generic-others">Reverse Health</a>
|
||
</p>
|
||
</section>
|
||
|
||
<section class="cv-section">
|
||
<h2>Open Source & Writing</h2>
|
||
<ul>
|
||
<li><strong>Storybook</strong>: contributor and steering team member during the 2016–2017 community revival; addon maintainer (storybook-addon-console, 7M NPM downloads total; storybook-addon-material-ui, 18K weekly).</li>
|
||
<li><strong>UI components</strong>: <a href="https://www.npmjs.com/package/@usulpro/color-picker"><code>@usulpro/color-picker</code></a>, a Material-style React color-picker component, ~17K weekly downloads six years after release.</li>
|
||
<li><strong>AI developer tooling</strong>: <a href="https://github.com/usulpro/codex-bee">codex-bee</a>, a wrapper for long-running Codex sessions; <a href="https://github.com/usulpro/epic-loop">epic-loop</a>, a Codex skill addressing context degradation in long autonomous coding sessions.</li>
|
||
<li><strong>Technical writing</strong>: articles on frontend, Headless CMS, GraphQL, and developer tooling at <a href="https://focusreactive.com/blog/author/usulpro/">FocusReactive blog</a> and <a href="https://dev.to/usulpro">Dev.to</a>.</li>
|
||
</ul>
|
||
</section>
|
||
|
||
<section class="cv-section">
|
||
<h2>Education</h2>
|
||
<p><strong>Master in Engineering</strong>, Faculty of Electronic Engineering, Moscow Power Engineering University (<a href="https://mpei.ru/lang/en/Pages/default.aspx">MPEI</a>), Russia</p>
|
||
</section>
|
||
|
||
<section class="cv-section">
|
||
<h2>Languages</h2>
|
||
<p>English C1 · Russian native</p>
|
||
</section>
|
||
</body>
|
||
</html>
|