Описание вакансии
Команда HR Tech разрабатывает продукты и сервисы для решения ежедневных задач сотрудников Яндекса: внутреннюю соцсеть, календарь, профили сотрудников, карты и цифровые интерфейсы взаимодействия с офисом. Наша внутренняя экосистема помогает синхронизировать ценности компании и обмениваться опытом.
Некоторые сервисы мы создаем с нуля: выявляем потребности, общаемся с пользователями, проводим исследования. Делаем прототипы, пилоты, эксперименты. Придумываем архитектуру. Разрабатываем, тестируем, интегрируем. Технологии таких сервисов зачастую не менее сложны, чем внешних.
За последний год Яндекс вырос больше, чем на треть: его потребности повышаются, и мы расширяем команду. Ищем iOS-разработчика, который поможет нам создать крутое мобильное приложение для решения ежедневных задач сотрудников. Приложение будет включать:
- Пуш-уведомления о важных событиях, новостях, мероприятиях и днях рождения коллег
- Календарь, который поможет организовать встречу и напомнит о важных событиях
- Поиск сотрудников, чтобы связаться с коллегой или найти его рабочее место
- Видеотрансляции для участия во встречах и на мероприятиях с мобильного устройства
- Карты, чтобы проложить маршрут по офису, найти ближайший принтер, забронировать рабочий стол на день
- Внутренняя соцсеть позволит почитать корпоративный блог, разместить свою запись о продукте или технологии, участвовать в обсуждениях
Наши вызовы:
- Построить практически с нуля приложение для десятков тысяч сотрудников Яндекса
- Придумать и реализовать архитектуру платформы для подключения и интеграции веб-компонентов разных внутренних сервисов
- Разработать виджеты для быстрого доступа к информации (баланс обеденной карты, какие документы ожидают подписи, сколько дней до зарплаты и т. д.)
- Участвовать в построении культуры мобильной разработки для сервисов интранета
Какие задачи вас ждут:
- Активно участвовать в проработке сценариев в приложении с учётом мнения каждого члена команды
- Разрабатывать на Swift ключевые компоненты платформы и нативные экраны
- Проектировать архитектуру и взаимодействовать с веб-компонентами
- Улучшать UI и пользовательский опыт
- «Заворачивать» фичи под флаги, проводить эксперименты, анализировать их метрики
- Работать над системой уведомлений
- Покрывать код UI- и юнит-тестами
- Настраивать CI/CD, автоматизировать процесс релизов
- Оптимизировать производительность и повышать уровень стабильности работы в различных окружениях
- Взаимодействовать со смежниками: каждая новая фича — это результат совместной работы команд разработчиков продукта и инфраструктуры, QA-инженеров, менеджеров, аналитиков
Мы ждём, что вы:
- Умеете решать задачи на знание классические алгоритмов и структуры данных (easy/medium), оценивать сложность полученных алгоритмов Big O
- Занимались коммерческой разработкой на iOS больше двух лет
- Уверенно «говорите» на Swift, глубоко знаете iOS SDK
- Хорошо владеете CocoaPods, Swift Package Manager, fastlane
- Понимаете современные принципы построения архитектуры мобильных приложений MVVM, UDF и т. д.
- Внедряете зависимости Dependency Injection при написании кода
- Работали с многопоточностью (GCD, async/await, actors)
- Писали UI- и юнит-тесты
Будет плюсом, если вы:
- Имели дело с Combine/RxSwift
- Работали cо SwiftUI
- Умеете профилировать и оптимизировать приложения
- Понимаете, как работают WebView и веб-приложения
- Разрабатывали библиотеки
- Разрабатывали приложения для веба и Android
- Знаете на базовом уровне Kotlin, Java, JavaScript, TypeScript
- Настраивали CI/CD
Что мы предлагаем:
- Работу в сильной амбициозной команде с PM, QA, бэкенд-, фронтенд- и мобильными разработчиками
- Код без legacy, строим приложение с нуля
- Возможность решать задачи разного типа: CI/CD, построение нативных интерфейсов на последних разработках Apple, работа с веб-сервисами, взаимодействие с устройствами, эксперименты с BDUI