nlidienlidie

Кирилл Костиков

Frontend Developer (JavaScript/TypeScript) · Бэкенд · Фронтенд · Старший (Senior)
От 260 000 ₽ · Не ищу работу
Возраст: 27 лет
Опыт работы: 3 года и 11 месяцев
Регистрация: 19.01.2017
Последний визит: 1 месяц назад
Местоположение: Россия, Москва
Профессиональные навыки: JavaScript · ReactJS · Node.js · HTML · CSS
Войдите, чтобы посмотреть контакты пользователя

Обо мне

Специализируюсь на Frontend разработке как с использованием фреймворков (React, Vue), так и без использования фреймворков. Так же наставничаю на обучающей платформе Hexlet.io по профессии "Фронтенд-программист".

Имею опыт работы как в команде, так и в одиночку. Разрабатывал проекты в одиночку (не стоит беспокоится о качестве кода, для этого я всегда настраиваю автоматизированные утилиты, пишу код в первую очередь для людей, а не для машин). Занимался поддержкой крупных проектов, работал в маленьких и больших, в достаточно больших командах 25+ фронтенд разработчиков в одном продукте.

Hard Skills:
- Языки программирования: 
-- Vanilla JavaScript, работал со всеми версиями начиная с ES 5.1 (4.5 года) [Advanced level]
-- TypeScript (1.5 года) [Advanced level]
-- C# (~1 год) [Beginner level]
-- Golang (2-3 месяца) [Beginner level]
-- C (2-3 месяца) [Beginner level]

- Статическая типизация: 
-- TypeScript (1.5 года) [Advanced level] - мой фаворит
-- Flow (0.5 года) [Beginner/Middle level]

- Frontend фреймворки:
-- React + Redux (3.5 года) [Advanced level]
-- React + Mobx (0.5 года) [Middle/Advanced level] 
-- Vue + Vuex (0.5 года) [Beginner/Middle level]

- Backend Node.js фреймворки:
-- Express (3 месяца) [Beginner/Middle level]
-- Koa (1-2 месяца) [Begineer level]

- Тестирование:
-- Jest
-- Cypress

- Веб шаблонизаторы:
-- Pug (Jade)
-- Twig
-- Handlebars

- CSS Препроцессоры: SCSS, Stylus, PostCSS, Less;

- CSS Методологии:
-- BEM
-- CSS-Modules
-- Styled-Components (styled-components, emotion2)
 
