👋 Стартовала третья неделя марафона, посвящённая мотивации и отношениям в команде! Со Skyeng и IVI обсудим, как дружить с коллегами на удалёнке и находить в себе силы на работу и общение. Регистрируйтесь на страничке марафона и присоединяйтесь!
dtsvettsihdtsvettsih

Дмитрий Цветцих

Node.js developer · Бэкенд · Фронтенд · Средний (Middle)
От 100 000 ₽ · Не ищу работу
Возраст: 30 лет
Опыт работы: 6 лет и 5 месяцев
Регистрация: 25.04.2012
Последний визит: 5 месяцев назад
Местоположение: Россия, Пермь
Профессиональные навыки: Node.js · JavaScript · Linux · Docker · Git · MySQL · Webrtc · Высоконагруженные системы
Войдите, чтобы посмотреть контакты пользователя

Обо мне

Занимаюсь разработкой на javascript с 2011/2012 года.

2011 - 2013: Занимался разработкой userjs (расширений) для старой Оперы.  За это время научился искать баги и уязвимости на сайтах.  В рамках bugbaunty нашёл уязвимости на нескольких российских популярных тогда сайтах.

В настоящее время активно занимаюсь разработкой Open Source проектов.  За это время научился различным паттернам проектирования Node.js приложений и разработал для себя различные архитектурные подходы.

Умею находить узкие места приложений и заниматься оптимизацией. Знаю какие инструменты для этого использовать. В частности:

  1. Ускорил до 8 раз написанный мной же парсер бинарных данных binary-data
  2. Разработал ip парсер, который по скорости не уступает нативному варианту ip2buf
  3. Самый быстрый на js bittorrent парсер btparse

Кроме того, время от времени вношу свой вклад в другие проекты. Например, помог ускорить на 10% nanoid - https://twitter.com/andrey_sitnik/status/1047109202089586688

Один из пакетов имеет около 2 млн. загрузок - saslprep.

Последние 1,5 - 2 года в свободное время занимаюсь разработкой NodeRTC - реализацией WebRTC DataChannel на чистом js. В рамках этого проекта были разработаны реализации STUN и DTLS. В рамках последнего была проведена большая работа над проектированием гибкой архитектуры. Ведётся работа и над другими составляющими WebRTC. 

Умею работать в WebAssembly. Есть собственная коллекция примеров работы с WebAssembly - https://github.com/reklatsmasters/webassembly-examples

Участие в профессиональных сообществах

Опыт работы

  • Разработка и издание игровых приложений для мобильных платформ
    Санкт-Петербург · От 100 до 1000 сотрудников
    Backend Node.js developer
    Январь 2019 — По настоящее время (1 год и 11 месяцев)
  • Провайдер полного цикла услуг по исследованиям, разработке и управлению проектами в отрасли блокчейн и криптовалют.
    Москва · От 10 до 100 сотрудников
    Senior Backend Developer
    Декабрь 2017 — Декабрь 2018 (1 год и 1 месяц)
  • Решение P2P CDN для медиакомпаний
    Пермь · От 10 до 100 сотрудников
    Инженер-Разрботчик
    Февраль 2014 — Февраль 2017 (3 года и 1 месяц)

    Первое время занимался разработкой одного из внутренних сайтов на angular1. За это время значительно прокачал свой скил владения линуксом и Node.js.

    • Написал пайплайн на gulp для сборки и деплоя приложения.
    • Участвовал в проектировании архитектуры приложения.
    • Активно помогал другим участникам команды по вопросам git и linux
    • Занимался разработкой графиков на D3 различной степени сложности.

    Занимался разработкой большой высоконагруженной системы по мониторингу bittorrent сети на Node.js. За это время и был написан самый быстрый bittorrent парсер. За счёт этой системы компания смогла получать значительно больший объём данных и увеличить доход.

    Занимался проектированием и разработкой небольшой баннерной сети. За это время я выучил важный урок о том, что кэширование в nginx важно и нужно настраивать. Кроме того:

    • принимал ведущую роль в проектировании системы
    • создал админский интерфейс на react.js
    • занимался проектированием структуры и оптимизацией БД
    • внедрил использование webpack для сборки frontend
  • Разрабатывае B2C и B2B сервисы в сфере электронных развлечений и музыки
    Пермь · От 10 до 100 сотрудников
    Младший фронтэнд разработчик
    Октябрь 2013 — Январь 2014 (4 месяца)

    Занимался поддержкой старого сайта на jquery. За это время подтянул свой уровень javascript.

Высшее образование

  • ПНИПУ

    Пермский национальный исследовательский политехнический университет
    Электротехнический
    Сентябрь 2008 — Июнь 2013 (4 года и 9 месяцев)