dm-kamaevdm-kamaev

Дмитрий Камаев

Node js developer · Бэкенд · Разработка ПО
От 150 000 ₽ · Не ищу работу
Возраст: 27 лет
Опыт работы: 7 лет и 8 месяцев
Регистрация: 21.06.2016
Последний визит: 6 месяцев назад
Местоположение: Россия, Москва
Профессиональные навыки: Node.js · Perl · MySQL · PostgreSQL · Nginx · Vue.js · HTML · CSS · JQuery · Unix
Войдите, чтобы посмотреть контакты пользователя

Обо мне

НЕ ИНТЕРЕСУЮТ чисто frontend вакансии!

Звонить лучше c 12 до 14.

  • Люблю и умею разрабатывать на Node js (6 года опыта работы): ООП, ФП, паттерны проектирования, могу организовывать поддерживаемый асинхронный код с использованием разных паттернов (callback, Promise, async/await).  Имеются собственные библиотеки/модули для решения часто возникающих задач и есть кругозор в готовых инструментах для решения задач. Умею оптимизировать и профилировать код. Занимался написание тестов(mocha, chakram, chai). Могу писать сервисы без использования фреймворков, создавая архитектуру вокруг native http.server.
  • Имеется опыт работы с реляционными базами данных MySQL(люблю эту базу), PostgreSQL (использование и администрирование). Умею оптимизировать sql запросы.
  • 3 года опыта работы с экосистемой Vue js. 6 года опыта работы с JavaScript: манипуляции c DOM, делегация событие, Ajax, работа с cookies, localstorage, регулярные выражения, ES6/7, паттерны проектирования. Имеются собственные библиотеки/модули для решения часто возникающих задач. Умею оптимизировать код и работу с DOM. 
  • 4 года опыта написания кода на Perl. ООП, паттерны проектирования. cgi-bin, mod_perl apache.
  • Уверенно работаю с командной строкой и Unix окружением (Mac OS, CentOS 7, Debian), bash script.
  • Немного знаю Python 3 (на уровне написание периодических процессов и фреймворка Tornado) и Golang.
  • Адаптивно и валидно верстаю (W3C), могу оптимизировать страницу (PageSpeed Insights), HTML, CSS.

Периодически выкладываю модули на npm: https://www.npmjs.com/~dm-kamaev

Пишу статьи на английском на IT темы: https://medium.com/@qwertyzxcv526:

Личные качества: Целеустремленность и работа на результат, организованность, коммуникабельность.

