Программированием начал интересоваться понемногу ещё в школе. Поначалу пробовал изучать С, но он показался довольно муторным и базовым, так что решил опробовать его "наследников" в лице С++ и С#. C# использовал в Unity, когда интересовался gamedev. Так же интересовался Python. В итоге больше всего заинтересовал бэкенд на JavaScript. Предыдущий опыт и новые знакомства помогли в нём получше разобраться и покрепче засесть.
Разрабатывал серверную часть приложения для АЗС на микросервисной архитектуре. Работал с такими микросервисами как:
- Авторизация. Разрабатывал логику авторизации пользователя, регистрации новых водителей через интерфейс админа и хранение информации о пользователях в бд PostgreSQL, с которой взаимодействовал через Prisma.
- Мессенджер. Разрабатывал логику взаимодействия между пользователями, автоматическое создание чата между водителем и получателем, обмен сообщениями с использованием websocket и последующее их хранение в MongoDB, с которой взаимодействовал через Mongoose.
- Навигация. Разрабатывал логику взаимодействия с Frontend для получения данных о водителе для последующего взаимодействия с API Яндекс.Карты и получения информации о нахождении водителя
- API. Разрабатывал логику микросервиса API, который использует брокер сообщений RabbitMQ для взаимодействия с другими микросервисами
- Уведомления. Разрабатывал логику уведомлений для пользователей. Пример уведомлений: для администрации о заявке на заказ бензина, для водителей о начале нового заказа, для получателей о прибытие заказа.
В работе над проектом использовались NestJS, Prisma, Mongoose, PostgreSQL, MongoDB, RabbitMQ
Так же есть опыт работы с Docker, Nx, TypeOrm
Покрывал проект unit тестами
Задачи распространялись через Jira, общались в Slack'e, созванивались в Google Meet'e.
Учился на направлении информатики и вычислительной техники. Был силен в программирование, математике и базах данных