Вакансия: фронтендер в маркетинговое направление Т—Ж (закрыта)
Откликайтесь на другую вакансию!
Мы уже закрыли эту вакансию, но у нас есть ещё актуальные, которые тоже могут заинтересовать. Посмотрите!
Привет! Меня зовут Вова, я руковожу разработкой журнала. Ищу мидл-фронтендера, который знает React, поможет тестировать гипотезы на монетизацию и конверсии в ядро читателей, а на основе удачных тестов сделает большие проекты.
Т—Ж — главное русскоязычное издание про деньги. В июле наш сайт читали 16 миллионов человек. Наша миссия — сделать читателей образованными и смелыми в отношении всего, что касается денег. Для этого мы:
- наращиваем базы рассылок, чтобы пользователи не пропускали интересующие их материалы;
- подталкиваем делиться материалами, чтобы окружение читателя тоже становилось финансово грамотнее;
- разрабатываем мобильное приложение под iOS и Android;
- выпускаем платные и бесплатные образовательные курсы;
- ищем новые пути монетизации, чтобы были ресурсы на новые направления.
Сейчас этим занимаются только маркетологи, а продуктовые подкоманды берут задачи в работу по остаточному принципу. Чтобы работать над направлением системно, мы организуем новую продуктовую подкоманду с собственной разработкой. Туда и ищу фронта, а еще бэка и продакта.
Что по технологиям
У нас сложная схема рендеринга: запрос идет сначала на Python-движок, который пытается отрисовать страницу по Django-шаблонам, а за некоторыми элементами идет в SSR-прослойку на Node.JS. За этой прослойкой — монорепа на TypeScript, React, Redux и RxJS. В движке кроме шаблонов — свой старый фронт. В получившиеся страницы еще динамически подгружаются некоторые элементы и приложения интерактивов из отдельных JS-бандлов.
От всего этого мы избавляемся в пользу многих микрофронтов за нод-прослойками и фасада. Так, ленты на странице потоков уже рендерятся по новой схеме: поток инвестиций для примера.. Микрофронт там уже такой, каким он и должен быть: тоже на TypeScript, React и Redux — но без RxJS. Компоненты тянем из UI-kit’a, который подключается как npm-пакет. Фасадом пока тоже выступает движок, но в сентябре постараемся переключить это на отдельный более легковесный сервис.
Все это важно, потому что придется столкнуться и со старой архитектурой, и с новой, и с неким промежуточным этапом. А задачи потенциально затрагивают любое приложение и кит. Хоть самим перевозом на новые рельсы занимаются другие команды.
С инфраструктурой так: у нас настроены пайплайны на Gitlab CI, в которых запускается eslint, тесты на Jest, проект пакуется в Docker, статика раскладывается на CDN, а еще собирается отчет по lighthouse-метрикам прямо на ветку. У проектов настроены динамические окружения под фича-ветки, стейдж обновляется по коммиту в мастер, прод — по git-tag. Сам образ деплоится с помощью ArgoCD в Google Kubernetes Engine.
Фронтенды общаются с бэкендами по REST, используем спецификацию OpenAPI, везде, кроме пары сервисов, подрублен Swagger.
Как там в команде
Разработчики в журнале совмещают работу в продуктовой подкоманде и в технической команде.
В продуктовой команде на старте роль продакт-оунера возьмет на себя руководитель дистрибуции. Потом — подхватит выделенный продакт-менеджер. Продакт-оунер ранжирует задачи по важности и отвечает за их бизнесовую постановку. Разработчики декомпозируют это на технические задачи, придумывают и внедряют решение. Раз в неделю проводим совмещенное демо и планирование. По необходимости подключаем к работе команды тестировщиков, аналитиков и других специалистов.
В технической команде — кросс-ревью до двух лайков. Сами реквесты разбрасываем ботом между фронтендерами независимо от продуктовой команды. Раз в пару недель мы созваниваемся на час, чтобы обсудить фронтовые штуки: узнать, какие у кого новости в проектах, какие открытия, проговорить изменения в архитектуре, посоветоваться о решениях, предложить улучшения процессов или инструментов. Раз в день-два пишем стендапы, чтобы быть в контексте разных направлений и вовремя прийти на помощь. Всего в команде 15 фронтендеров/JS-фулстеков, 10 бэкендеров, 4 мобильщика — RN-фулстеки, 3 тестировщика, пара менеджеров и DevOps/SRE-инженер.
Еще раз в четыре недели будет один на один со мной, где обсуждаем накопившиеся организационные вопросы, пытаемся снять боли, если есть, и вот это вот все.
С чего начнем
Ближайшие задачи, которые предложу:
- Провести аудит реализованных маркетинговых механик. В движке есть уже реализованные механики — стоит посмотреть, сломаны они или работают, что имеет смысл вытащить в отдельный сервис персонализации и развивать, а что можно удалить из кодовой базы и не пытаться поддерживать дальше.
- Оживить сценарии показов баннеров. Оживить, потому что это скорее всего в каком-то виде уже реализовано в старом движке. Но сейчас этим не пользуются: баннеры ставят в материалы вручную, в подвале с рекомендациями в конце статьи он тоже всегда один и тот же. Это бесит пользователей, а мы недосчитываемся целевых действий.
- Улучшить почтовые коммуникации: сделать управление подписками на странице всех рассылок, улучшить синхронизацию пользователей журнала со служебными пользователями майндбокса, попробовать реализовать amp-механики вроде «сохранять статью в закладки не выходя из письма».
Важно, чтобы эти и последующие задачи не сказались драматично на производительности и быстродействии готовых сервисов.
Что ожидаю от кандидата
Из хардов будет сложно без:
- Знания основ JavaScript: функции, асинхронность, как код работает в браузере.
- Знания React: виртуальный DOM, хуки, компоненты.
- Знания, как взаимодействуют фронт и бэк: CORS, сокеты, REST.
- Навыка писать unit-тесты.
Еще может быть сложновато без опыта работы с TypeScript: весь код у нас покрыт типами и билдится в стрикт-моде.
Из софтов главное — самостоятельность. Чтобы получил от бизнеса задачу, уточнил непонятное, декомпозировал и расписал, обсудил с коллегами, если нужно, написал код, сдал в тестирование, выкатил на прод, пришел к бизнесу за следующей. Высший пилотаж, если по дороге ни с кем не поссорился, а в итоге еще что-тоотрефлексировал.
Вакансия для опытных специалистов
Если вы только что окончили «Эльбрус-буткемп», «Яндекс-практикум» или другую образовательную программу, предлагаю подать заявку на стажировку в Т-Банке.
Что предлагаю взамен
Можно рассчитывать на:
- На белую зарплату раз в месяц по договору. По возможности переведем в штат с соцпакетом.
- Гибкий график. Главное — побольше времени пересекаться с остальной командой.
- Удаленную работа. По желанию можно приезжать в наш офис в семи минутах от «Динамо» или в другие офисы Т-Банка.
- Модную лимитированную худи с логотипом Т—Ж с очередного тиража.
- Добровольное участие в материалах о сотрудниках журнала.
Как помогаем расти
При желании у нас можно научиться:
- Выращивать стажеров и делегировать им задачи. Несколько раз в год набираем студентов Физтеха, Вышки, Бауманки, МГУ и других вузов с неплохими техническими программами.
- Смежным с работой софт- и хард-скиллам. В Т-Банке развитая система внутренних тренингов — от безопасности веб-приложений до поиска баланса между работой и личной жизнью.
- Писать статьи на «Хабр» и «Медиум», выступать с докладами на митапах и конференциях. Наши редакторы, HR и DevRel помогут подобрать тему, собрать материал, подготовиться и опубликоваться или выступить.
- Другим навыкам, которых вам будет недоставать для работы. Есть возможность поучиться на курсах или послушать конференции за счет компании.
Как откликнуться
Чтобы обсудить вакансию, пишите мне в Телеграм. Буду рад, если начнете с короткого рассказа о себе. Хорошо, если поделитесь ссылкой на ваш GitHub или любые другие примеры вашего кода.