Студенты создали приложение для деловых знакомств, не зная фронтенда
Краткое резюме
Студенты разработали приложение для деловых знакомств в Telegram на базе Python и TypeScript. Они преодолели трудности и создали сервис, который помогает находить единомышленников и команды для проектов.
В этой статье мы расскажем о пути студентов, которые разработали приложение для деловых знакомств на базе Python и TypeScript. Они сами выбрали стек технологий, организовали командную работу и преодолели множество трудностей.
Контур занимается образовательными программами и сотрудничает с ФИИТ (УрФУ). Мы курируем студентов и помогаем им создавать полезные пет-проекты, которые можно применять в нашей компании и не только. В этой статье мы хотим поделиться опытом студентов, которые впервые попробовали работать с новыми инструментами, формировали стек технологий и преодолевали трудности.
Деловой Тиндер — это мини-приложение в Telegram для деловых знакомств. Оно позволяет найти единомышленников и даже целую команду для реализации идей. Обычные социальные сети не подходят для этой цели, так как рекомендации в них работают иначе.
Студенты решили разработать сервис, который решает эту задачу. Они занимались проектом в течение трёх семестров, то есть примерно девяти месяцев.
Сервис работает следующим образом: пользователь заходит в приложение, заполняет профиль, выбирает интересы и регулярно получает новые рекомендации людей, которые максимально близки ему по духу и навыкам. Когда два человека ставят взаимные «лайки», им открывается доступ к чату в мессенджере — можно начинать переписку.
Для разработки приложения студенты использовали следующий стек технологий:
* Бэкенд написан на Python с использованием Django и FastAPI. Django предоставил топовую ORM с миграциями и админку из коробки, а FastAPI добавил автодокументацию и удобную валидацию запросов.
* Для хранения данных использовали PostgreSQL, а медиафайлы разместили в облачном хранилище S3.
* Фронтенд реализован на TypeScript с использованием React и Redux, что гарантировало стабильность и удобство дальнейшей разработки.
* Запросы пользователей маршрутизируются через Nginx, инфраструктура размещена в Yandex Cloud с настроенными CI/CD процессами через GitHub Actions, которые обеспечивают автоматическую сборку, тестирование и деплой.
Студенты выбрали этот стек технологий по нескольким причинам:
* По ним есть большое количество документации в свободном доступе.
* Довольно активное комьюнити, в котором разработчики общаются друг с другом и делятся знаниями.
* У каждого из группы был опыт работы с вышеперечисленными технологиями, а дополнительная практика пошла бы только на пользу.
* Выбранные технологии позволяют создавать приложения с высокой скоростью.