VK People Hub — это место встречи людей и работы.
Наша команда занимается развитием продукта, который создан для того, чтобы управлять мотивацией персонала, корпоративной информацией и знаниями, проектами и совместной работой на единой IT-платформе.
Проект имеет микросервисную архитектуру. Бэкенд-часть написана на языке Python c использованием FastAPI или Django.
Новые продукты и библиотеки разрабатываем преимущественно на FastAPI с SQLAlchemy и Alembic.
Для типизации используем MyPy, продукты пакуем в Docker, основная БД — PostgreSQL. В качестве шины данных у нас Kafka.
Задачи
- Разработка, поддержка и оптимизация серверной части приложений на Python;
- проектирование и имплементация новых частей системы с использованием FastAPI или Django;
- работа с базами данных (PostgreSQL) (проектирование схем данных, написание сложных SQL-запросов, оптимизация производительности);
- участие в проектировании архитектуры и выбор технологий для новых продуктов;
- написание тестов с использованием Pytest с покрытием кода 80%+;
- проведение code review и взаимодействие с другими участниками команды;
- мониторинг, логирование и обеспечение высокой доступности сервисов;
- отслеживание реализованной функциональности.
Требования
- Уверенное знание Python (3.10+), умение писать асинхронный код;
- опыт работы с Django и FastAPI от года;
- опыт проектирования и разработки сложных веб-сервисов и API;
- понимание принципов объектно-ориентированного программирования (ООП) и ключевых паттернов проектирования;
- знание принципов и подходов в работе с базами данных: реляционные (PostgreSQL), индексы, оптимизация запросов;
- понимание принципов микросервисной архитектуры;
- умение писать чистый, читаемый и тестируемый код;
- умение писать SQL-запросы как с помощью ORM (SQL Alchemy, Django), так и на чистом SQL;
- опыт работы хотя бы с одной из очередей (Kafka, Celery, RabbitMQ);
- знание и опыт работы с Docker;
- базовые знания Linux, умение работать с консолью;
- опыт работы с системами контроля версий (Git).
Будет плюсом
- Опыт работы с очередями (Kafka, Celery, RabbitMQ и др.);
- знание паттернов и принципов разработки (DRY, KISS, SOLID, YAGNI, etc.);
- знание архитектурных подходов (Event Sourcing, EDA, CQRS, SAGA);
- навыки работы с системами мониторинга (Prometheus, Grafana, ELK);
- опыт работы с Kubernetes;
- опыт работы с ClickHouse;
- опыт работы с Airflow.
Мы предлагаем
Формат работы
Уровень
График работы
VK People Hub
Инструмент для повышения продуктивности сотрудников, который включает модуль по управлению знаниями и вовлеченностью, проектами и задачами, а также модуль по управлению талантами и HR-аналитике.