Stack технологий: TypeScript, ES6+, scss.
Используем нативный JS. Собственный движок активно развивали 5 лет (код выдержан в едином стиле и нормах, применены современные решения).
Команда разработки: 100% команды разработки работает удаленно.
6 frontend-разработчиков, 6 backend-разработчиков, 2 DevOps-инженера, 4 QA-инженера, 3 Android разработчика, 1 iOS-разработчик, 1 fullstack CTO, 1 Project Manager.
Планы по развитию frontend (приветствуем участие lead в подборе решений)
1. Построить новый фронт на MVVM архитектуре.
Пока склоняемся к решению построить фронт на базе веб-компонентов, с data binding и реактивностью. Уже есть прототип движка. Однако мы ещё окончательно не решили что будет в основе нового фронта.
К сожалению, готовые технологии (React, Vue, Angular) не отвечают нашим требованиям: у нас бэкенд написан на php, а для SEO крайне важен SSR, поэтому решения с js бэкендом нам не подходят.
2. Разработка PWA.
3. Оптимизация скорости загрузки фронта (speed index), а также производительности страницы и т.д.
Задачи в качестве lead
- Развитие процессов разработки совместно с devops, qa и т.д. (Очень актуально).
- Выбор технических решений и архитектуры кода.
- Декомпозиция и распределение задач.
- Управление командой, менторинг разработчиков.
- Участие в поиске решений дальнейшего технического развития frontend (конкретные планы см.в предыдущем разделе).
Т.е., в первую очередь, ваша цель - это успешная работа frontend команды: качество технических решений и их исполнения в оптимальные сроки. Более точный круг обязанностей вы сами определите.
Другие технические задачи
- Кроссбраузерная разработка различной функциональности для ПК и мобильных устройств на JS/TS, Sass.
- Разработка сборщика (npm, gulp, webpack и др).
- Багфиксинг (траблшутинг).
- Перепись, рефакторинг и улучшение текущей кодовой базы.
- Ревью, адаптация и реализация дизайна.
- Реализация новых крупных фич для пользователей (текстовый редактор wysiwyg, доработка конструктора постов и т.д.).
Другие орг. задачи
- Оценка трудозатратности задачи для расстановки приоритетов.
(Выделен 1 день в неделю. Уходит на этот вопрос до 2-х часов.)
- Парное code review.
(~15-20% рабочего времени в месяц.)
- Контроль команды, взаимодействие с другими группами разработки.
Основные пожелания к кандидату
- Продвинутые знания JavaScript, HTML и CSS (Senior. Предполагается личное участие в написании кода). Опыт от 5-и лет.
- Опыт работы с TypeScript, Scss/Less, git.
- Опыт управления командой frontend (от 3-х человек). Менторство (развитие tech skills) разработчиков уровня middle и выше.
- Опыт оптимизации процессов разработки или работы в команде с организованными процессами.
- Опыт проведения технических собеседований.
Заработная плата и график
- Пока ориентируемся на вилку 250-300 тыс.
- В процессе изучения рынка, поэтому если Ваши ожидания отличаются - рассматриваем в индивидуальном порядке.
- Удаленная работа без привязки к конкретному городу или стране.
- Основное рабочее время компании с 10 до 19 по МСК
- Возможность гибко распределить свое рабочее время по договоренности с руководителем и командой (переносить часы, определить индивидуальный график).
- Оплачиваемый отпуск и отсутствие по болезни.
Также
- Оплачиваем ПО для работы; курсы, конференции, проф.литературу и т.д. (вообще хорошо относимся к таким запросам, поддерживаем желание развиваться).
О разработке у нас
- Работа с git — feature branch workflow.
- Применяем conventional commits.
- Мы выбираем наиболее оптимальные по скорости и объёму кода решения, часто проверяем себя и других различными benchmark.
- Строго следим за безопасностью.
- Строго придерживаемся установленного в проекте стиля кода.
Как организован процесс
- Мы не работаем по Agile/Scrum. Рабочий процесс очень похож на Kanban: есть пул задач, который формирует проектный менеджер либо продуктовый менеджер. Задачи берутся из пула по приоритету важности, либо в свободном порядке.
- Для трекинга времени и управления пулом задач используем собственный удобный софт, который тесно интегрирован с Jira и Slack.
Нам важно удобство процессов, стараемся выбирать удобные инструменты или разрабатывать под себя.