Привет! Я Дмитрий Шмаков
Lead Product Engineer

Проектирую и выпускаю сложные веб-продукты на React, Next.js и Node.js: от архитектуры фронтенда и производительности до API и прикладного ИИ.

Кратко для рекрутера

Ведущий инженер, который сам пишет код

  • 10+ лет в веб-разработке
  • Финтех финансовые продукты с требованиями регуляторов
  • ИИ функции в реальных продуктах, а не прототипы
  • 25 человек в крупнейшей команде под моим руководством
  • C1 английский язык
  • Родной русский язык

Ключевые навыки

  • Фронтенд React, TypeScript, Next.js, React Native
  • Бэкенд Node.js, Nest.js, Java, Spring Boot, Kotlin
  • ИИ Функции и агенты на базе ИИ, инструменты для разработчиков
  • Качество Jest, Playwright, CI/CD, Core Web Vitals

Результаты работы

Избранные кейсы

Три проекта: исходная задача, моя зона ответственности и измеримый результат.

Neverless

Lead Product Engineer

Задача
Медленный публичный сайт и большое количество ручных операций во внутренних процессах.
Зона ответственности
Сначала отвечал за производительность сайта, затем самостоятельно разработал внутреннюю систему от интерфейса до API.
Решение
Снизил p75 LCP на мобильных до 1,16 с и автоматизировал основные операционные сценарии.
Результат
1,16 с p75 LCP на мобильных, 62 мс INP, на 60% меньше ручной работы
Стек и масштаб
Next.js, TypeScript, полный цикл продуктовой разработки

Vega Investments

Lead Software Engineer

Задача
Новая платформа для управления частными инвестициями, небольшая команда и 10 месяцев до запуска.
Зона ответственности
Спроектировал архитектуру фронтенда и руководил выпуском продукта.
Решение
Построил приложение на React, Nest.js и Kotlin, внедрил автоматические тесты и CI/CD.
Результат
Раунд на $20 млн, выпуск на 50% быстрее, на 80% меньше инцидентов в работе продукта
Стек и масштаб
React, TypeScript, Nest.js, Kotlin, Playwright

Revolut

Senior Software Engineer

Основной сайт

Задача
Основной сайт Revolut обслуживал более 4 млн пользователей в месяц и включал более 80 тыс. страниц, но загружался медленно и должен был соответствовать требованиям регуляторов.
Зона ответственности
Отвечал за производительность фронтенда, соответствие GDPR и доступность.
Решение
Оптимизировал критические сценарии загрузки и рендеринга на всем сайте.
Результат
Более 4 млн пользователей в месяц, более 80 тыс. страниц, время загрузки -75%, TTI -45%
Стек и масштаб
React, TypeScript, фронтенд-архитектура, производительность

Revolut Credit

Задача
Кредитные сценарии для более чем 100 тыс. клиентов и внутренние инструменты для команды продукта.
Зона ответственности
Отвечал за весь фронтенд: клиентские приложения и внутренние системы.
Решение
Разработал интерфейсы и общую библиотеку React-компонентов для внутренних инструментов.
Результат
99,97% доступности, 97,8% покрытия тестами, выпуск функций на 30% быстрее, на 30% меньше дефектов
Стек и масштаб
React, TypeScript, Kotlin, внутренние инструменты, автотесты

10+ лет в продуктовой разработке

Опыт работы

Lead Product Engineer

Работаю на стыке продукта и разработки: уточняю задачу, выбираю архитектуру, реализую решение и отвечаю за его скорость и надежность.

10+ лет

ИИ без лишнего шума

Выпускаю функции на базе ИИ в реальные продукты

Доводил идеи на базе ИИ до работающих инструментов: платформы для экспериментов, NLP для юридических документов и помощники для разработчиков.

Основные направления

  • Функции на базе ИИ в реальных продуктах
  • Платформы для экспериментов
  • NLP для юридических документов
  • Инструменты для разработчиков

