Senior Python developer
Требования
Местоположение и тип занятости
Компания
Рекрутинг
Описание вакансии
Условия работы
Buddy.ai ищет Python-разработчика уровня Senior с большим опытом создания сервисов, отвечающих принципам Scalability, High-Availability и Maintainability для создания виртуального репетитора с голосовым интерфейсом. Buddy.ai — сочетание искусственного интеллекта, игровых механик и образовательного подхода. Вам предстоит разрабатывать новые и поддерживать существующие сервисы компании для обучения детей разговорному английскому через полноценную игру с виртуальным репетитором.
Мы ожидаем, что вы подхватите проект, поможете реализовывать новую клиент-серверную архитектуру, не забывая обкладывать код тестами.
Задачи:
- Разработать клиент-серверную архитектуру для адаптивного учебного плана;
- Разработать систему биллинга подписок с AppStore, Google Play, Stripe;
- Разработать систему хранения и атрибуции данных, совместимую с GDPR и COPPA;
- Разработать собственную NLP-систему для мульти-модального виртуального репетитора английского языка;
- Разработать диалоговый менеджер и систему хранения данных для мульти-модального виртуального репетитора английского языка;
- Развернуть облачную систему сборки нейросетевых моделей для распознавания речи.
Мы ожидаем:
- Опыт разработки backend-сервисов от 5 лет;
- Умение разрабатывать сервисы, отвечающие принципам Scalability, High-Availability и Maintainability;
- Опыт разработки Rest API / JSON RPC для мобильных и веб-приложений;
- Опыт работы с AsyncIO, PostgreSQL, RabbitMQ;
- Опыт работы с Docker;
- Умение покрывать свой код тестами. Базовое понимание принципов тестирования приложений и успешное применение их на практике;
- Знание паттернов проектирования и умение успешно применять их на практике;
- Опыт разработки микросервисов, понимание микросервисной архитектуры;
- Опыт создания системы микросервисов на базе Kubernetes;
- Знание английского языка;
- Опыт удаленной работы.
Бонусом будет:
- Опыт работы в игровой индустрии;
- Опыт работы в стартапах;
- Опыт работы в образовательных проектах;
- Опыт веб-разработки с использованием Django, Flask, Sanic, aiohttp;
- Опыт разработки по гибкой методологии (Agile, Scrum);
- Опыт работы с системами платежей, биллингом и системами аналитики.
Зона ответственности:
- Написание исходного кода backend-сервисов на языках используемого стека технологий (на данный момент Python);
- Проектирование архитектуры backend-сервисов;
- Настройка баз данных для сервисов backend-инфраструктуры;
- Написание дополнительных скриптов, обеспечивающих работу сервисов;
- Написание вспомогательных скриптов для нужд компании;
- Рефакторинг и оптимизация backend-сервисов;
- Контроль производительности и профилирование backend-сервисов;
- Разворачивание backend-сервисов на мощностях компании доступными методами, в том числе средствами непрерывной интеграции (CI) и непрерывной доставки (CD);
- Написание тестов для backend-сервисов;
- Интеграция backend-сервисов друг с другом и клиентскими приложениями;
- Регулярное сохранение результатов работы в систему контроля версий;
- Поддержание высокого качества продукта вместе с командой тестирования;
- Предоставление результатов работы, соответствующих продуктовым требованиям;
- Работа с системой трекинга задач, для отображения текущего состояние работы;
- Создание документации по реализованным и реализуемым сервисам;
- Взаимодействие с разработчиками, тестерами, другими сотрудниками и подрядчиками компании.
Бонусы
Преимущества:
- Работа на международном уровне с амбициозной, профессиональной командой;
- Творческая свобода и реализация;
- Возможность брать на себя ответственность и влиять на продукт;
- Работа над крутым проектом, который помогает решить существующую проблему;
- Прозрачный менеджмент и возможность получать регулярный фидбек на свою работу.
Условия:
- Зарплата по результатам собеседования;
- Возможно получение опциона;
- Офис в Москве или удаленная работа.