Специалисты
Ключевые навыки
Programming Languages
- JavaScript (ES6+)- Typescript- CSS/CSS3- HTML/HTML5- C#- SQL
Framework/Libraries
- Angular- Angular Material- RxJS- NG Bootstrap- Bootstrap- SASS(SCSS)- LESS- JQuery- PostCSS- Stylus- Animate.css- Moments.js- .NET- ASP.NET Core- ASP.NET MVC- ElasticSearch- CraphQL- Websockets- Jest
Application/Web Servers
- Apache- Nginx
DBMS
- MySQL- PostgreSQL
Cloud services
- AWS- Heroku- s3 bucket- Google Maps
Testing
- Unit testing- e2e testing
Development Tools
- Git- Webpack
Application Type
- REST- gRPC
CI/CD
- Gitlab- Jenkins
Other
- Agile- Scrum- Kanban- Figma- Docker- K8s- Gitflow- SOLID- Adaptive Web- Responsive Web Development- Service Workers- MVC- Ajax- XML- JSON- Unix- SSH
Образование
Информационные системы и технологии, бакалавр
ИСОиП(ф)ДГТУ
NDA #1 (ритейл)
Описание проекта Рабочее место оператора колл центра, помогает оформить заказ для клиента из крупных магазинов розничной торговли бытовой техники. Что было сделано 1. Добавил возможность оформить доп. услуги к товару, такие как доставка, страховка, установка и прочие, реализация функционала несовместимых услуг. 2. Интеграция магазинов в текущее рабочее место оператора. 3. Занимался разработкой фичи оформления заказа в кредит, либо рассрочку. 4. Подключил оплату через СБП, отправка ссылки клиенту на номер телефона, либо почту. 5. Интегрировал A/B тестирования для развертывания функционала в различных регионах и магазинах. 6. Разработал функционал “Гарантия лучшей цены” при оформлении заказа. 7. Разработал функционал оформления заказа в пункт выдачи заказов.
JavaScript / Angular 11 / Angular router / angular material / Websockets / RxJS / Nest / Fastify Интеграции: Yandex maps
Январь 2024 – Ноябрь 2024 месяца
Платформа, объединяющая врачей и медицинские компании из разных стран
Что было сделано - переписывал код с AngularJS на более современный Angular. - реализовал страницу промокодов в админ панели, в которой можно создавать как единичные промокоды, так и пачки разовых промокодов, которые можно применять как к любому, так и к конкретному курсу. В этой же странице можно управлять статусом промокода (активация/деактивация), можно выгрузить информацию о промокоде в формате xlsx. - добавил в админ-панели данные о продаже курсов и учете выручки от продаж. - расширил функционал страницы пользователя в части фильтрации типов доступных ему курсов. - настроил индикатор прогресса обучения по количеству часов. - модифицировал верстку карточек курсов для соблюдения единообразия дизайна всего приложения. - интегрировал сервис оплаты Hyperpay с возможностью запросить возврат за не начатый курс. - добавил возможность применения промокода и пересчета стоимости курса. - модифицировал главную страницу приложения согласно новому дизайну. - интегрировал социальные сети (facebook, telegram, twitter, whatsapp, skype, LinkedIn, reddit). - интегрировал рекламу Google ads. - реализовал программу лояльности, которая направлена на повышение активности пользователей на платформе для увеличения ценного контента и стимулирование покупки образовательных курсов, предоставляемых платформой. Основная концепция: на админке создаются задания (всего доступно 14 триггеров) для пользователей, за выполнение которых будут начислены виртуальные МедГемы. Пользователи могут потратить эти МедГемы на товары из Магазина, по сути являющиеся промокодом внутренней площадки (на покупку курса или вебинара) или внешней (AliExpress, Amazon и др.). - реализовал виджет Баланса, а также историю начисления и списания МедГемов на странице/ сайдбаре Transactions. - интегрировал стриминговый сервис Vimeo с возможностью сбора статистики по посещаемости вебинаров. Доступ к вебинару ограничен для пользователей, не купивших вебинар и не являющихся пользователями платформы. - добавил логику отображения уже прошедших событий и предстоящих, скорректировал логику начисления CME часов, отображения даты и времени старта вебинара в зависимости от часового пояса места проведения и места нахождения пользователя. Внедрил функцию обратного отсчета до старта вебинара. - добавил новую роль - визитер, доступ к приложению теперь открыт всем пользователям без регистрации, но для совершения интерактивных действий пользователь должен зарегистрироваться. - добавил метатеги для SEO-оптимизации. - добавил редактирование профиля пользователя и повторного начисления и выдачи сертификатов за повторное прохождение курсов. - модифицировал текущую верстку сайта, с целью улучшения адаптивности сайта. - покрыл приложение unit тестами.
Javascript / Angular 9 / React Native / Java / WebSockets / PostgreSQL Интеграции: Payment Systems / Google ads
Январь 2023 – Декабрь 2023 месяца
NDA #2 (ЖКХ)
Описание проекта Основной задачей было разработать личные кабинеты для различных организаций (ТСЖ, ЖК, УО, РСО, РОТКО, РОКР, ОМС и ОГВ), в которых можно отслеживать динамику раскрытия информации по различным субъектам РФ. Также необходимо было разработать личный кабинет для одной крупной государственной структуры (или организации). Что было сделано Обеспечение взаимосвязи между модулями за счёт: конфигурации nginx и библиотеки UIRouter; Для расширяемости и упрощённой поддержки был доработан стандартный сборщик Angular для того, чтобы кабинеты / модули можно было встраивать в старый (AngularJS) код; В ходе работ были разработаны личные кабинеты организаций. В кабинете присутствует карта регионов России, также графики различного вида (chart, piechart) и в конце страницы таблица с информацией об организациях (УО, ТСЖ и др). Проект имеет сложную структуру, в ходе работ использовались различные технологии и приемы, такие как: 1. moduleFederationPlugin - т. к. доработку нужно было вести в модуле, который был написан на AngularJS, изменять код под новый сборщик (до этого был Bower и Grunt) было ресурсозатратно, то решили вести дальнейшую разработку в микроформах (чтобы не трогать старые модули). 2. pnpm - работает гораздо быстрее npm + позволяет каскадно запускать скрипты для разных частей приложения. 3. Была написана собственная библиотека компонентов. В ней реализованы: 1) таблица - настраивалась с помощью конфига; 2) piechart - реализован с помощью svg; 3) карта - с ней были проблемы, т. к. не было API, которое предоставляло бы актуальную карту районов в регионе, поэтому дизайнер разделил исходник такой карты на отдельные регионы. Предполагалось, что карта региона будет приходить в формате svg с бэкэнда и отрисовываться на фронте в виде map-chart, но от этого компонента отказались, ввиду затратного сопровождения проекта; 4) обычные графики; 5) дропдауны, которые поддерживали вложенные объекты; 6) слайдер/селектор;
JavaScript / AngularJS / Angular 13 / PostgreSQL
Апрель 2022-Декабрь 2022 месяца
аренда/продажа/покупка недвижимости в Германии
Описание проекта Предметная область проекта - аренда/продажа/покупка недвижимости в Германии. Основной инструмент — это карта. Мы использовали кастомизированную карту Google Maps со всеми функциями, которые должны быть. Пользователь может регистрироваться в системе под разными ролями - владелец, риэлтор, покупатель и, соответственно выбирать функцию: продавать, арендовать, покупать недвижимость. Все объекты недвижимости доступны на карте - пользователь может выбрать любой из них - простым кликом и просмотреть детальную информацию об объекте, а именно фото, информацию о состоянии самого здания, об интерьере и так далее. Каждому пользователю доступен личный кабинет, где он может просмотреть информацию о своих объектах; объектах, которые он добавил в избранное и так далее. Что было сделано Мы занимались разработкой клиентской части в рамках MVP, после запуска, во время роста и расширения стартапа. В основном, мы работали на фронтенде, используя технологию Angular 7. Мы кастомизировали Google Map и внедрили ее в проект. Основной инструмент в проекте — это карта, была проделана большая работа по ее кастомизации. Реализовали логику по отрисовке кластеров на карте. Каждый кластер — это определенная область Германии с отображением границ кластера и количества объектов недвижимости в нем. Эти данные автоматически перерисовываются под каждый уровень зума. Для более детальных уровней зума вместо кластеров была реализована логика по отрисовке полигонов, которые отображают границы реальных земельных участков с объектами недвижимости на них. Все это реагирует на систему фильтров, которая управляет объектами отрисовки на карте.
Angular 7 / JavaScript / Python / PostgreSQL Интеграции: AWS EC2 / AWS S3 / Google maps / complex data through APIs / Amazon amplify / Amazon cognito / Amazon lambda
Апрель 2021 – Март 2022 месяца