Опыт

  1. Neverless

    Lead Product Engineer

    • Next.js
    • Astro
    • React
    • TypeScript
    • Tailwind CSS
    • Vite
    • Chakra UI
    • React Query
    • Java 24
    • Google Cloud
    • PostgreSQL
    • Redis
    • Kubernetes
    • Pulumi
    • Docker
    • Playwright
    • Vitest
    • Агенты на базе ИИ

    На мобильных устройствах LCP Neverless.com превышал 4 секунды. Снизил p75 LCP до 1,16 с и INP до 62 мс, затем разработал внутреннюю систему от интерфейса до API. Она сократила объем ручной работы операционной команды примерно на 60%.

    • 1,16 с p75 LCP на мобильных
    • 62 мс INP
    • На 60% меньше ручной работы
  2. Marbl

    Founding Engineer

    • Next.js
    • React
    • TypeScript
    • Tailwind CSS
    • FastAPI
    • Vercel
    • React Query
    • Storybook
    • Vitest
    • Playwright
    • Sentry
    • Zod
    • Агенты на базе ИИ

    В роли Founding Engineer с нуля построил фронтенд маркетплейса медицинской эстетики на Next.js: поиск, каталог и безопасную запись. Также разработал систему A/B-тестов на базе ИИ для пользователей и клиник в Великобритании и США.

    • Маркетплейс медицинской эстетики
    • A/B-тесты на базе ИИ
  3. Vega Investments

    Lead Software Engineer

    • React
    • TypeScript
    • Vite
    • React Query
    • Nest.js
    • Kotlin
    • Google Cloud
    • Kubernetes
    • CI/CD
    • Playwright
    • TabbyML

    Руководил фронтенд-разработкой платформы для управления частными инвестициями. Команда из пяти человек выпустила первую версию за 10 месяцев; продукт стал основой для раунда на $20 млн. Внедрил строгую типизацию, CI/CD, Playwright и TabbyML. После роста команды до 25 человек скорость выпуска выросла на 50%, а количество инцидентов в работе продукта сократилось на 80%.

    • Раунд на $20 млн
    • На 50% быстрее выпуск
    • На 80% меньше инцидентов в работе продукта
  4. Revolut

    Senior Software Engineer

    • React
    • TypeScript
    • Gatsby
    • Next.js
    • Redux
    • React Query
    • Kotlin
    • Java
    • Google Cloud
    • Cypress
    • Playwright
    • Jest
    • React Testing Library
    • styled-components

    Для основного сайта Revolut с более чем 4 млн пользователей в месяц и более 80 тыс. страниц снизил время загрузки на 75%, а Time to Interactive - на 45%. При этом сохранил соответствие требованиям GDPR и веб-доступности.

    В Revolut Credit разрабатывал клиентские приложения и внутренние инструменты для продукта с более чем 100 тыс. клиентов. Обеспечил доступность сервиса 99,97% при покрытии тестами 97,8% и создал общую библиотеку React-компонентов для внутренних систем. В результате функции стали выходить примерно на 30% быстрее, а количество дефектов снизилось на 30%.

    • Более 4 млн пользователей в месяц
    • Более 80 тыс. страниц
    • Доступность сервиса 99,97%
  5. Level.Travel

    Senior Software Engineer

    • React
    • JavaScript
    • Node.js
    • Ruby on Rails
    • SSR
    • Webpack
    • Jest
    • Sass

    Перестроил фронтенд-инфраструктуру и процессы сборки. Время сборки сократилось с 2 часов до 20 минут, а релизы стали выходить втрое чаще. Добавил SSR для поиска и бронирования: время первой загрузки сократилось на 45%, органический трафик вырос на 20%.

    • Сборка: с 2 ч до 20 мин
    • Релизы в 3 раза чаще
    • На 20% больше органического трафика
  6. Open Bank

    Software Engineer

    • React
    • React Native
    • JavaScript
    • Ramda
    • Redux
    • Node.js
    • REST API
    • Jest

    Разрабатывал функции на React Native для Rocketbank и с нуля создал MVP цифровой ипотеки. Упрощенный пользовательский сценарий увеличил конверсию в заявку на 20%.

    • Конверсия в заявку выше на 20%
  7. JureCloud

    Co-founder / CTO

    • React
    • TypeScript
    • Node.js
    • PostgreSQL
    • Docker
    • NLP

    Стал сооснователем стартапа по автоматизации юридических документов и руководил командой из шести инженеров. Продукт вдвое сократил время подготовки документов для клиентов.

    • На 50% меньше времени на подготовку документов
  8. Netbell

    Software Engineer

    • JavaScript
    • jQuery
    • Node.js
    • D3.js
    • Sass

    Разработал три фронтенд-проекта на jQuery, Node.js, D3.js и Sass: дашборды и интерактивные визуализации данных.

    • Интерактивные продукты для визуализации данных

Сильные стороны

  • Продуктовая разработка

    Превращаю неясную задачу в готовую функцию: уточняю требования, проектирую интерфейс и API, довожу до релиза.

  • Фронтенд-архитектура

    Проектирую приложения и дизайн-системы на React, TypeScript и Next.js, которые ускоряют работу команды.

  • Производительность

    Измеряю LCP, INP и CLS, нахожу узкие места и подтверждаю улучшения данными.

  • Инструменты на базе ИИ

    Встраиваю функции на базе ИИ в продукты, внедряю помощников для разработчиков и быстро проверяю гипотезы.

  • Бэкенд-системы

    Разрабатываю API и сервисы на Node.js и Nest.js, при необходимости работаю с Java и Kotlin.

  • Лидерство

    Настраиваю код-ревью, помогаю инженерам расти и выстраиваю понятный процесс выпуска изменений.

