В данном резюме собраны проекты только в рамках коммерческой разработки (суммарный опыт работы с технологиями JS/TS/React - более 7 лет).
Проекты, которые можно посмотреть сейчас:
Подрядчик РГС
Должность: Ведущий FE разработчик
2025.01 - по настоящее время (1 год 1 месяц)
✅ Результат для заказчика по долгосрочным проектам, за которые я отвечаю:
- Что сделано глобально:
- Старт нового проекта в рамках существующей архитектуры ("микрофронты" Webpack Module Federation) в том числе в рамках интеграции с работой других сайтов с соблюдением код-стайла и корпоративного стека;
- Улучшение UI/UX (замечаю ошибки и неточности в макетах, добиваюсь единых дизайнерских стандартов, когда это необходимо, также могу работать без макетов, соблюдая текущую стилистику);
- Если интересно, могу предоставить небольшой стратегический анализ в формате списка: [дата - чего достигли] за 2025 год;
🛠️ Задачи:
- Формализация, алгоритмизация, декомпозиция поставленных задач (для себя или коллег) для дальнейшего написания программного кода: Делаю из сложных вещей простые, формирую дерево задач;
- Разработка и поддержка клиентской части веб-приложения: Реализация функциональности и логики программы в соответствии с техническим заданием и архитектурными решениями; Разрабатываю Web-интерфейсы (в частности, МикроФронтенды) с "нуля": от верстки по макетам Figma и организации бизнес-логики продукта до демонстрации на "стендах" в рамках разработки одного из продуктов компании-заказчика; Разрабатываю компоненты для построения гибких и масштабируемых интерфейсов;
- Код-ревью других разработчиков (стремимся к чистому коду, пригодному для масштабирования, переиспользования и долгосрочной поддержки); Есть опыт ведения проектов годами 👉 Соответственно, мои привычки способствуют поддержке надлежащего качества кодовой базы проектов: Пишу эффективный JS-код так чтобы его было легко понять, тестировать и отлаживать разработчику любого уровня (акцентирую внимание, это у нас основной критерий код-ревью) + возможность его переиспользования также важна, т.к. это напрямую связано с развитием проекта минимальными трудозатратами + без просадки производительности;
- Исправление выявленных багов, рефакторинг программного кода, ведение и постепенное закрытие небольшого бэклога;
- Выявляю техническое задание (включая неочевидные детали на первых этапах);
- Для работы с бэкендом используем OpenAPI (Swagger);
- Пишу скрипты для лучшего и отказоустойчивого DevOps-инжиниринга по просьбе коллег девопсов когда это необходимо (но без фанатизма);
- Дорабатываю BFF (Node.js) по необходимости;
- Привлекаюсь по вопросам проведения собеседований для найма новых сотрудников -> взял на работу сотрудника для усиления команды;
- Анализирую производительность, нахожу проблемы (Chrome Devtools - Performance), формулирую задачи соответствующим командам;
⚙️ Стек:
- JavaScript ES6+ / TypeScript;
- React;
- Context API, Redux Toolkit, XState;
- MicroFrontends (Webpack Module Federation);
- Web API (в основном для работы с фреймами);
- Styled Components как основной вариант стилизации (но я не против использовать другие способы стилизации, например, CSS modules, популярные UI киты и т.д.);
- Next.js 15.x (Turbopack);
- PWA;
- Docker по необходимости;
- NGINX - в осн. для локальной маршрутизации в dev-режиме;
- Также использую: Strapi, Redux Toolkit, XState, Material UI (MUI), Tailwind CSS, Vite, Vitest, работа с "деревьями", Web Workers, Socket.IO, Telegram API, GraphQL, REST API, react-hook-form и т.д.
- MongoDB - редко;
🎓 Личные достижения:
- Новый опыт в микрофронтенд-архитектуре (Webpack Module Federation);
- Нестандартные задачи, связанные с потоками;
- Улучшил навык диагностики производительности продукта;
- У меня всегда под рукой ощущаемый прогноз релизов, дорожная карта проектов и анализ тренда эффективности моего отдела на основании закрытых задач за последние 3 месяца. Чтоб не выгорать, в свободное время занимаюсь разработкой собственного BI-инструмента (есть статья на хабре);
- Так же в свободное время разрабатываю свой мессенджер (Real-time приложение);
🛡️ В силу NDA-обязательств некоторая информация по внутренним рабочим процессам не разглашается - именно по этой причине наименование текущего работодателя скрыто из резюме
SmartPrice
Должность: FE разработчик
2020.08 - 2024.09 (4 года 1 месяц)
✅ Результат для работодателя:
- Повышение качества продукта: TypeScript добавлен в стек проектов (~2020);
- Запуск двух проектов практически с нуля на современном стеке технологий в соотв. с требованиями UI/UX/DX;
- Доработка и поддержка легаси-проектов с соблюдением принятого стиля кода и безболезненным переходом на более современные технические решения когда это необходимо и возможно;
- Повышение перформанса легаси продуктов - сборщик Rollup добавлен в стек одного из проектов (скорость загрузки страницы существенно увеличилась);
- SEO оптимизация в рамках работы над существующим продуктом;
- Анализ скорости работы с backend-сервисами на стороне SSR для замеров скорости выдачи страниц клиенту;
- Эффективность решения текущих бизнес-задач, связанных с развитием всех продуктов компании как реализация моего опыта (уровень Middle: 3+ лет);
🎓 Личные достижения:
- Написал библиотеку на чистом JS (+Web API) для более эффективного развития легаси без jQ (в рамках улучшения DX для масштабируемости одного из легаси проектов);
- Получил опыт в работе с талантливыми коллегами (некоторые оригинальные подходы к архитектуре, больше внимания к алгоритмическим тонкостям, т.к. основной наш проект ориентирован на вычисления большого количества вариаций данных частично на SSR, частично на клиенте);
🛠️ Задачи (за 4 года) чуть подробнее:
- Разработка интерфейсов;
- Доработка, поддержка, улучшение легаси кода, конфигурация проектов "с нуля" (стек перечислен ниже);
- Написание BFF сервисов на Node.js для повышения эффективности отдела IT и автоматизация рутины;
- Активное участие в создании более удачного UI, UX, DX, CI/CD;
- Взаимодействие с менеджерами и бэкендерами при проектировании новых фич;
- Ревью кода других разработчиков;
- Реверс-инжиниринг легаси (для выявления требований к новым проектам);
🎓 Навыки, применяемые на текущем месте:
- Умение разделять UI и бизнес логику веб-приложения;
- Из сложных задач делать простые / Умение писать переиспользуемый, расширяемый, легко тестируемый и поддерживаемый код (при этом не переусложнять кодовую базу), соблюдая принятый стиль кода в текущих проектах;
- Настроить сборщик, если нужно (как правило, на этапе написания проекта "с нуля" или в рамках задачи сделать быстрее уже имеющийся легаси код);
- Оптимизировать существующий код (если нужно);
- Unit и Snapshot тесты в основном;
- Умение верстать адаптивный UI (как правило, по макетам Figma, а также часто требовалось импровизировать без макетов - с вёрсткой все нормально);
- Точные прогнозы по срокам реализации по спец. методике (с планированием все Ok); также работал по Scrum и Waterfall;
- Улучшать DX легаси кода / Переписать объемное легаси на новый стек (приходилось не часто, но есть что рассказать);
⚙️ Основной стек (суммарно по всем проектам):
- JavaScript;
- TypeScript;
- React;
- Next;
- Webpack / Vite;
- SCSS modules;
- Styled-Components;
- Material UI;
- Tailwind CSS;
- Telegram Bot API;
- Возможно, что-то ещё, в зависимости от конкретного проекта (проекты очень разнообразные; в целом, предпочитаю React и прикладные технологии для работы с ним);
Полный перечень технологий (скорее, для парсеров текста данного резюме), присутствующих в проектах данной компании с которыми я работал (из списка убрал устаревшие технологии): Ubuntu / GIT / Node / Express / React / React Router / React Context API / Redux Toolkit / Redux-Saga / SSR / Next / Jest / styled-components / Material UI / Ant Design / Vite, Vitest / PWA / Tailwind CSS / Headless UI / SASS / XState / Valtio / JavaScript Vanilla ES6+ / Web API / Web Workers / Websocket / Socket.io / Rollup / Webpack / Gulp / REST API / GraphQL / Bash / PM2 / Docker / Electron / Strapi / Docker / Django
Movista
Должность: FE разработчик
2020.03 - 2020.03 (1 месяц)
Про сам продукт (каким он был до 2020) 👉 https://youtu.be/nW6r_jowMAA?si=Ek-bBjZDtucxd-nL
✅ Результат:
- За короткое время, что успел здесь поработать (до первого локдауна COVID-19) успел реализовать пару полезных фич для продакшена;
🛠️ Задачи:
- Разработка интерфейсов (Frontend);
⚙️ Основной стек:
- React / Redux / TypeScript;
- SCSS modules;
Uremont
Должность: Ведущий FE разработчик
2018.05 - 2020.03 (1 год 10 месяцев)
Про сам продукт 👉 https://youtu.be/AkpZnmD4e1k?si=jpWoKdISvt38sUDY
✅ Результат для работодателя:
- Повышение качества продукта: TypeScript добавлен в стек проектов (~2019);
- Повышение эффективности отдела FE;
🛠️ Задачи:
- Разработка интерфейсов
- Код ревью
- Планирование релизов, распределение задач в команде
⚙️ Основной стек:
- Node.js / Express / SSR;
- ES6+;
- React / Redux / redux-thunk / redux-symbiote;
- SSR (самописное решение);
- HOCs / recompose;
- styled-components UI-kit as Atomic Design System;
- Storybook;
- CSS3;
- Figma;
- Google maps API / Google analytics;
Предпочтения ПО:
- Ubuntu 20.04;
- VSCode;
Особенно интересовался технологиями (вне работы):
- Redux-Saga;
- Связка: Electron / React (для десктопных приложений);
- Связка: Next.js / React / Socket.io / Strapi / GraphQL / MongoDB / PM2 / NGINX;
🎓 Личные достижения и навыки которые удалось эффективно применить в подпроектах:
- Первый опыт работы в команде профессионалов (уровень Middle);
- Примерно через год работы: Небольшой опыт руководства отделом Frontend-разработки (2-4 человека);
- react hooks;
- Фуллстек Strapi / MongoDB / React;
- NGINX;
- Docker;
- Парсинг сайтов (auto.ru);
- Нагрузочное тестирование (на отказоустойчивость);