Frontend Developer
Контакты
Фронтенд разработчик с опытом создания, внедрения и поддержки веб-приложений.
Завершил обучение на платформе Hexlet, получив прочные теоретические знания и практический опыт через четыре завершенных проекта. В настоящее время работаю в компании «Аптека25.рф», крупнейшей сети на Дальнем Востоке.
В своей роли реализовал несколько сложных задач для продукта компании, что обеспечило улучшение качества кода и производительности. Мой опыт включает разработку и внедрение новых фич, верстку веб-компонентов, рефакторинг и отладку существующего функционала. В своей работе активно использую функциональное программирование и принципы ООП для создания чистого и эффективного кода.
Программирование для меня — не просто работа, а настоящее хобби. Я искренне увлечен этим процессом и постоянно изучаю новые технологии, создавая проекты даже в свободное время. Это позволяет мне не только совершенствовать свои навыки, но и находить вдохновение для решения новых и интересных задач в моей профессиональной деятельности.
- JavaScript(ES6+) | TypeScript
- HTML | CSS | SCSS | Sass
- React | Next.js
- Redux Toolkit | MobX
- REST | TRK Query | GraphQL | React Query
- Bootstrap | Material UI
Учебные проекты:
Brain-games
Консольные арифметические игры на Node.js, с регулируемой сложностью.
Стек:
- JavaScript
- Node.js
- Библиотеки:
- readline-sync
Научился:
- настраивать окружение проекта и линтер (ESLint)
- читать пользовательский ввод с помощью библиотеки readline-sync
- автоматически отслеживать качество кода с помощью Code Climate
- организовывать правильную структуру файлов проекта
Gendiff
Программа, определяющая разницу между двумя структурами данных в форматах JSON и YAML.
Стек:
- JavaScript
- Node.js
- Библиотеки:
- lodash
- commander.js
- js-yaml
- path
- fs
Научился:
- создавать консольное приложение с помощью библиотеки commander.js
- строить абстрактное синтаксическое дерево и работать с его структурой
- рекурсивно обрабатывать плоские и вложенные данные
- парсить данные из файлов в формате JSON и YAMl
- вести разработку по методу TDD
- строить относительные и полные пути до файлов с помощью библиотек path и fs
- пользоваться фреймворком Jest, использовать фикстуры в тестах
- настраивать GitHub Actions
RSS Reader
Сервис для агрегации RSS-потоков, с помощью которых удобно читать разнообразные источники, например, блоги.
Стек:
- JavaScript
- Bootstrap
- Библиотеки:
- yup
- on-change
- i18next
- axios
- lodash
- playwright
Научился:
- устанавливать и собирать приложение через Webpack
- деплоить проект (Vercel)
- верстать страницы по шаблону
- реализовывать валидацию в форме добавления потока с помощью библиотеки yup
- настраивать вывод текстов интерфейса через i18next
- строить архитектуру приложения в соответствии с MVC (Model View Controller)
- работать с асинхронными запросами (Axios/DOMParser)
Chatty
Одностраничное приложение с регистрацией и аутентификацией. Все действия пользователя отслеживаются и обрабатываются в режиме реального времени.
Стек:
- JavaScript
- React
- Redux Toolkit
- Библиотеки:
- yup
- socket.io-client
- react-router
- formik
- i18next
- bootstrap
- leo-profanity
- web-vitals
- rollbar
- playwright
Научился:
- работать с библиотекой React
- инициализировать состояние с помощью Redux Toolkit
- писать однострочные SPA приложения
- создавать API для работы с запросами с помощью TRK Query
- реализовать хранение данных используя Websocket
- настраивать элементы и стили через Bootstrap
Pet-проекты:
Duel
Браузерная игра, созданная на canvas с использованием React-компонентов.
Стек:
- JavaScript
- React
- Библиотеки:
- react-i18next
Научился:
- работать с анимацией с помощью canvas
- создавать логику игры
- встраивать react меню поверх canvas
Detective-Github
Поисковик репозиториев. При вводе названия выводит список репозиториев, с информацией содержащую: язык разработки, число форков, число звёзд и дату обновления.
Стек:
- JavaScript
- React
- Redux Toolkit
- RTKQuery
- Библиотеки:
- material ui
Научился:
- тестировать запросы с помощью postman
- работать с открытым API (GitHub API)
- правильно обрабатывать ответы и выводить их пользователю
Опыт
Полностью сопровождаю сайд-проекты компании:
Святая Мария
Диалогия
Обязанности:
- Разработка и внедрение новых фичей
- Рефакторинг и дебаг уже существующего функционала
- Разработка и сопровождение промо-материалов компании (лэндинг)
- Оперативное выявление и устранение ошибок с использованием Sentry
- Расширение, исправление и доработка существующей UX/UI компонентной базы, а так же создание документации c использованием Storybook
- Коммуникация по техническому заданию, взаимодействие с дизайнерами, разработчиками, продактами и другими участниками процесса;
Достижения:
- Разработал фичу загрузки и управления корпоративными документами через CMS, включая добавление, редактирование и удаление документов, а так-же возможность определять порядок документов и выбор места размещения на сайте
- Реализовал функционал управления баннерами через CMS, теперь пользователи могут сами создавать\редактировать\удалять полностью адаптивный баннер, определять его порядок, дату показа, место на сайте, а так-же erid для рекламных интеграций
- Для повышения безопасности добавил CAPTCHA-защиту на формы записи
- Провёл актуализацию версий библиотек проекта, а также устранил большое количество ошибок и улучшил пользовательский опыт
Образование
Читаю профессиональную литературу на английском языке
Проживаю в городе Владивосток
Решил перейти в сферу информационных технологий, так как эта область испытывает постоянный рост и развитие, а так же соответствует моим потребностям к самосовершенствованию.
В первую очередь ищу удалённую работу, но готов так же рассмотреть предложения по работе в офисе в Москве или Санкт-Петербурге.