Обо мне

Обо мне

Привет! Я Дмитрий.

Я Lead Product Engineer в Neverless. Веду продуктовые задачи целиком: помогаю сформулировать проблему, проектирую решение, пишу фронтенд и бэкенд, настраиваю инфраструктуру и отвечаю за релиз и работу продукта после запуска.

Также я ведущий организатор MoscowJS - JavaScript-сообщества, которое провело 63 митапа и продолжает проводить новые. Вне работы интересуюсь ИИ и инвестициями, фотографирую, читаю об истории и астрономии, бегаю.

Скачать резюме

MoscowJS

Сообщество

Ведущий организатор

63+ проведенных митапов

Сообщество JavaScript-разработчиков в Москве с прикладными докладами, открытыми обсуждениями и 63 проведенными митапами.

Открыть MoscowJS

Выступления

TbilisiJS

Еще один способ локализации сайтов ⁠EN

Практический доклад о нестандартном подходе к локализации сайтов с демонстрацией на живых примерах.

Смотреть

GeekRel

Отношения с сообществами: когда и зачем они нужны IT-компаниям ⁠RU

Панельная дискуссия о том, как независимые сообщества работают со спонсорами и сохраняют самостоятельность.

Смотреть

FrontendConf

Особенности многонационального сайтосмотрения ⁠RU

Как адаптировать дизайн к культурным особенностям разных стран с помощью модели Хофстеде и проверить результат по конверсии.

Смотреть

HolyJS

Что за зверь этот комьюнити-ивент и зачем их так много? ⁠RU

Круглый стол о том, зачем разработчикам профессиональные сообщества и какие форматы действительно работают.

Смотреть

MoscowJS 40

Обработка текстов в JavaScript для чайников ⁠RU

Обработка текста в JavaScript: исправление опечаток, морфология и определение языка на примерах с живым кодом.

Смотреть

Публикации

Статические генераторы сайтов

Дока

Статические генераторы сайтов ⁠RU

Сравнение SSG, SSR и клиентского рендеринга, островная архитектура и выбор между Astro, Next.js и Gatsby.

Читать
Дмитрий Шмаков: путь от джуна до тимлида

журнал «Код»

Дмитрий Шмаков: путь от джуна до тимлида ⁠RU

Интервью о пути от младшего разработчика до тимлида: ошибки, дежурства, ответственность и делегирование.

Читать
Frontend финтех-приложений: лучшие практики, тренды и рекомендации

VAITI

Frontend финтех-приложений: лучшие практики, тренды и рекомендации ⁠RU

Архитектура финтех-фронтенда, Feature-Sliced Design, BFF, производительность и требования к надежности финансовых продуктов.

Читать

Меня цитируют

Гид по IT-сообществам: форматы, особенности и очень много ссылок

Хабр

Гид по IT-сообществам: форматы, особенности и очень много ссылок ⁠RU

Рассказал, как профессиональные сообщества выбирают форматы встреч и сохраняют устойчивую команду организаторов.

Читать
Relocate жив: куда еще можно уехать (пока)

Skillbox

Relocate жив: куда еще можно уехать (пока) ⁠RU

Поделился опытом релокации и рассказал о направлениях, которые выбирали специалисты в 2022 году.

Читать
Почему мы верстаем только на WebFlow

Embacy / vc.ru

Почему мы верстаем только на WebFlow ⁠RU

Прокомментировал преимущества и ограничения разработки сайтов на Webflow.

Читать

Подкасты

MoscowPython Podcast

JavaScript против Python ⁠RU

Сравнили JavaScript и Python: сильные стороны языков и идеи, которые их экосистемы перенимают друг у друга.

Смотреть

Moscow Programmists Club

Современный фронтенд ⁠RU

Фронтенд в 2025 году: React, серверный подход, редакторы кода с ИИ, Bun и Deno.

Смотреть

This is Tech Talks

Web Vitals API ⁠EN

Обсудили Web Vitals API, разницу между полевыми данными и Lighthouse, а также измерение отзывчивости интерфейсов.

Смотреть

Debug карьеры

MoscowJS: как выжить IT-сообществу? ⁠RU

Как MoscowJS провел 63 митапа, выстроил команду организаторов и продолжает развивать сообщество.

Смотреть

Контакты

Есть вакансия, проект или задача по производительности? Давайте обсудим.

Связаться