Fullstack Developer (python+reactjs) (Зарплата в $$$)
Зарплата
Требования
Местоположение и тип занятости
Компания
Описание вакансии
Условия работы
В быстрорастущую студию мобильной разработки требуется фуллстек разработчик.
Бэкенд - django. Фронт - reactjs+jquery. Удаленка, фултайм, (около)московский часовой пояс.
В компании 20 человек, 2 из которых - питонисты (я и мой коллега). Количество наших сервисов растет, совокупное кол-во пользователей превысило 50.000.000, требования к нагрузке повышаются - и вдвоем мы уже не справляемся. Поэтому ищем третьего.
Половина наших сервисов - это высоконагруженные апишки под миллионы устройств, а половина - продукты для внутреннего пользования. Примеры:
- Планировщик пуш-уведомлений. Работает поверх Firebase. Поддерживает несколько миллионов зарегистрированных устройств и каждый день делает по ним рассылки; через пару месяцев выйдем на несколько десятков миллионов устройств.
- ETL-пайплайны, которые парсят и обрабатывают данные из рекламных кабинетов (Appsflyer, Facebook, Google ads, Unity) и складывают все в Google Bigquery. В день обрабатываем около 100 Гб данных.
- Аналитические админки, которые строят агрегаты поверх данных из Bigquery и позволяют представлять их в разных разрезах.
- Внутренняя система управления проектами. Работает поверх джиры, помогает вести спринты и строить отчеты, делает опросы сотрудников через слек.
Необходимые навыки бэкенда:
- Опыт веб-разработки от 2 лет, умение решать типовые задачи: закешировать долгий запрос в БД, добавить индекс для быстроты сортировки, сделать обращение к внешнему API асинхронной задачей и тд. Подавляющее большинство сервисов пишем на джанго.
- postgres: индексы простые и сложные, HStorefield и JSONField, что можно с ними делать и чего нельзя. Навыки поиска и устранения ботлнеков.
- docker и docker-compose: базовое понимание и опыт работы
- Опыт мониторинга своей инфраструктуры (нам нужны не просто админки и апишки, нам нужна уверенность, что они работают, и понимание нагрузки, которую они держат)
Необходимые навыки фронтенда:
- тут кратко. Jquery, React, Mobx. Все интерфейсы мы пишем для себя, поэтому пиксел-перфект верстка не обязательна. Важно, чтобы работало.
Теперь - неформальная часть. Она для тех, кто дочитал до Jquery и не закатил глаза.
- Больше всего мы ценим практичность и умение видеть картинку целиком. Не написание крутых абстракций и метаклассов; не секси верстку на модных JS-фреймворках; а создание продуктов, которые помогают бизнесу. Если реакт решает задачу - берем реакт. Если тот же jquery решает задачу - берем jquery. Если джанго-админка решает задачу - берем джанго-админку.
- Вам должно нравиться не просто писать код, а "владеть" продуктом, беспокоиться за него: следить за метриками, фиксить баги, затаскивать новые перспективные технологии. Вокруг вас будут такие же вовлеченные люди, болеющие своим делом. Перед каждым проектом мы собираем продуктовый созвон, на который приходят аналитики, продакты, разработчики. Мы рисуем юзер-стори, мокапы, схемы обмена данными; обсуждаем, как лучше сделать; и каждый вкидывает свои идеи. И потом мы периодически повторяем эти созвоны, чтобы убедиться, что наши сервисы работают как надо и что они приносят пользу.
- Мы не инвесторский стартап, который живет от раунда к раунду. Мы развиваемся на свои деньги, давно вышли в плюс и ни от кого не зависим. Мы маленькая, но стабильная и надежная компания.
- У нас отличные отношения в коллективе. Раз в пару месяцев мы делаем глобальный зум-звонок, где просто сидим и треплемся, а новички знакомятся с теми, с кем еще не пересекались по работе. Периодически встречаемся в офлайне, в Москве или Питере.
- У нас есть четкий рабочий процесс, еженедельные спринты, пятничные ретро, где мы проверяем, что каждый занимается своим делом и прогрессирует.
Мы будем рады найти единомышленника, который готов расти и развиваться вместе с нами. Нам 1.5 года; у нас уже есть несколько успешных проектов; за это время мы выросли с 3 до 20 человек - и не собираемся останавливаться :)