Обязанности и достижения:
Написание бэкенда веб-приложения для организации видеоконференций. Приложение является своего рода аналогом Zoom для внутрекорпоративной связи, где каждый зарегистрированный пользователь имеет возможность запланировать проведение видеоконференции и пригласить на нее других пользователей. Мною были реализованы:
1. Частичный рефакторинг и оптимизация кода (поскольку проект был начат до моего трудоустройства). В результате удалось не только повысить читаемость кода, избавиться от лишнего функционала, но и уменьшить нагрузку на базу данных;
2. Новые сериализаторы, представления, модели. В тех случаях когда требовалось больше контроля использовались низкоуровневые классы (APIView) и функции, в остальных случаях применялись высокоуровневые классы;
3. Логика уведомления пользователей о поступивших приглашениях на конференции в реальном времени;
4. Возможность создания различных видов конференций (например, запланированных по дате или повторяющихся в установленные промежутки времени);
5. Логика отправки пользователям приглашений на e-mail и интеграция приглашений с почтовыми агентами (такими как outlook).
6. Многие другие более мелкие задачи.
Во время написания проекта придерживались принципов Kanban.
Использованный стек технологий: Python, Django, Django Rest Framework, Django Channels, Redis, Weebhooks, PostgreSQL, JWT, asyncio и другие.
В настоящий момент занимаюсь разработкой менеджера плагинов для NetBox на FastAPI.