JS developer.
Основной стек:
- Языки программирования: TypeScript, JavaScript;
- CSS3, SASS, SCSS/CSS modules, Tailwind, styled-components;
- React/Next.js;
- Redux (toolkit, rtk query) / Zustand;
- axios, fetch, ajax, graphql, react-query, хорошее понимание Rest API архитектуры;
- Сборщики: vite, webpack;
Есть опыт написания Backendа на Node.js.
Большой опыт работы в команде: swagger/postman, figma, jira, gitlab, ci/cd, code-review;
В свободное время читаю книги, путешествую, провожу время с друзьями, менторствую.
Поучаствовал в трёх проектах компании
Первый проект:
Совкомбанк Инвестиции
- Работа в команде из 5 frontend разработчиков, аналитиков, тестировщиков, backend разработчиков по Scrum
- На проекте используются websocket, msw (mock service worker, позволяющий эмулировать запросы и вести разработку до готового backendа), file-based маршрутизация, PWA и собственный UI-kit
Мной были реализованы большие модули:
- пригласи друга
- маржинальная торговля
- миллион на инвестиции
Стек: react, typescript, msw, axios, socket, tailwind CSS, prettierrc, eslint, redux-toolkit
Второй проект:
SPA CRM для системы умных парковок.
- Работа в команде из 10 человек по Scrum; Я - единственный frontend разработчик.
Переписал приложения с нуля
- Позволило отделить backend от frontendа в разные проекты и репозитории.
Раньше в одном проекте поднимался как backend, так и frontend (локально - в докере). Итогом стал пересмотр процессов - отделение youtrack досок, распределение обязанностей между backend и frontend.
- Избавил проект от самописных недокументированных решений. Это ускорило работу приложения и время на выполнение задач по внедрению нового функционала. Теперь не нужно запускать локально backend, хорошо работает Live server, код стал понятнее и читаемее.
- Провёл документирование проекта: стека, логики и кастомного UI в confluence и readme.
- Участвовал во всех процессах переписывания: от выбора стека до помощи в проектировании api v2 и обсуждений желаемого функционала с аналитиками.
Стек: react, typescript, vite, zustand, scss modules, react-query, react-hook-form, framer-motion, prettierc, eslint.
Третий проект:
Новостной сайт футбольного клуба.
- Работа в команде с двумя frontend разработчиками и тремя backend разработчиками.
- Создание новых разделов сайта: новости, интернет-магазин, комментарии в админ панели со статистикой.
- Настройка ci для избегания ошибок после merge request (сейчас прогоняется typescript и линтеры перед возможностью сделать merge)
- Оптимизация сайта по метрикам lightshot. Добавил SEO оптимизацию метатегами и schema.org, улучшил семантику. Улучшил accessability путём добавления aria атрибутов и управлением с клавиатуры.
Стек: next, typescript, tailwind, axios, framer-motion, webpack, prettierc, eslint.
Параллельно работал на 2-4 проектах компании. За всё время принял участие в 8 проектах.
Написал frontend часть проекта с нуля до production в паре с 1 frontend разработчиком.
Полностью провёл рефакторинг проекта:
- типизировал все компоненты приложения;
- ускорил работу приложения, заменив объёмные библиотеки на легковесные аналоги, и, сделав кастомный UI за место библиотечных решений;
Проявлял инициативу по выбору стека на различных проектах с целью сделать разработку удобнее, а компоненты оптимизированнее. Так, например, вместо react context внедрили zustand на один из проектов;
Работал в команде по canban методологии с чётко выстроенным git flow, ci/cd на несколько стендов, проводил code-review;
Поддерживал и вводил новую функциональность в SSR проекты на Next.js;
Стек: react/next, typescript, react-query, vite/webpack, scss modules/tailwind, zustand, axios, framer-motion, react-hook-form, i18n, three js, prettierc, eslint.
Полное написание E-com приложения с нуля до production на Next.js.
Мной были реализованы: каталог со скролл подгрузкой, вёрстка карточек товара, форма оплаты (с интеграцией к яндекс картам, системой промокодов и бонусов, сложной валидацией), личный кабинет с реферальной и бонусной многоуровневой программой, страница и модальное окно товара.
Проектировка БД тоже лежала на моих плечах: использовалась headless CMS strapi, генерируемый ей backend и graphql запросы к нему с frontendа.
Разработка frontend части двух проектов компании: агрегатора по продаже лакокрасочных изделий (с crm системой и landing page) и магазина по продаже цветов (c crm системой).
Около 3 месяцев выступал в роли teamlead проектов, продумывая этапи разработки, и, ставя задачи frontend и backend разработчикам.