Ищем разработчика в интересный проект по разработке мобильного приложения для бронирования ресторанов / баров / кафе / общественно-развлекательных мест.
Задача:
- Разработка нативного iOS приложения согласно макету (Figma).
- На базе готового бекэнда реализовать взаимодействие клиентского приложения (см. п.1) и административного (оно разрабатывается параллельно).
Требования:
- Фреймворк: UIKit
- Архитектура: MVVM + C или VIPER (Clean Architecture)
- Многопоточность: GCD и/или async/await
- Работы с макетами: Верстка из Фигмы
- UI: Вы будете работать на 90% с кастомными элементами UI, вам необходимо точно знать, что кастомится, а что нет, в необходимой для приложения степени. Если нет, создать собственную реализацию элемента. AutoLayout в UI.
- Сетевая часть: REST API, JSON, JWT токены, способность написать сетевой менеджер, способный обрабатывать несколько разных типов запросов, с разными типами данных в очереди. Например: проверить для первого запроса access токен, если он истек, остальные запросы ставить в очередь, пока не обновится access токен, после обновления продолжить работу с запросами из очереди уже с обновленным токеном. Эффективно обрабатывать ошибки.
- Паттерны: минимальный набор начиная с синглтона, чем большим их количеством вы владеете, тем лучше.
- Безопасность: работа с Keychain
- Логика приложения: способность найти решения нетривиальных задач
- Знание ООП и принципов SOLID
- Работа с Push уведомлениями
- Отличные знания жизненного цикла приложения и контроллеров в UIKit, включая глубокое понимание UIViewController и его жизненного цикла.
Приветствуется:
- Опыт работы с App Store, знание их политик и гайдлайнов, выкладкой приложений
- Знакомство и базовые навыки работы с реактивным программированием на базе Combine
- Написание unit и UI тестов
Условия:
- Проектная работа по договору;
- Участие в интересном проекте в профессиональной команде, где ваши идеи будут быстро находить реализацию;
- Frontend полностью на вас. В команде, помимо вас, будет опытный Backend разработчик, дизайнер и Project manager.
- Backend полностью готов. Если со стороны бэка будет чего-то не хватать, это добавляется / исправляется в оперативном порядке.
- Текстового ТЗ не будет. Зато будет понятный и наглядный Figma макет с прототипом. Но при этом нет строгой привязки к макету — если вы нашли ошибку в макете или считаете, что с точки зрения UX/UI что-то не так, мы с радостью это обсудим в нашем чате и оперативно внесем изменения в макет.
- По завершению работы над проектом у вас будет возможность продолжить работу в команде, осуществляя поддержку и внедрение новых фич.
Приоритет будет отдаваться кандидатам, которые подробно опишут свой опыт с примерами работ и ссылками на GitHub.