- JS инструменты сборки/автоматизации:
-- Webpack [Middle/Advanced level]
-- Rollup [Middle/Advanced level]
-- Gulp [Middle/Advanced level]

    - Основные JS библиотеки/инструменты с которыми работал:
    -- Разное: lodash, ramda, immutable, immer, jquery, axios, lerna, moment и т.д ...
    -- Организация кода и проверки: prettier, eslint, husky, lint-stage, style-lint, pug-lint и т.д ...

    В коммерческой разработке с 2015 года, а программированием в целом занимаюсь с конца 2012 года.

    Ссылки:
    - GitHub - https://github.com/NLIDie

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

    Опыт работы

    • Делаем ставку на технологии
      Москва · Более 5000 сотрудников
      Senior Frontend Engineer
      Декабрь 2020 — По настоящее время (2 месяца)
    • Сервис для отправки push-уведомлений
      Москва · От 10 до 100 сотрудников
      Senior Frontend Engineer
      Март 2019 — Декабрь 2020 (1 год и 10 месяцев)

      - Участвовал в качестве спикера с небольшими темами на общих внутренних митингах фронтов: "решения определенных проблем в разработке / новых инструментов для упрощение и ускорения разработки / архитектурных решений"

      - Участие от отдела фронтов в коммуникации с дизайнерами, выдвижение разраличных предложений и растановка приотритетов на дальнейщий план развития продукта.

      - Участие и дальнейшие развитие архитектурных решений на новых и пути расширения/поддержки старых продуктов.

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

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

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

      Стек технологий используемый на продуктах:

      • Для разработки веб-приложений используется React, новые проекты пишутся c использованием hooks.
      • К React в качестве общего хранилища используется Redux + React-Redux в чистом его виде, на новых продуктах стали использовать Redux + Easy-Peasy.
      • Для браузерного роутинга используется React-Router
      • Для типизации Flow / Typescript, на новых продуктах ушли в сторону Typescript и написаны декларации для остальных в которых остался flow. 
      • Для тестирования используется Jest и Enzyme, тесты пишем в основном только для общей ui библиотеки и остальных общих компонентах.
      • На Backend микросервисная архитектура, Api Gateway разрабатывается для каждого продукта отдельно все пишется на Golang, поддержкой и разработкой Api Gateway стали frontend разработчики это принесло положительные плоды.

    • Крупнейшая российская поисковая система и портал, есть также в Казахстане, Беларуси и Турции
      Москва · Более 5000 сотрудников
      Frontend Enginner
      Сентябрь 2018 — Март 2019 (7 месяцев)

      Работал в отделе Яндекс.Вертикали над auto.ru и яндекс.недвижимость, на должности Разработчик Интерфейсов.
       
      • Технологии используемые на проектах:
      – Полный стэк БЭМ-а  (переписывался на React)
      – React
      – Redux (redux-thunk)
      – Nodejs
      – Самодельный Rounting на клиенте основан https://github.com/nodules/susanin
      – Самодельный SSR основанный на внутренних библиотеках.

      • Во время мини хакатона внедрил в один из модулей яндекс.недвижимость storybook с кастомной конфигурацией на wepback4, было сделать это не так просто из за запутанной структуры проекта и модулей в целом. Так как на проекте нету быстрой перезагрузки и сборка модулей на проекте занимает достаточное время, внедрение storybook позволил ускорить разработку компонентов на проекте, за счет изолированной разработки и это давала более чистые и пере используемые компоненты + документация для компонентов.

    • Один из лидеров российской индустрии медиа и развлечений
      Москва · От 1000 до 5000 сотрудников
      Frontend Enginner
      Март 2018 — Сентябрь 2018 (7 месяцев)

      Работал в отделе RDS на должности Инженер-Разработчик клиентских приложений. Работал над такими проектами как Афиша Еда и внешним продуктом (веб-приложение для работы с криптовалютами) для компании https://copper.co.

      - Внедрил на Афиша Еда Vagrant (win10) для разворачивания окружения для удобной и быстрой установки среды. Backend был написан на C# (ASP.Net).

      - Участвовал в разработке крипто-портала (веб-приложения на React/Redux) с нуля, команда состояла из 2 frontend разработчика и 1 backend (Nodejs). На проекте был в качестве Frontend разработчика, проводил code review и плотно взаимодействовал с менеджером и заказчиком.

      Технологии используемые на проекте: react, redux, immutable.js, redux-thunk, axions, reselect, redux-actions

    • Digital production
      Москва · От 10 до 100 сотрудников
      Frontend Engineer
      Август 2017 — Март 2018 (8 месяцев)

      • Занимался разработкой фронтенд составляющей в команде (из 7 человек включая меня) работающей над модулем АВН и АСП (Автомобили в наличии и Автомобили с пробегом). Модуль предназначался к установки на CMS 1C-Bitrix, для Автомобильных дилеров таких марок как (Volkswagen, Infinity, Nissan) 

      • Проект состоял на тот момент из: 
      - Страница "Выбора марки": http://www.sigma-motors.ru/purchase/available-cars/
      - Страница "Список автомобилей": http://www.sigma-motors.ru/purchase/available-cars/jetta/
      - Страница "Детальная": http://www.sigma-motors.ru/purchase/available-cars/detail/A34289/ 
      - Страница "Избранные": к сожалению нет ссылки
      - Страница "Сравнение": к сожалению нет ссылки

      P.S: Страницы взяты у одного из дилеров.

      • За время работы сделал самостоятельно с использованием React страницу "Сравнение автомобилей" для ru версии сайта Volkswagen (импортерского).

      • Рефакторил старые и делал новые компоненты (Pug&SCSS + JS/ES6)

      • Участвовал в принятии архитектурных решений проекта и стека технологий.

      • Занимался подготовкой старых-новых компонентов и страниц на шаблонизаторе Twig (раньше был Pug на фронтенде, но Backend разработчикам отдавался обычный HTML, так как не было возможности использовать node для SSR Pug), для упрощения и ускорения процесса интеграции шаблонов Backend разработчиками в CMS, при интеграции модуля для новой марки (Nissan).

      • В процессе работы с Twig реализовал свою небольшую кастомную функцию (имитирующую функцию attributes из Pug). Которая облегчила разработку на Twig остальным разработчикам.

    • Flexcore
      Москва
      Frontend Engineer / Unity Game Engineer
      Март 2017 — Август 2017 (6 месяцев)

      • Верстка и разработка нового фронтенд функционала для сайтов и новых страниц для собственной CMS системы Flexcore;

      • Правка и рефакторинг кода;

      • В проектах использовался (HTML&SCSS + JS/ES5 + jQuery).

      • В последствии взяли проект на создание игры по Android устройства. Так как я работал с движком Unity, я выдвинул свою кандидатуру как разработчика. В одиночку занимался разработкой игры (Платформер из 2 уровней + уровень с боссом).

      • Полный пайплайн (кроме создания 2d графики, этим занимался дизайнер) разработки игры под Android на движке Unity:
      - Оптимизация графики и производительности игры;
      - Анимация 2d персонажей на костях (использовал Anim2D);
      - Проектирование и сборка уровней;
      - Проектирование и разработка логики игры и UI;

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

    • ИГЭУ

      Ивановский государственный энергетический университет
      Иваново · 291 выпускник
      Заочно-вечернего обучения
      Сентябрь 2015 — По настоящее время (5 лет и 4 месяца)

      Программная инженерия (Разработчик программно-информационных систем)