О проекте:
На сегодняшний день, наши продукты ежемесячно используют более 600 тысяч пользователей платформы iOS и их количество постоянно увеличивается. Учитывая другие платформы – это число достигает нескольких миллионов.
Вам предстоит принять участие в развитии продукта Kaspersky for iOS и его компонентов.
Kaspersky for iOS - флагманский продукт компании на платформе iOS.
Публичный релиз состоялся в середине 2017 года
Поддерживаемая версия iOS: 16+
Оценка в AppStore: 4,8
В августе 2019 года получил оценку ”Excellent" с 4.5 звёздами и попаданием в категорию "Editor’s Choice" по версии PC Mag.
Основной стек технологий и подходов:
- Язык разработки: Swift;
- Основные фреймворки: UIKit, Foundation, StoreKit, CoreData, NetworkExtenstion, SafariWebExtension;
- Многопоточность: NSOperation, GCD;
- Unit Testing: XCTest;
- UI Testing: Собственная библиотека для автоматического снятия скриншотов, необходимых как для лингвистического тестирования, так и публикации в AppStore;
- Контроль качества кода: Coding Style Guide, SwiftLint, CodeReview, собственные инструменты анализа;
- Code Review: TFS Pull Requests;
- СI&CD: TFS build & release pipelines, собственные системы сборки и тестирования уровня компании, TestFlight;
- Analytics: Firebase Analytics, AppsFlyer;
- Feature Toggling: Firebase Remote Config + собственные инструменты;
- A/B Testing: Firebase A/B Testing + собственные инструменты;
- Philosophy: RIB, чистая архитектура, SOLID, Monorepo, feature-toggling;
- Task Tracker: TFS;
В ваши задачи будет входить:
- Написание кода приложения, документации, и Unit-тестов к нему;
- Участие в проектировании архитектуры;
- Взаимодействие с аналитиками, дизайнерами, тестировщиками, техническими писателями, менеджерами и смежными командами;
Основные качества успешного кандидата:
- Опыт коммерческой разработки на языке Swift;
- Знания основных фреймворков iOS SDK (Foundation, UIKit);
- Знания в области проектировании архитектуры приложений;
- Уверенные навыки работы с многопоточностью;
- Понимание принципов построения пользовательского интерфейса в соответствии с Human Interface Guidelines;
- Понимание принципов работы App Extensions и их взаимодействия с iOS и Hosted App;
- Самоорганизованность, здоровая автономность в работе, умение разбираться в новом материале, работать с информацией, взаимодействовать с коллегами.