Разработчик на Flutter в Доставку
Команда мобильной разработки развивает продукты для пользователей Яндекс Доставки и курьеров, которые выполняют заказы Доставки, а также автоматизирует бизнес-процессы.
Разработку мы ведём в виде набора SDK и модулей, которые встраиваются в супераппы Яндекса. Это прежде всего Go (приложение для пользователей) и Про (для исполнителей). Также на основе модулей делаются новые проекты: международные запуски, автоматизация управления складами и другие.
Мы пробуем новые технологии и подходы. У нас есть задачи, где мы применяем SwiftUI и Jetpack Compose (iOS и Android соответственно), есть проекты на Flutter, а для приёма платежей используем SoftPOS.
Наше понимание архитектуры не ограничивается словами MVC, MVP, MVVM, VIPER, RIBs и т. п. Гораздо более важно умение применять композицию и поддерживать dependency inversion, увидеть необходимость в facade и применить его. Мы очень ценим знание принципов объектно-ориентированного анализа и дизайна и владение ими, сами постоянно стремимся улучшать навыки в этом направлении.
Практически все задачи, которые мы делаем, подразумевают доработки в протоколе бэкенда, которые мы тесно обсуждаем с коллегами. Мы часто участвуем в изменении и проработке методов API. Кроме того, многие проекты у нас кросс-командные: мы тесно взаимодействуем с командами Go, Про, Маркета, Еды, Лавки.
Команда разработки ещё совсем молодая и активно расширяется: только за последний год мы выросли больше чем в два раза. Нам ещё многое предстоит придумать и сделать.
Что нужно делать:
- азрабатывать SDK сервиса и интегрировать его в различные приложения, в первую очередь в Яндекс Про;
- участвовать в проектировании взаимодействия клиентского приложения и сервера;
- решать проблемы, касающиеся разнообразных сценариев и не только;
- писать код для Яндекс Про и не только.
Мы ждем, что вы:
- разрабатывали приложения на Flutter или хотите этому научиться;
- занимались коммерческой мобильной разработкой для iOS или Android либо фронтенд-разработкой;
- применяли шаблоны Provider/Riverpod, BLoC, Redux или MobX для управления состоянием;
- имеете опыт параллельного или многопоточного программирования, понимаете, как устроены Dart Event Loop и Isolates;
- хорошо понимаете реактивную парадигму и отлаживали такой код;
- знаете классические алгоритмы и структуры данных.