Занимаюсь frontend-разработкой приложений на React и Vue + TypeScript. Люблю брать в работу сложные задачи, над которыми нужно подумать. Нравится получать новые знания и внедрять их в проекты. Не боюсь брать на себя ответственность, быстро нахожу общий язык с людьми.
В свободное время читаю книги. В основном техническую и бизнес литературу. Люблю заниматься спортом и играть в шахматы.
Стек: JavaScript, TypeScript, React (Next, RTK), Vue (nuxt, vuex, pinia), tailwind, SCSS.
Работа осуществлялась по скраму в двухнелельных спринтах.
Обязанности:
- Разрабатываю и поддерживаю приложения на React / Next.js / Vue 2,3 / Nuxt 2,3 / TypeScript;
- Использую стейт менеджеры Redux Toolkit / React Query / Redux / Pinia / Vuex для управления состоянием приложения;
- Занимаюсь адаптивной и кроссбраузерной версткой по макетам из figma;
- Стилизую приложения с помощью SCSS, Tailwind;
- Разрабатываю и дорабатываю библиотеки UI компонентов;
- Реализовываю CMS с возможностью вывода блоков с произвольным контетном в произвольном порядке, на произвольных страницах;
- Интегрирую проекты с CMS и сторонними сервисами по REST API;
- В работе использую Docker;
- Интегрирую библиотеки React, Vue (Swiper Js, Axios, Ymaps, bootstrap и др) на проекты;
- Работаю с анимациями;
- Участвую в обсуждении архитектуры фронтенда;
- Оцениваю и декомпозирую задачи по разработке. Оцениваю сроки разработки;
- Оптимизирую код. Внедряю алгоритмы, кеширование запросов. оптимизирую рендеры React компонентов;
- Использую высокоэффективные
алгоритмы сжатия изображения WebP, Avif,
поднимал до зеленой зоны в PageSpeed Insights.
- Разрабатываю проекта с нуля;
- Управлял проектом и командой разработки;
- Разрабатывал проекты в 1-го так и с командой (1 бэкендер, 2 фронта, 1 дизайнер, 1 ПМ);
Самые сложные и интересные задачи выполненные мной в компании:
1) Реализовал CMS систему.
Реализация:
- Динамического создания страниц;
- Блоков для этих страниц;
- Редактора визуального подбора квартир;
- Шахматки квартир;
- UI библиотеки для удобного заполнения контентом;
- Обрезка загружаемых изображений;
- Продумывание архитектуры приложения;
Разработка CMS увеличило удобство работы менеджеров (клиентов) с контентом. Позволило самостоятельно и гибко менять менеджерам контент, не обращаясь к разработчикам.
2) Оптимизизация работы проектов:
- Кеширование запросов;
- Оптимизация графического контента;
- Уменьшение TTI;
- Уменьшение количества ререндеров React компонентов;
3) Динамическое содержание robots.txt
Это была одна из интересных задач. Необходимо было показывать разный robots.txt в зависимости от поддомена (города). Реализована была при помощи серверной части Nuxt на NodeJs.
Увеличило SEO оптимизацию
4) Разработка проекта с нуля:
- Продумывание архитектуры приложения;
- Оценка сроков и декомпозиция задач;
- Распределение задач между разработчиками;
Стек используемых технологий: React, next, TypeScript, RTK, vue 2/3, nuxt, vuex/pinia.