Frontend Developer

Контакты


Контакты доступны после входа на сайт

Описание

Ищу работу на позицию Фронтенд-разработчик. Имею опыт в коммерческой разработке.

Реализовал 5 проектов и выполнил несколько пулреквестов в опенсерс проекты.

Стек: TypeScript / JavaScript (ES6), React, Redux + Toolkit, react-bootstrap, React-i18next, React-toastify, axios, Formik, yup, leo-profanity, rollbar/react.

Slack-чат - real-time приложение(упрощенный аналог Slack с возможностью добавлять/переименовывать/удалять каналы). Для разработки интерфейса в данном проекте, мною были использованы разные технологии: TypeScript, WebSocket, React(с хуками), Redux(через RTK), так же выполнен ряд задач, такие как: взаимодействие с REST API, организация роутинга на клиенте, авторизация и аутентификация, сборка (webpack), деплой на render.com, мониторинг ошибок на rollbar. Для контроля качества кода использовал ESLint с конфигом от airbnb.

RSS-агрегатор - сервис для агрегации RSS-потоков, с помощью которых удобно читать разнообразные источники, например, блоги. Он позволяет добавлять неограниченное количество RSS-лент, сам их обновляет и добавляет новые записи в общий поток. В данном проекте сфокусировался на работе с чистым DOM. Все взаимодействия с селекторами, событиями и генерацией HTML были выполнены посредствам DOM API. Были учтены UX принципы(блокировка во время отправки и настройка фокусов), а так же реализована валидация данных с помощью yup. Вывод текстов с помощью i18next. Самостоятельно реализовал MVC: разделил код на слои, выделил состояния и нормализовал его, воспользовавшись идеями автоматного программирования для управления процессом загрузки данных и обработки ошибок. Для сборки проекта использовал Webpack(подключение файлов стилей, библиотек, запуск препроцессоров, автоматическая пересборка проекта после изменения кода и т.д.). Так же добавил непрерывную интеграцию с помощью GitHub Actions. Деплой приложения на vercel.com.

Вычислитель отличий – приложение производит сравнение двух JSON или YAML файлов и выводит в консоль различия, отформатированные одним из трех способов. Основной задачей на этом проекте являлось описание внутреннего представления различий между файлами. Чтобы решить эту задачу, я использовал абстрактный тип данных для анализа различий файлов, а так же древовидную структуру данных и рекурсивный алгоритм. Так же покрыл код автотестами через TDD и добавил непрерывную интеграцию с помощью GitHub Actions.

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

Примененные навыки:
- Настройка рабочего окружения (npm, JS modules, Makefile)
- Реализация CI и контроль качества кода с помощью GitHub Actions и ESLint (airbnb)
- Работа с Git
- Публикация и локальная установка npm пакета
- Создание архитектуры консольных игр на основе единого движка.


Стек: JavaScript(ES6), React, Redux, Bootstrap, Lodash, npm, ESLint (airbnb), Git, GitHub, GitHub Actions (CI), CodeClimate.

Навыки
  • JavaScript (ES6+) / изучаю TypeScript;
  • React;
  • Redux + Toolkit;
  • react-bootstrap;
  • lodash;
  • HTML5 / CSS3;
  • ESLint, Prettier;
  • Git, GitHub, Github Actions;
  • Автоматическое тестирование, Jest, TDD.

Опыт


Главный специалист, ООО "Газпром ПХГ"
Декабрь 2018 - по настоящее время
  • Администрирую приложения, службы, сервисы и операционные системы вычислительного комплекса системно-технической инфраструктуры(СТИ) в рамках обеспечения информационной безопасности и шифрования,
  • Участвую в анализе защищенности информационных ресурсов, выявляю и устраняю ошибки,
  • Принимаю участие во взаимодействие по вопросам обеспечения информационной безопасности со структурными подразделениями,
  • Провожу системное обслуживание и тестирование вычислительных комплексов СТИ.
Frontend-разработчик, Breadhead
Декабрь 2017 - Декабрь 2018

-Разрабатывал интерфейс для веб-приложения со стеком React/Redux в команде из трёх человек. Моей задачей являлось визуализировать историю криптовалют с возможностью фильтрации койнов по различным параметрам и отслеживанием их через таймлайн. Так же была выполнена обработка данных на клиенте, нормализация и отображение в соответствии с заданными параметрами.

-Исправлял ошибки и добавлял новый функционал на других проектах компании, например миграция карт сайта доставки еды yami yami с google maps на сторонние сервисы.

-Работал с legacy, а также переписывал код под современные стандарты.

Образование


Инженерно-технический, Санкт-Петербургский государственный университет гражданской авиации
Сентябрь 2008 - Июнь 2014

О себе
Не готов релоцироваться
Начальные знания английского языка
Проживаю в городе Санкт-Петербург

Комментарии


Добавить комментарий
Для этого действия нужновойти

Рекомендации

Изменения внесены
0

Егор, привет.
Отлично получилось структурировать свое резюме и информацию!
Есть несколько идей по дополнениям:
1. Укажи, пожалуйста, город проживания.
Это поможет работодателям как минимум сориентироваться по временной зоне, чтобы вести коммуникацию и в дальнейшем рассмотреть рабочий формат.
2. После указания формата работы было бы здорово указать мотив перехода во фронтенд разработку, чем привлекает это направление и как планируешь здесь развиваться как разработчик.
3. Сможешь указать свои достижения/реализованные задачи на последнем месте работы?

Успехов тебе и новых крутых проектов в IT!


Добавить комментарий/ссылку на вакансию
Для этого действия нужновойти
Войдите, чтобы предложить вакансию кандидату или оставить комментарий
Последние ответы
Рекомендация 0001
Отличный тестировщик! Рекомендую!
Это тестовая рекомендация не воспринимай всерьёз
Это резюме выглядит впечатляюще и информативно. Кандидат умеет описывать свой опыт и пр...
Кандидат имеет некоторый опыт в области тестирования и обладает базовыми навыками работ...
Извините, но ваше резюме содержит только ссылку на профиль GitHub и адрес электронной п...
Это резюме содержит множество детальной информации о вашем образовании, опыте работы и ...
Это резюме содержит много информации о вашем опыте работы и образовании, но оно может б...
Это резюме имеет некоторые сильные стороны, такие как: Хорошо сформулированный профес...
Это резюме не соответствует стандартам и не предоставляет достаточно информации о канди...