Специалисты
Навыки
Programming Languages: JavaScript - Typescript - CSS/CSS3 - HTML/HTML5
Framework/Libraries: React.js - Redux - Redux-Saga - Redux Toolkit - RTK Query - Styled Components - Material-UI - Axios - Mobx - Node.js - Express.js - Nest.js - React Native - Expo - Lodash - Next.js - Underscore - jQuery - Moment.js - PostCSS - Stylus - LESS - SASS (SCSS) - Animate.css
- Bootstrap
Application/Web Servers: Apache - Nginx
DBMS: MongoDB - PostgreSQL - Redis
Cloud services: AWS - EC2 - Heroku - Google Maps
Application Type: REST
Development Tools: Git - Webpack
Other: Agile - Jira - Docker - Unit tests - JSON - XML - Ajax - MVC - SSH - Unix
Образование
Кафедра Педиатрии
Красноярский государственный медицинский университет, Россия
Пульт управления расчетами логистов
Роль: Full-stack разработчик Подсистема предоставляет возможность: - создания, редактирования, архивирования расчетов, работу с очередью поступления расчетов на ядро, создания сценариев запуска расчетов по графику; - согласования, утверждения расчетов в соответствии с ролевой моделью; - просмотра истории редактирования, согласования и прохождения расчета по жизненному циклу; - работы с конструкторами и справочниками, которые используются в качестве входных данных для расчета (создание, редактирования, архивирование, просмотр истории и т.д) - сбора и наработки входных данных посредством интеграций со смежными подсистемами по определенной последовательности; - отображения статуса расчета на вычислительном ядре (в том числе отображение ошибок и уведомлений), возможность приостановить и продолжить расчет; - сохранения результатов расчета и публикацию их для пользователей в смежных подсистемах; - отображения результатов расчета в различных представлениях (таблицах, "шахматках", карте регионов и стран), предоставления большого количества отчетых форм с множественной фильтрацией, настраиваемого дашборда с графиками; - сравнения расчетов по ключевым показателям; - возможности загружать и выгружать данные из Excel файлов, бесшовно переходить в смежные модули подсистемы; - настраивать пользовательский интерфейс (порядок отображения виджетов, таблиц, сортировка, фильтрация, драг-н-дроп, темная тема и т.д). Что было сделано Проект разрабатывается полностью с нуля, реализуется все вышеперечисленное, начиная с этапа выявления и согласования функциональных требований, анализа, предложения архитектурных решений, дизайн-макетов. Разработка фронт и серверной логики, БД, пользовательских интерфейсов, интеграций, тестирования.
JavaScript / React.js / Chart.js / Leaflet / PrimeReact / C# / Kubernetes / Docker / PostgreSQL Интеграции: Microservices / ESB / GraphQL
Январь 2019 – по настоящее время месяцев
Сервис для алгоритмической торговли
Роль: Full-stack разработчик Сервис (платформа) для алгоритмической торговли на спотовых и фьючерсных рынках крупнейших криптовалютных бирж. Торговый бот — это программный комплекс по управлению торговым алгоритмом с перечнем различных настроек для вариаций торгов и отображением различной статистики торгов. Помимо комплексных алгоритмов в проекте был сложный дизайн. Мы работали над реализацией сложной анимации, отображении ботов и их статистических значений. Задача была выполнена нами успешно и макеты были адаптированы под деспктоп и мобильные версии. Что было сделано 1. Разработка интерактивной графической визуализации рыночных данных: создала компоненты для отображения графиков с использованием библиотеки D3.js. Реализовала возможность выбора разных временных периодов и масштабирования данных на графике для анализа трендов и паттернов. 2. Создание компонента для управления торговыми стратегиями: Разработала интерфейс, позволяющий пользователям выбирать предустановленные торговые стратегии или создавать свои собственные. Реализовала возможность настройки параметров стратегий. 3. Реализация автоматизированной торговли на основе выбранных стратегий: создала модуль, позволяющий пользователю подключить свой аккаунт на бирже и автоматически выполнять торговые операции в соответствии с выбранными стратегиями. Взаимодействие с API биржи осуществлялось через WebSocket-соединение. 4. Оптимизация производительности при работе с большим объемом данных: разработала механизм пагинации и виртуализации списка сделок и ордеров, чтобы обеспечить плавную прокрутку и уменьшить нагрузку на браузер. 5. Интеграция системы уведомлений: реализовала компоненты и логику для отправки уведомлений пользователю о выполненных сделках, изменении цен или других важных событиях. 6. Создание дашборда с общей статистикой и аналитикой: разработала страницу с отображением общей статистики по торговым операциям, таких как прибыльность стратегий, распределение активов и графики доходности. Использовала библиотеки для визуализации данных. 7. Тестирование компонентов и функциональности: написала юнит-тесты для ключевых компонентов и функций при помощи Jest и React Testing Library. Проверила корректность отображения данных, взаимодействие с пользователем и обработку ошибок. Проект успешно реализован, и я имею опыт работы с разработкой сложных фронтенд-приложений на React, включая визуализацию графиков, работу с API бирж, автоматизированную торговлю, оптимизацию производительности и создание дашбордов с аналитикой.
JavaScript / React.js / React Testing Library / Jest / D3.js
Январь 2019 – по настоящее время месяцев
Фронтовая часть мобильного интернет-магазина
Роль: Full-stack разработчик Приложение представляет собой аналог Ozon, Wildberries и схожих платформ. Наша команда состояла из 3-х фронтенд разработчиков, ручного тестировщика, техлида и ПМа. Работали по методологии Scrum и предоставляли наработки итерациями. Что было сделано Занималась инициализацией приложения. Реализовала вложенную навигацию. Работала над каталогом товаров, который включал в себя страницу со списком товаров, страницу с подробным описанием товара, добавление товара в корзину, страницу с купонами, блок рекомендаций.
JavaScript / React-native / Expo / Typescript / Reduxjs / Toolkit / RTK Query
Январь 2019 – по настоящее время месяцев
Финансовый проект
Роль: Full-stack разработчик Создание отдельных виджетов для внедрений их в WordPress. Виджеты по типу yahoo.finance, содержат в себе поиск акций, всю необходимую информацию о них в виде графиков и таблиц, скрининг акций в виде таблицы с возможностью фильтрации, сортировки и поиска. Данные виджеты встраиваются в различные платформы на основе WordPress (созданием связи занималась отдельная команда PHP-специалистов). Что было сделано Мы занимались непосредственным созданием составляющих компонентов и логики виджетов. На данный момент создано два виджета: один для получения всей необходимой информации об определенной акции, второй: для быстрого скрининга всех акций с возможностью фильтрации и сортировки. Компоненты - react, стилизация с помощью Material-UI. Создавали универсальные компоненты на основе молекулярной системы (atoms - molecules - organisms). Для хранилища стэйта использовали context. Важной частью проекта являются графики, для их построения использовали Chart.js. Графики были разнообразные: от стандартных линейных до специальных финансовых графиков типа Свеча. Второй важной составляющей были таблицы. Основной задачей стояло построить не только красивую таблицу, но и заложить правильную архитектуру для возможного переиспользования (так как была задача сделать конфигурируемую таблицу, в которой пользователь сам определяет тип отображаемой таблицы и количество столбцов). Никаких дополнительных библиотек для этого не использовали, только нативные тэги HTML. Локализация виджетов поддерживалась с помощью react-intl (локализация для 9-ти языков).
JavaScript / React.js / react-intl / Material-UI / Chart.js / GraphQL
Январь 2019 – по настоящее время месяцев
Компания управляющей социальным жильем и недвижимым имуществом
Роль: Full-stack разработчик Масштабный проект Британской компании управляющей социальным жильем и недвижимым имуществом на территории Англии по воссозданию функционала предшествующей системы, подверженной хакерской атаке. Цель проекта состоит в том, чтобы воссоздать единую цифровую базу данных объектов и клиентов (как собственников, так и арендаторов), осуществить возможность выставления счетов (аренда, коммунальные услуги, и прочее), оплаты счетов через интеграцию с платежными и банковскими сервисами, поиска собственников по имуществу, номерам соц. карт и прочим данным, поиска имущества по критериям, с возможностью выгружать данные и сравнивать их, а также формировать отчеты. В системе предполагается две роли пользователей - клиенты и администраторы управляющей компании, для каждой роли созданы свои инструменты взаимодействия с системой. Что было сделано Мы осуществляли работы на фронтенде - занимались созданием страниц с применением технологий React.js + Redux Toolkit + Redux-Thunk. Для написания стилей использовались модули SCSS. На проекте занимались созданием многократно используемых React.js компонентов и их интеграцией с бекэндом. Проект отличается сложной структурой данных, приходящих с бекэнда. Трудной задачей было парсить информацию, обрабатывать и передавать для отображения в компоненты. Также отдельной задачей стояло создание универсального компонента для таблиц, принимающего различные условия, влияющие на внешний вид и содержание. На бекэнде применялись технологии .NET, база данных - DynamoDB.
JavaScript / SCSS / React.js / Redux Toolkit / Redux-Thunk / DynamoDB
Январь 2019 – по настоящее время месяцев
Социальный маркетплейс
Роль: Full-stack разработчик Маркетплейс, позволяющий общаться с популярными людьми: артистами, спортсменами блогерами и экспертами. Пользователи задают вопросы друг другу, устанавливают сроки ответов, свои цены на вопросы. Также подключен мониторинг приложения со стороны модератора, который отвечает на жалобы пользователей, блокируя неблагоприятных. Установлена защита от публикаций нецензурной лексики и запрещенных видео файлов. Данная социальная сеть позволяет ставить лайки, оставлять комментарии, делиться видео-ответами, создавать видео-посты, добавлять понравившееся видео в избранное, повышать свой собственный рейтинг, зарабатывать на ответах и за привлечение рефералов в приложение. Что было сделано Основа всего приложения — это взаимодействие пользователей друг с другом с помощью создания вопросов и получения видео-ответов и для реализации данной задачи была разработана экосистема чатов с подключением сокетов. Также разработали уникальную систему статусов, которая отражает все точки соприкосновения ответчика и задающего вопрос. На вопрос/ответ можно отправить жалобу, затем последует модерация со стороны администратора приложения, который удовлетворяет или отклонят жалобу, вся модерация происходит разработанной нами административной панели. Все статусы, используемые в проекте очень важны так, как влияют на исход сделки и дальнейшее распределение средств, полученных за ответ между отвечающим на вопрос, реферером и стейкхолдером. Приложение выполнено по принципу социальной сети со всеми популярными возможностями: оставлять/удалять/отвечать на комментарии, ставить/удалять лайки видео-постам, добавлять видео в избранное, делать репост полученных и отправленных ответов в ленту приложения, воспроизведение видео в лентах приложения с помощью автоплей и предусмотрено управление звуком. Проведены работы с компонентами по созданию и просмотру видео. Реализована возможность просмотра и создания видео в горизонтальном и вертикальном формате для всех видов мобильных устройств на платформах IOS и Android. Также у каждого пользователя есть профиль и баланс, в котором отображается поступление и списание денежных средств пользователя с возможностью вывода из приложения. Установлен полный контроль текстового и видео-контента, стоит запрет на публикацию нецензурной лексики и загрузку недопустимого видео-контента, для чего была сделана интеграция с Amazon Rekognition.
JavaScript / React Native / Node.js / PostgreSQL Интеграции: AWS S3 / Payment Systems / Amazon Rekognition
Январь 2019 – по настоящее время месяцев
Программный продукт для благотворительной организации
Роль: Full-stack разработчик Программный продукт для благотворительной организации служит платформой, конечной целью которой является снижение неравенства и отчуждения семей, детей и молодежи в сложной жизненной ситуации, позволяя каждому ребенку школьного возраста иметь хобби. Он позволяет любой семье с тяжелым положением получить денежную поддержку для самореализации ребенка. Сайт объединяет тех, кто нуждается в финансовой поддержке и заинтересован в создании увлечений, чтобы у ребенка была возможность заниматься одним хобби, которое им нравится круглый год. Что было сделано Наша команда покрывала все фронтенд задачи на проекте: авторизация, аутентификация доноров и нуждающихся клиентов, восстановление доступа через E-mail. Подсистема для нуждающихся: • просмотр списка доступных хобби/активностей, отображение детальной информации о хобби; • подача заявки на помощь; • просмотр списка заявок; • добавление документов для подтверждения заявки на запрос денежных средств. Подсистема для доноров: • выбор региона для внесения пожертвования, отображения карты Финляндии с метками выбранного региона; • выбор активности для пожертвования; • выбор суммы пожертвования и типа пожертвования (одиночное или регулярное); • введение реквизитов счета через Payment-higway; • отображение списка пожертвований, отображение и деактивация активных регулярных пожертвований. Адаптивная верстка: отображение новостей, хранящихся на Wordpress портале организации, парсинг ссылок для перехода. Также преодолели трудности, возникающие с мобильной адаптацией страницы, при условии видимости ключевых элементов background-изображения (видимость лиц детей на картинках), а также настроили цветовую фильтрацию приходящих с сервера иконок хобби.
React.js / Redux / Redux-Saga / Material-design Интеграции: Payment-Highway
Январь 2019 – по настоящее время месяцев
Сервис для хранения воспоминаний и семейных историй
Роль: Full-stack разработчик Что было сделано На этом проекте мы работали с React.js и Node.js как основным стеком технологий. Что касается баз данных, выбор был сделан в пользу нереляционных, поэтому мы использовали MongoDB. Для Amazon хранения мы использовали AWS S3. Система позволяет совершать видеозвонки, загружая потоковое видео на s3. Мы проанализировали систему для выбора лучшего технического решения. Видео также можно загрузить. Административная часть включает в себя возможность экспорта отчета в xls формате.
JavaScript / React.js / Redux / Node.js / MongoDB Интеграции: Heroku / AWS / Payment systems
Январь 2019 – по настоящее время месяцев