О компании:
Две основных специализации нашей компании — SEO-трафик и автоматизация. Мы создаём систему, которая снимает рутину с людей и передаёт её коду: от генерации и публикации контента до масштабного управления тысячами сайтов. Это ускоряет работу и повышает качество.
Разработанный внутренний инструмент это монолитное веб приложение на базе Django. Задача веб приложения - генерация по заранее подготовленным шаблонам статических сайтов и контроль/выполнение всех сервисных процедур необходимых для этого. Данный комбайн совершает все необходимые шаги от регистрации домена до заливки его по ftp и настройке nginx.
Задачи:
Влиться в команду и работать с уже существующим ядром внутреннего инструмента на Django.
Разрабатывать и улучшать функционал текущей админки под новый и задачи массового управления сайтами.
Дорабатывать и оптимизировать текущий функционал: контент-планирование, публикации, обновления, мониторинг.
Работать с очередями и фоновой обработкой задач (Celery).
Поддерживать и улучшать работу с PostgreSQL (схемы, оптимизация запросов).
Подключаться к задачам автоматизации и масштабирования (в связке с фронтенд- и DevOps-командой).
Требования:
Отличное знание Python 3.
Опыт коммерческой разработки на Django (ORM, админка, DRF).
Понимание архитектуры и оптимизации REST API / GraphQL.
Опыт работы с PostgreSQL.
Опыт использования Celery или других очередей.
Умение разбираться в существующем коде и улучшать его.
Понимание принципов масштабируемости и отказоустойчивости систем.
Будет плюсом:
Опыт работы с большими массивами данных, high-load или медийными проектами.
Навыки DevOps (Docker, CI/CD).
Опыт автоматизации развертывания множества сайтов.
Знание практик оптимизации и мониторинга производительности.
Мы предлагаем:
Работа с живым и работающим продуктом , который уже управляет сотнями-тысячами сайтов.
Возможность влиять на архитектуру и развитие системы под новые задачи.
Работа в сильной команде.
Масштаб: десятки тысяч сайтов, миллионы пользователей.
Удалённый формат.
Конкурентное вознаграждение, обсуждаемое индивидуально.