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.
Опыт
- Администрирую приложения, службы, сервисы и операционные системы вычислительного комплекса системно-технической инфраструктуры(СТИ) в рамках обеспечения информационной безопасности и шифрования,
- Участвую в анализе защищенности информационных ресурсов, выявляю и устраняю ошибки,
- Принимаю участие во взаимодействие по вопросам обеспечения информационной безопасности со структурными подразделениями,
- Провожу системное обслуживание и тестирование вычислительных комплексов СТИ.
-Разрабатывал интерфейс для веб-приложения со стеком React/Redux в команде из трёх человек. Моей задачей являлось визуализировать историю криптовалют с возможностью фильтрации койнов по различным параметрам и отслеживанием их через таймлайн. Так же была выполнена обработка данных на клиенте, нормализация и отображение в соответствии с заданными параметрами.
-Исправлял ошибки и добавлял новый функционал на других проектах компании, например миграция карт сайта доставки еды yami yami с google maps на сторонние сервисы.
-Работал с legacy, а также переписывал код под современные стандарты.
Образование
Начальные знания английского языка
Проживаю в городе Санкт-Петербург
Рекомендации
Егор, привет.
Отлично получилось структурировать свое резюме и информацию!
Есть несколько идей по дополнениям:
1. Укажи, пожалуйста, город проживания.
Это поможет работодателям как минимум сориентироваться по временной зоне, чтобы вести коммуникацию и в дальнейшем рассмотреть рабочий формат.
2. После указания формата работы было бы здорово указать мотив перехода во фронтенд разработку, чем привлекает это направление и как планируешь здесь развиваться как разработчик.
3. Сможешь указать свои достижения/реализованные задачи на последнем месте работы?
Успехов тебе и новых крутых проектов в IT!
Добавить комментарий/ссылку на вакансию