O pozícii
Разработка и развитие iOS-клиента мессенджера на базе протокола Matrix и Element. Необходимо обеспечивать визуальное и поведенческое соответствие iOS-версии Android-клиенту.
Проект
Мессенджер на базе протокола Matrix, за основу взят Element. Первая итерация включает личные и групповые переписки, а также отдельные каналы; доставка обновлений реализована через событийную модель Element.
Что предстоит делать
- Разрабатывать и дорабатывать UI мессенджера на SwiftUI и UIKit.
- Работать с Matrix-событиями sync, timeline и room_tags.
- Обеспечивать E2EE, включая Megolm, key backup, восстановление ключей и device verification.
- Интегрироваться с matrix-ios-sdk через Obj-C API, отлавливать и исправлять краши на implicitly-unwrapped optionals.
- Настраивать Keychain, entitlements, app groups и пуш-расширения NSE.
- Дебажить анимации, кастомные жесты, spring-анимации, GeometryReader и PreferenceKey.
- Взаимодействовать с дизайнерами, аналитиками, QA и Android-командой для синхронизации поведения.
- Проводить code review, проектировать архитектуру, оптимизировать производительность и поддерживать релизы.
Требования
- Глубокое знание Swift и SwiftUI, включая GeometryReader, PreferenceKey, safeAreaInset, zIndex, hit-testing, drawingGroup, кастомные жесты и spring-анимации.
- Опыт работы с UIKit и интеропом: hosting controllers, координаторы легаси-навигации Element, UIKit-вьюхи внутри SwiftUI и SwiftUI внутри UIKit.
- Понимание Obj-C интеропа, включая matrix-ios-sdk, NSString-мосты и implicitly-unwrapped optionals.
- Опыт работы с Keychain, entitlements, app groups и NSE.
- Знание основ E2EE: Megolm, key backup, восстановление ключей и device verification.
Условия
- Full-time, удалённая работа по РФ.
- Сотрудничество по ИП или самозанятости.
- Оплата профессиональных курсов, скидки на обучение и корпоративная бонусная программа.
- Оплата почасовая.
Отклик
В сообщении необходимо сразу прислать резюме.
Отклик принимается в Telegram: @i_schanti.