Ждём в команду Лида для работы над платформой и другими проектами. Разработка ведётся для важных направлений платформы: CRM, HRM, order.
Мы ищем инженеров, которые готовы копать вглубь, давать конструктивную критику, предлагать свои идеи и отстаивать их, чтобы развивать и улучшать продукт.
КАК ВСЕ УСТРОЕНО:
Платформа— это конструктор бизнес процессов. Наша задача — сделать так, чтобы все происходило с минимальным взаимодействием с разработкой. Для этого мы разбили бизнес процессы по "доменам" — предметным областям к которым они относятся, сформировали в рамках каждого домена кроссфункциональную команду.
В рамках каждого домена есть 3 слоя:
- слой BPM — движок, в котором менеджеры могут накликать целевой процесс и задеплоить его в прод
- слой типовых решений — модель данных и архитектура домена
- слой сервисов — кубиков, из которых всё строится.
Для сервисов мы используем **Nest.js (Node.js + Typescript), часть на Go. Базы данных — PostgreSQL и BigQuery. Инфраструктура в облаках, несколько провайдеров. Kubernetes для оркестрации. Всё, кроме баз данных, в dockerd-контейнерах.
Для архитектуры используем Explicit, которую описываем через C4 model. Взаимодействие через GRPC, как синхронно, так и через service bus.
ЧЕМ ПРЕДСТОИТ ЗАНИМАТЬСЯ:
Строить один из доменов.
Домен HRM — предстоит сделать систему найма, адаптации и обучения исполнителей.
Домен Склад **— есть много логистических операций, физические производства, которые нужно автоматизировать
Мы ищем Лида, который займется:
- Реализацией бизнес-требований вместе с командой
- Проектированием технических решений сервисов вместе с архитектором
- Улучшением процессов Node.js разработки
- Написанием кода и решением сложных архитектурных задач
- По мере развития систем будет нанимать, развивать и мотивировать свою команду.
ЧЕГО МЫ ЖДЁМ ОТ ТЕБЯ:
- ты профессионально владеешь Node.js (event-loop, **stream) **и СУБД (PostgreSQL)
- ты умеешь создавать многопоточные приложения
- ты знаешь алгоритмы и структуры данных
- ты не боишься залезть в чужой код на другом языке и разобраться с тем, что там происходит
ЧТО МЫ МОЖЕМ ПРЕДЛОЖИТЬ:
Всем привет! Мы ищем опытных инженеров по тестированию производительности в ИТ команду СберМаркет. Если у тебя есть опыт проведения НТ на JMeter или Gatling — приходи развивать экспертизу этого направления в компании!
Релизы до нескольких раз в неделю, по мере готовности (у нас скрамбан). Мы в Облаках. За БД отвечают DevOps, кластеризуются, есть proxySQL. У направления есть лид, мы расширяем команду опытными инженерами.
Обязанности
Тинькофф-журнал — главное русскоязычное издание про деньги. В июле наш сайт читали 16 миллионов человек. Наша миссия — сделать читателей образованными и смелыми в отношении всего, что касается денег. Для этого мы:
Потенциально вам предстоит дорабатывать любой сервис журнала и разрабатывать с нуля новые. Два главных сервиса — движок журнала и соцплатформа — написаны на Django. Движок перезапускаем на FastAPI. Этот же фреймворк используем в остальных сервисах, на нем же пишем новые.
У нас настроены пайплайны на Gitlab CI, в которых запускаются MyPy, Flake, Black и тесты на PyTest. Сервисы на FastAPI в тех же пайплайнах собираются в Docker и деплоятся с помощью ArgoCD в Google Kubernetes Engine. Django-сервисы деплоим руками.
Базы — Redis и Postgres. Для сервисов на Django Postgres разворачиваем и поддерживаем сами. Под FastAPI развернут Google CloudSQL. Redis хостим сами, но ради эксперимента в паре мест тоже подключили облачный.
Клиенты общаются с сервисами по REST, используем спецификацию OpenAPI, в шаблоне типового проекта подрублен Swagger. Сервисы между собой местами общаются так же, но мы переводим это на асинхронную архитектуру. В качестве брокера используем Google Pub/Sub.
Разработчики в журнале совмещают работу в продуктовой подкоманде и в технической команде.
В продуктовой команде на старте роль продакт-оунера возьмет на себя руководитель дистрибуции. Потом — подхватит выделенный продакт-менеджер. Продакт-оунера ранжирует задачи по важности и отвечает за их бизнесовую постановку. Разработчики декомпозируют это на технические задачи, придумывают и внедряют решение. Раз в неделю проводим совмещенное демо и планирование. По необходимости подключаем к работе команды тестировщиков, аналитиков и других специалистов.
В технической команде — кросс-ревью до двух лайков. Сами реквесты равномерно разбрасываем между всеми бэкендерами независимо от продуктовой команды. Раз в пару недель мы созваниваемся на час, чтобы обсудить чисто бэкендерские штуки: большие изменения в архитектуре, какие у кого новости или открытия, как улучшить процессы или инструменты. Раз в день-два пишем стендапы, чтобы быть в контексте разных направлений и вовремя прийти на помощь. Всего в команде 10 бэкендеров, 15 фронтендеров/JS-фулстеков, 4 мобильщика — RN-фулстеки, 3 тестировщика, пара менеджеров и DevOps/SRE-инженер.
Еще раз в четыре недели будет один на один со мной, где обсуждаем накопившиеся организационные вопросы, пытаемся снять боли, если есть, и вот это вот все.
Ближайшие задачи, которые предложу:
Из хардов будет тяжеловато без: