🤠 Бэкендеры, найдите себе команду по вайбам! Проверить мэтч → в вайб-квизе
Данила Алпатов (alpatovdanila), 33 года, Россия, МытищиДанила Алпатов (alpatovdanila), 33 года, Россия, Мытищи

Данила Алпатов

Frontend-разработчикФронтенд разработчикВеб-разработчикСтарший (Senior)
От 4500 $Рассмотрю предложения

Контакты

Войти
Возраст: 33 года
Опыт работы: 12 лет и 11 месяцев
Регистрация: 05.11.2015
Последний визит: 3 недели назад
Гражданство:
Местоположение: Россия, Мытищи
Дополнительно: готов к удаленной работе
Знание языков:

Обо мне

Здравствуйте! Меня зовут Данила, я фронтенд-разработчик. 

Я занимаюсь вебом больше 15 лет — писал бэкенд на PHP и node, делал прототипы и сам дизайн, верстал и продавал, руководил небольшими (3 человека) командами, отвечал за продукт перед заказчиком, работал в больших и очень больших продуктовых командах в самых разных конфигурациях. 

Хорошо знаю JavaScript и DOM/Browser API, пишу на React, Effector и Redux/MobX, ориентируюсь в современном стеке сборки и тестирования. 

Скептически отношусь к использованию LLM для написания кода и внимательно слежу за осознанностью комментариев на код-ревью )

Мои сильные стороны - технический опыт, умение понимать задачи бизнеса, уравновешенное отношение к технологиям и умение быстро и самостоятельно разбираться в концепциях, технологиях и подходах.

Сейчас я ищу работу над интересным продуктом в компании с не душной корпоративной культурой. Отдельным пунктом люблю прозрачные коммуникации внутри компании, эджайловость в процессах, всяческие 360 ревью и прочие инструменты быстрого цикла обратной связи. 

Мои знания — TS,  JavaScript ESNext React, Effector.js, MobX, Redux, Webpack/Vite git, Mocha, CSS и препроцессоры, БЭМ, CSS-in-JS, HTML, UX/UI (Figma/Photoshop). Английский — Intermediate.


Ссылка на мой гитхаб — https://github.com/alpatovdanila

Навыки

TypeScript
Vanilla.js
React
Effector
MobX

