Frontend-разработчик React / Redux / TypeScript
Контакты
Junior Frontend-разработчик, 1 год коммерческих/учебных проектов на React 19, Redux Toolkit, RTK Query. Реализовал чат и RSS-агрегатор с WebSockets, аутентификацией и локализацией. Пишу чистый, покрытый тестами код, быстро внедряю новые инструменты (Vite, CI/CD).
Ищу команду профессионалов, где смогу продолжать развиваться, делиться своими идеями и вносить значимый вклад в создание решений, которые действительно полезны пользователям. Готов оперативно осваивать новые технологии и быстро интегрироваться в рабочий процесс.
Языки и основы: JavaScript (ES6+), TypeScript (базовый)
Фреймворк: React (19 + Hooks), небольшой опыт с Vue 3
Состояние: Redux Toolkit, RTK Query, React Router
Формы: Formik + Yup
UI / стили: styled-components, React Bootstrap, Bootstrap 5
API: REST API (Axios), WebSockets (Socket.IO)
Инструменты: Vite, Node.js, Git, GitHub, GitHub Actions
Качество кода: CI/CD, ESLint + Prettier, CodeClimat
Чат (Slack)
Разработал чат-приложение с регистрацией, авторизацией и управлением каналами. Добавил создание, удаление и переименование каналов, реализовал обмен сообщениями в реальном времени через WebSockets. Использовал Redux Toolkit и RTK Query для работы с состоянием и сервером. Настроил валидацию форм через Formik и Yup. Сохранял токены и данные пользователя в localStorage. Внедрил i18next для локализации, leo-profanity для фильтрации нецензурной лексики, react-toastify для уведомлений и Rollbar для отслеживания ошибок в продакшене.
Стек: React, Redux Toolkit, RTK Query, WebSockets, React Router, i18next, leo-profanity, react-toastify, Rollbar, Formik, Yup, Vite, Bootstrap, ESLint
RSS-агрегатор
Разработал сервис для чтения RSS-лент с автоматическим обновлением каждые 5 секунд. Внедрил предпросмотр новых постов, использовал Axios для взаимодействия с сервером. Настроил i18next для локализации, Yup для валидации форм, on-change для реактивного обновления интерфейса. Проект усилил навыки работы с DOM API, управления состоянием и взаимодействия с REST API.
Стек: JavaScript, Axios, i18next, on-change, Yup, Bootstrap, Webpack, AJAX, ESLint, GitHub Actions
Вычислитель отличий
Создал CLI-утилиту для поиска различий между структурами данных (JSON/YAML). Применил рекурсивные алгоритмы и древовидные структуры. Следовал TDD-подходу, покрыв код тестами на Jest. Проект прокачал навыки модульной архитектуры и обработки вложенных структур.
Стек: JavaScript, Node.js, Jest, commander.js, YAML, JSON, lodash, GitHub Actions, ESLint, CodeClimate
Brain-Games
Реализовал набор CLI-игр на JavaScript, включая задачи на арифметику, чётность, простые числа, прогрессии и НОД. Каждая игра — отдельный модуль с общей архитектурой запуска.
Стек: JavaScript, Node.js, ESLint, GitHub Actions
Опыт
Обязанности
Разработал и оптимизировал UI-компоненты на React; собрал библиотеку переиспользуемых кастомных хуков.
Обновил устаревшие зависимости и провёл рефакторинг, снизив технический долг и улучшив читаемость кода.
Реализовал формы регистрации и логина с валидацией через Formik + Yup.
Внедрил Redux Toolkit / RTK Query и построил feature-based архитектуру для изоляции бизнес-логики.
Проводил code-review и интегрировал разработанные компоненты в общий репозиторий команды.
Достижения
Перевёл сборку с Webpack на Vite, сократив время build’а с ≈ 2 минут до 5–7 секунд (-95 %).
Поднял покрытие тестами до 85 % и снизил количество баг-репортов до нуля.
Образование
Начальные знания английского языка
Проживаю в городе Санкт-Петербург / Аликанте