Опыт работы

  • Национальный исследовательский университет «Высшая школа экономики»
    Москва · Более 5000 сотрудников
    Node js developer
    Ноябрь 2018 — По настоящее время (2 года и 3 месяца)

    Разработка и поддержка портала университета и внутренней админки.

    Осуществление миграции внутренних сервисов портала со старой монолитной архитектуры(Perl, Apache) на макро/микро сервисную архитектуру(Node js).

    Внедрение ООП, RBAC и создания core библиотек для сервисов. Оптимизация сайта под высокие нагрузки и построения системы кэширования.

    Интеграция с внешними системами и написание набора периодических процессов: загрузчиков,  парсеров и т.д.

    Сервисы, которые разрабатывались:

    • Система кастомных опросов(подобно Google Forms): для регистраций на мероприятия, опросов сотрудников и студентов, получения справок и т.д. Написания api для интеграции с другими системами.
    • Сервис поиска по выпускным квалифиционным работам.
    • Конструктор для создания сайтов департаментов, факультетов и кафедр.

    Технологии: Node js(express js,  knex),  Nginx,  PorstgreSQL,  Oracle PL/SQL, Memcached,  Redis,  Mongodb,  JavaScript, WebSocket,  Html5,  Pug,  Css,  Element io,  Vue js, Vuex,  Parcel,  Perl(X-Ware, mod_perl),  Unix,  Bash,  Git,  LXD.

  • Авентика
    Москва
    Node js developer
    Июнь 2016 — Октябрь 2018 (2 года и 5 месяцев)

    Агрегатор благотворительных фондов "Сбербанк Вместе" https://sberbankvmeste.ru/.

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

    Писал unit-тесты и приемочные тесты для сервиса, эмулирование сбербанка-эквайринга. 

    Backend: Node js, RESTfull api, PostgreSQL, Nginx, Ant, chakram, mocha, chai.

    --

    Агрегатор школ, курсов и вузов в России http://schools.mel.fm/ http://courses.mel.fm/ http://vuz.mel.fm/.

    Разрабатывал (REST) бэкенд для сервисов: поиск по параметрам, личный кабинет для администраторов учебных заведений, парсинг данных учебных заведений из открытых источников, геопозиционирование, работа с api yandex map.

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

    Backend: Node js, PostgreSQL, Nginx, Redis, TypeScript

    --

    Переработка личного кабинета для клиентов и сотрудников и CRM системы для клинингового сервиса https://www.domovenok.su. Вывел сервис из критического состояния, а именно было множество критических багов, неоптимальное хранение данных в бд, отсутствие обработки и мониторинга ошибок, полное отсутствие документации и версионирования api для мобильного приложения. Оптимизировал хранение данных в базе и оптимизировал запросы. Переписал авторизацию и взаимодействие с другими сервисами и 1С. Снизил сетевую нагрузку на сервисы(склейка запросов, фильтрация ботов и т.д.) и сократил время отдачи страниц. Переписал и настроил логгирование для системы платежей (Tinkoff эквайринг). Работал с api яндекс карт(постройка маршрутов на транспорте, поиск ближайших метро и т.д). Наладил легкий деплой. Отрефакторил множество фич и написал новые. Имел большой опыт общения с менеджерами(не из IT), руководителями отделов и иногда с клиентами. 

    Backend: Node js(express and koa2), JSON-RPC, RESTfull api, PostgreSQL, MariaDB, MongoDB, Memcached, Nginx, Docker, немного Python(Tornado).
    Frontend: Jquery mobile(framework), Vue js(vuex, vue-router), Webpack, gulp, html5, css, handlebars, mustache, Yandex map api.

  • ООО "Микро-ИТ"
    Санкт-Петербург
    Node js/ JavaScript developer
    Декабрь 2015 — Июнь 2016 (7 месяцев)

    Личный кабинет для сотрудников радиостанций http://stat.radiostatistica.ru/.
    Разрабатывал frontend и backend для системы статистики по радистанциям в различном виде: таблицы, графики (уникальные пользователи, длительность проcлушивания, устройства и т.д.)
    Проектировал хранение данных и оптимизировал запросы к базе данных.

    Frontend: Vanilla JS, CSS, HTML5, JQuery (DataTable, Datapicker, Datarange), Bootstrap, Highcharts.

    Backend: Node js, Nginx, MySQL

  • Risk-Monitoring.ru
    Москва
    Node js/JavaScript/Perl developer
    Ноябрь 2015 — Ноябрь 2017 (2 года и 1 месяц)

    Разрабатывал и поддерживал frontend и backend для сервисов (https://risk-monitoring.ru): построение финансовой отчетности по банкам-контрагентам, агрегатор кредитных рейтингов, стресс-тестирование банков. Разрабатывал систему для оплаты, используя WebMoney(эквайринг).

    Писал периодические процессы для парсинга сайта данных ЦБ РФ и международных рейтинговых агенств. Разрабатывал сервисы для построения статистики и email-рассылок.

    Оптимизация sql запросов, поиск утечек памяти. Занимался администрирование Cent OS 7 и БД. 

    Backend: Node js, Perl, Nginx, MySQL, Phanthom js

    Frontend: Vanilla js, HTML5, CSS

    Занимался проектом в свободное время.

  • Один из лидеров российской индустрии медиа и развлечений
    Москва · От 1000 до 5000 сотрудников
    Perl developer
    Декабрь 2014 — Ноябрь 2015 (1 год)

    Проект: http://www.livejournal.com/ 

    Разрабатывал систему логирования для проекта, и систему создания машинно-зависимых конфигов ngnix и apache.

    Переписывал и опти​мизировал​ backend и frontend админки для техподдержки, которой больше 16 лет. Ликвидировал накопившиеся за годы баги в серверной части ликвидировал BML. Внедрял новые фичи. 

    Backend: Perl (функциональный подход, ООП, MVC), mod_perl, Golang, RabbitMQ, MySQL, Memcached, JSON RPC, Apache, Nginx.

  • Образовательный центр имени С.Н.Олехника
    Москва
    Frontend/Backend разработчик
    Октябрь 2014 — Ноябрь 2014 (2 месяца)

    Сайт-агрегатор репетиторов. Разработка клиентской части(html 5.0, CSS,JavaScript,Ajax) и серверной части (Perl, Apache) сайта http://mat-repetitor.ru, а также его поддержка и развитие.

  • ООО Поиск-Подбор.ру
    Москва
    Perl/Node JS developer
    Июнь 2013 — Сентябрь 2014 (1 год и 4 месяца)

    Разрабатывал backend и frontend маркетплейса для интернет магазинов. Разрабатывал инструменты для сравнения скорости алгоритмов распознавания ключевых слов в тексте с помощью регулярных выражений и хэшей на Perl и Node JS.

    Backend: Perl, Apache, Nginx MySQL, Node js 0.14, Sphinx

    Frontend: Jquery, JavaScript, Highcharts, Datapicker

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

  • МИЭМ им. А. Н. Тихонова

    Московский институт электроники и математики имени А. Н. Тихонова
    Москва · 561 выпускник
    Департамент Компьютерной инженерии
    Июнь 2009 — Июнь 2015 (6 лет)
    информационных технологий и вычислительной техники, информационных технологий и автоматизированных систем