Опыт работы

  • Создаем лучший российский видеосервис
    От 100 до 1000 сотрудников
    Фронтенд разработчик (Старший)
    Июнь 2024 — По настоящее время (6 месяцев)
  • Мы не просто любим путешествовать, мы создаем сервисы, помогающие таким же как мы любителям самостоятельных путешествий
    От 100 до 1000 сотрудников
    Фронтенд разработчик (Старший)Frontend-разработчик
    Декабрь 2021 — По настоящее время (3 года)
    Я работал над  крутейшим, широким и разнообразным продуктом в сфере партнерского маркетинга.

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

    Я писал очень много разнообразного кода на TS, под реакт и ваниллу,  иногда помогал с бэкендом и дизайном. Можно сказать, что это была одна из сильнейших прокачек меня как T-shaped специалиста. 

    Основной стек -  TS+DOM+ React
    Вспомогательный стек - Vite, Webpack, Docker, вот это все фронтовое
    Основные софт-скиллы - инициативность, фасилитация, систематизация
  • Продуктовая IT компания, разрабатывающая решения для автобизнеса (B2B)
    От 10 до 100 сотрудников
    Старший Frontend-разработчик
    Сентябрь 2020 — Декабрь 2021 (1 год и 4 месяца)

    В компании я отвечаю за frontend-часть продукта Ecom, работающего в составе платформы OnePlatform. Со мной над фронтендом так же работают мои коллеги - два middle разработчика.

    Своими основными достижениями считаю:

    Полный перевод продукта на новый стек. 

    Это была плановая, большая и важная задача для компании. Фактически, это означало переписывания продукта с нуля. В этом проекте я отвечаю за архитектуру и фреймворк-часть проекта, соглашения и систему релизов, взаимодействие с бизнесом, кросс-командное взаимодействие, за интеграцию с другими продуктами платформы, провожу код-ревью, анализ задач, планирование.

    Результат - многократно возросшая скорость разработки новых фич, простота поддержки существующих, стало возможным использовать тестирование, современные практики оптимизации бандлов, улучшилась скорость работы продукта. Текущий стек проекта - React + TS + Effector. Мы коммитим по Сonventional Commit, ведём проект по Feature Slices, используем авторелизы и доставку через gitlab ci.

    Система релизов в новом проекте

    Из-за особенностей платформы, релизы нашего продукта под неё были сопряжены с большим количеством сложностей: для легаси-версии нашего продукта время «от IDE до Production» составляло до 10 часов и требовало много ручной работы ответственного сотрудника.  Для улучшения этой ситуации я пересмотрел то, как наш продукт работает в составе платформы, предложил решение, участвовал в его разработке, и, совместно с командой платформы, довёл его до релиза. Задачу удалось решить, и теперь релизы фронтенд-части продукта может делать любой разработчик в команде. Время релиза сейчас составляет около 15 минут, а сам релиз и доставка происходят автоматически.

    Межпродуктовое взаимодействие на фронтенде

    Интересной была задача по интеграции нашего продукта с продуктом другой команды. Наши и их модули модули используются в рамках одной конечной страницы сайта и исторически имеют точки взаимной интеграции, однако раньше «взаимодействие» происходило через mutationobserver, перехват событий и другие хаки. Совместными усилиями мы разработали систему, похожую на микрофронтенд-подход, наладили общение между продуктами по отдельному fontend api, внедрили service-locator. Всё это улучшило качество и уменьшило количество кода, упростило логику взаимодействия, иными словами - сильно уменьшило множитель скорости накопления техдолга в этой части продукта.

    Улучшение метрик производительности

    Поскольку на новом проекте стало возможным использовать современные подходы к сборке проекта, удалось уделить вниманию размеру бандла и оптимизации при сборке. Я изначально внимательно следил за зависимостями проекта и старался свести их к разумному минимуму. Кроме этого, мы активно используем React.lazy-компоненты, методики ux-оптимизации - скелетоны, ленивую загрузку. В добавок к этому оставшаяся статическая часть бандла разбивается на чанки. С ростом количества клиентских сайтов, получивших новую версию нашего продукта общий прирост производительности будет заметен всё больше и больше.

    Бандл легаси-версии пректа занимал около 1.5 мегабайт, сейчас размер чанка не превышает 200 килобайт, а общий вес всего бандла со всеми асинк-чанками находится на отметке около 700кб


    Хочется так же упомянуть несколько моментов, которые не оказали непосредственного влияния на продукт, но важны для меня.

    Релизы легаси-версии продукта приходилось (и всё ещё приходится) делать, и этот процесс для себя я автоматизировал - написал тулзы для упрощения и автоматизации процесса, сведя ручную работу при релизах к минимуму.

    Взял на себя менторство начинающего JS-разработчика из команды поддержки нашей компании. Я уже вижу его прогресс и это круто )

  • Подбор персонала
    Москва
    Веб-разработчик (Средний)
    Январь 2012 — Сентябрь 2020 (8 лет и 9 месяцев)

    Я в вебе очень давно. Не смогу назвать год начала работы, скажу лишь что первую HTML-страницу я сделал в 14 лет, и дальше все как в тумане :) Я занимался всем, но больше всего - дизайном, версткой и попытками запустить стартап мечты. Встречал рассвет блокчейна, встречал закат джаббера, встречал стаковерфлоу в 4 часа утра в попытках решить проблему с jquery и встречал совсем молодого Виталика Бутерина. :D Работал верстальщиком на конвеерной разработке, маркетологом в оптовых продажах, водителем-грузчиком и установщиком видеонаблюдения. Делал дизайн на вольных хлебах, убеждал больших дядечек выделить миллиончик на прототипчик обалденного b2b-продукта и получал только 100 тысяч. Писал систему для управления картодромом и постигал мир текущей памяти в JVM (я так ничего и не понял)

    Со временем остепенился, заинтересовался продуктовой разработкой и фронтендом. Сначала мне удавалось создать видимость того что я крутой фронтендер за счет опыта в дизайне, но со временем я стал действительно неплох, потому что часами просиживал в ванильном js, изобретая собственные реализации vdom, реактивных библиотек с автоподписками, ui-китов и всякого такого.
    А потом я попал на работу в UDP Auto, о чем написано в предыдущем блоке )