Специалисты

Описание

Programming Languages:
JavaScript, Typescript, HTML/HTML5, CSS/CSS3, SQL

Framework/Libraries:
React.js, Redux, Redux-Saga, React Hooks, Next.js, Mobx, Material-UI, Axios, Underscore, Lodash, Moment.js, SASS (SCSS), LESS, PostCSS, Bootstrap, Animate.css, jQuery

Application Type: REST

Cloud services:
Heroku, Google Maps, AWS

Development Tools:
Git, Webpack

Testing: Jest

Application/Web Servers:
Nginx, Apache

DBMS:
PostgreSQL, MongoDB, Redis, MySQL

Other:
Agile, MVC, Ajax, XML, JSON, Unix, SSH

Образование
Математическое обеспечение и администрирование информационных систем
ФГБОУ ВО ЮРГПУ (НПИ) им. М. И. Платова, г. Новочеркасск

Опыт
Проект

Интернет-магазин умных устройств

Описание

Описание проекта Крупнейший на Российском рынке интернет-магазин умных устройств, который на момент разработки нашей командой находился в режиме production. (Продуктом уже пользовались конечные клиенты). В задачу нашей команды входила полная поддержка продукта, интеграция с различными сторонними сервисами, системами аналитики, и учета продаж. Что было сделано В ходе нашей работы, в процесс разработки была успешно внедрена методика управления проектами SCRUM, налажен процесс взаимодействия между серверной и клиентской командами, введено полное покрытие проекта авто- и e2e- тестами, взято за основу правило DRY (Don"t repeat yourself), а также, еженедельный рефакторинг малопроизводительных или некорректно работающих систем, пришедших от прошлых итераций разработки предыдущими командами. Данные нововведения ускорили выпуск релизов на 20%, значительно ускорили работу всех сервисов, а также втрое сократили объём ошибок, доходящий до конечного пользователя. Уникальность проекта заключалась в его сложной структуре. Множество продающих лендинговых страниц, тесно связанных друг с другом. Общая корзина, и система личного кабинета пользователя, интегрированная с системой банковской авторизации. Больше половины всех страниц - динамически изменяемые, и реагирующие на поведение и действия пользователя. Оптимизация заключалась за счет использования фреймворка Gatsby, предоставляющего возможность использовать все преимущества SSG (Server Side Generating) технологии.

Технологии

JavaScript / React.js / Gatsby / GraphQL / Next.JS / Git LFS / Cypress Интеграции: Google maps / 2Gis / Dadata / Google Analytics / 1C Bitrix

Длительность

Май 2018 – по настоящее время месяцев

Проект

Платформа для ставок

Описание

Описание проекта События, на которые можно делать ставки, а также условия ставок (коэффициенты выигрышей и т. д.) задаются в админ-панели, а также импортируются из внешнего сервиса BetFair. Проект состоит из двух основных частей - панель администратора и веб-сайт для внешних клиентов. В панели администратора есть строгая иерархия основных пользователей: 1 главный администратор, далее - вложенности так называемых мастеров (до шести вложенностей), каждый из которых может создавать последующего, и далее - непосредственно клиенты, которым будет дан доступ на веб-сайт для внешних клиентов. Как только клиент создан в панели администратора и ему заданы данные для входа на внешний веб-сайт, создатель этого клиента выдаёт ему стартовую сумму фишек для начала совершения ставок. С этого момента клиент может просматривать доступные события для ставок, их условия, и непосредственно совершать ставки. Доступные ставки называются "маркетами". Таких маркетов в рамках одного события может быть несколько. Маркеты (ставки) могут разных типов. Основные 2 типа ставок - Bookmaker и Fancy. Ставки типа Bookmaker совершаются при наличии нескольких участников события (например, команды в спортивном соревновании) и возможности ставить на победу или поражение конкретного участника. Ставки типа Fancy описывают какой-либо конкретный исход события, и клиенты ставят на то, произойдёт этот исход или нет. Например, могут быть ставки Fancy на то, что восстание машин произойдёт именно в 2025 м году, и клиент делают ставки на то, действительно ли это случится или нет. По окончании события собираются результаты и выдаются выигрыши/забираются проигрыши. Что было сделано 1. Интеграция с внешним API - BetFair. С него приходили динамические данные о маркетах (ставках) и событиях с этими ставками. 2. Унификация данных с BetFair с данными, созданными в системе проекта. Ставки и события, созданные вручную в панели администратора, имели одинаковых формат со ставками и событиями, полученными с BetFair. Это позволило не перегружать БД и иметь удобный, быстро обрабатываемый формат данных для ставок и событий. 3. Покрытие внушительной части данных websocketами. Так как проект работает с деньгами и событиями, часто происходящими в режиме реального времени, он требовал мгновенного отображения любых изменений, происходящих со ставками и событиями. Изменения улавливались в real-time как со стороны действий администраторов, так и со стороны действий клиентов. 4. Внедрение комплексных подсчётов и схем для обработки ставок и потенциальных выигрышей в зависимости от типа маркета, вариации ставки и её коэффициентов.

Технологии

React.js / Node.js / TypeScript / PostgreSQL Интеграции: AWS S3 / Complex data through APIs / BetFair

Длительность

Май 2018 – по настоящее время месяцев

Проект

Платформа для провайдеров и покупателей услуг

Описание

Описание проекта Идея проекта заключается в создании платформы для тех, кто продаёт услуги и тех, кому они нужны. Платформа включает распределение ролей на провайдеров и покупателей. Первые предлагают услуги и могут подавать заявки на выполнение услуг для покупателей, которые в свою очередь могут оформлять запросы на услуги. Платформа включает систему отзывов и рейтинга, которая позволяет и провайдерам, и покупателям оценивать взаимодействие друг с другом. Что было сделано С нуля разработали платформу для предоставления услуг и поиска работы. Основные функции платформы: - Регистрация в качестве покупателя с подтверждением почты; - Создания профиля провайдера внутри платформы. Полноценный walkthrough для формирования профиля провайдера; - Создание формы запроса услуги. Форма имеет ряд полей и критериев для обеспечения полной информации о том, что необходимо покупателю; - Bidding система (аукцион на предоставление услуги). Позволяет любому провайдеру подавать заявку на выполнение конкретной услуги и предлагать за неё свою цену. Покупатель выбирает понравившийся профиль провайдера и наиболее подходящую ему цену, и выбранный провайдер получает возможность выполнить эту услугу; - Запрос на услугу конкретного провайдера. Покупатель может просматривать профили провайдеров в поиске и, выбрав понравившегося, написать ему заявку напрямую, без аукциона. В таком случае провайдер сам решает, сможет ли он выполнить запрашиваемую услугу и предлагает покупателю его цену; - Система категорий. Каждый провайдер при создании своего профиля выбирает категории, в которых он выполняет услуги. Это может быть ремонт автомобилей, строительство, уборка домов. И в зависимости от того, по какой категории ищет себе услуги покупатель, он сможет найти провайдеров в соответствующей области услуг; - Геолокационный сервис. Используется как для профиля провайдера, так и для профиля покупателя. Позволяет отображать запросы покупателей в соответствующем районе города и находить провайдеров по их географической доступности; - Система онлайн оплаты. Платформа позволяет покупателям добавлять кредитные карты и оплачивать услуги провайдера онлайн; - Отзывы и рейтинг. По окончании выполнения услуги, как покупатель, так и провайдер, могут оставить отзыв друг о друге. Отзывы включают критерии, по которым можно выставить оценки, что напрямую влияет на рейтинг пользователя; - Управление профилями. Каждый пользователь может быть как покупателем, так и провайдером, как покупать услуги, так и продавать их. Он может легко переключаться между этими видами профиля и иметь доступ к соответствующим функциям.

Технологии

Node.js / React.js / PostgreSQL Интеграции: AWS S3 / Google maps / Payment Systems

Длительность

Май 2018 – по настоящее время месяцев

Проект

Семейный сервис

Описание

Описание проекта Нашей главной целью было создание сервиса, где семьи могли бы хранить воспоминания и семейные истории. Система даёт возможность записи аудио- и видеозвонков, их хранения, и функцией “поделиться с группами”. Записи надёжно хранятся, что обеспечивает конфиденциальность. Что было сделано На этом проекте мы работали с React.js и Node.js как основным стеком технологий. Что касается баз данных, выбор был сделан в пользу нереляционных, поэтому мы использовали MongoDB. Для Amazon хранения мы использовали AWS S3. Система позволяет совершать видеозвонки, загружая потоковое видео на s3. Мы проанализировали систему для выбора лучшего технического решения. Видео также можно загрузить. Административная часть включает в себя возможность экспорта отчета в xls формате.

Технологии

JavaScript / React.js / Redux / Node.js / MongoDB Интеграции: Heroku / AWS / Payment systems

Длительность

Май 2018 – по настоящее время месяцев

Проект

Сайт для игры на бирже

Описание

Описание проекта Это проект, помогающий людям играть на бирже. Объединяет данные из нескольких источников и отображает их на сайте и при использовании алгоритмов показывает, какие вложения рискованные, а какие безопасные. Также биржа работает в качестве социальной сети, позволяя пользователям сайта общаться между собой. Что было сделано Проект сделан с помощью React.js и сервер - рендеринга. Также динамически подгружается информация с других источников и рисуются графики, которые в режиме реального времени меняют свои значения. Преимущественно работали с сервером на Node.js, Sequelize, PostgreSQL. Был реализован следующий функционал: 1. создание новых моделей и зависимостей для Sequelize; 2. написание рутов для работы с базой (CRUD операции); 3. написание Raw Query для сложных запросов к базе; 4. создание и реализация структуры для денежных переводов на APEX аккаунты, используя PLAID: - создание моделей для Sequelize, таблиц в базе для хранения данных о переводах; - создание на Node.js рутов для работы с APEX, PLAID, базой данных, обработка полученных данных; - создание на Frontend компонентов для работы с переводами; - интеграция клиента и сервера. 5. Создание и реализация структуры для голосования и отображения их результатов: - создание моделей для Sequelize, таблиц в базе для хранения данных; - написание рутов для голосования; - написание логики и рутов для формирования и отправки результатов голосования на клиенте; - написание клиентской части для отображения компонентов; - построение графиков используя VS. 6. Создание новых компонентов (React.js/Redux/Redux-Saga). 7. Работа с Bootstrap, Material-UI.

Технологии

Javascript / React.js / Redux-Saga / Next.js / Node.js / Sequelize / PostgreSQL / Bootstrap

Длительность

Май 2018 – по настоящее время месяцев