Лайв Тайпинг ищет iOS-разработчика/разработчицу

Привет! Этот текст не просто вакансия, а рассказ о жизни нашего iOS-отдела: о наших проектах, о технологиях, которые мы используем и о том, как мы строим работу. Хочешь присоединиться? Наши контакты ждут тебя внизу страницы!

Лайв Тайпинг ищет iOS-разработчика/разработчицу, вакансия в Омске

Команда

Мы занимаемся iOS-разработкой больше 8 лет. Мы знаем, как доводить приложения до людей и поддерживать положительные отзывы в сторах. Аудитория наших решений — от 10К пользователей. 

С нами у тебя не возникнет вопросов, с чего начать сложный модуль, как исправить баг со сложной версткой или лагами загрузки данных — большинство проблем уже были решены нами, и мы всегда подскажем тебе элегантное решение.

За последние годы мы построили систему развивающих митингов и процесс код-ревью. C каждым обновлением Swift или iOS SDK вместе обсуждаем, как доработаем код-стайл на наших проектах, и сообща ревьюим новые процессы прежде, чем их запускать — так было с код-ревью и нашим git-flow. У нас налажено сотрудничество с другими отделами, поэтому у тебя будет возможность влиять на проекты начиная с этапа проектирования.

Что мы делаем для развития команды

Мы не только пишем код — каждую неделю в рабочее время мы проводим две встречи отдела:

по средам просматриваем интересные статьи об iOS-разработке и разбираем прочитанные главы из книг. Среди книг, которые мы читаем и котируем — Expert Swift” от raywenderlich team, «Чистая архитектура» Роберта Мартина, «Погружение в паттерны» Александра Швец и «Objective-C 2.0» Мэтта Гэлловея.

по пятницам практикуемся в разработке — собираемся и кодим всей командой. В нашем стеке все современные возможности Swift, в том числе SwiftUI.

А еще мы вместе смотрим WWDC и следующие несколько недель разбираем материалы с неё.

Наш стек

У нас есть свой наработанный стек:

1. VIPER для объемных модулей с фичами и юнитами для тестирования бизнес-логики. Мы видим в вайпере надежный инструмент с тонкими интерфейсами и хорошей расширяемостью.

2. MVP/MVC для статичных экранов и диалоговых окон, собранных с помощью нашего router’a из вайпера, в которых не нужно плодить кучу классов и логики.

3. Слой работы с моделями приложения из инжектируемых сервисов, занимающихся каждый своим направлением, например, продуктами или сообщениями.

4. Слои работы с базой данных — Realm с оберткой на Rx для наблюдения за данными, реже CoreData.

5. Самописный слой работы с интернетом с плагинами конфигураций для настройки работы с API любого вида.

6. Множество расширений и наследуемых классов для того, чтобы писать код небольшими и удобочитаемыми файлами, используя декларативный подход.

Мы изучили RxSwift и работаем с ним не только на уровне верстки и таблиц, но и обработки данных с сервера и записи/наблюдения над БД. При этом никто не запретит тебе не использовать Rx совсем: всё обсуждаемо. Для нас RxSwift это не золотой молоток — стек технологий на проекте мы определяем исходя из его специфики.

У нас есть линтер кода, есть процесс код-ревью, код в большинстве современных проектов чистый. В некоторых проектах есть разделение приложений на фреймворки для увеличения скорости сборки билда, а также для переиспользования SDK приложения в iPadOS: мы планируем внедрить это повсеместно.

На наших проектах настроен CI/CD — система соберет билд и отправит сборку тестировщикам.

Какими технологиями мы пользуемся:

1. Язык программирования — Swift.

2. Архитектуры — VIPER, MVP, MVC. Мы придерживаемся гибридного подхода: не используем громоздкие решения на простых экранах.

3. Базы данных — Realm или CoreData.

4. Общие принципы — декларативное программирование, однонаправленные или двунаправленные архитектуры на Input/Output интерфейсах или кложурах, реактивное программирование, сервисный слой, инверсия зависимостей, внедрение зависимостей.

5. Работа с сетью — собственный движок конфигураций к сети из плагинов на Moya и Alamofire с возможностью подключения/отключения RxSwift.

6. Вёрстка — SnapKit для простой верстки и фреймы для высоконагруженных вьюшек.

7. Система контроля версий — git.

8. Работа с ресурсами — R.swift.

9. Код-стайл — Swiftlint.

10. Код ревью — на каждом проекте.

11. CI/CD — Bitrise c возможностью Enterprise/Testflight загрузки сборок.

Наши проекты

У нас ты будешь работать со структурированными проектами с множеством модулей, разделенных на небольшие классы, с фреймворками с вынесенной работой с API и базой данных, чатами на сокетах, сложной версткой с прокруткой, кодогенерацией, NFC-метками, блютуз маячками, пушами, диплинками, картами с геоточками и кластеризацией, встроенными покупками, подписками, рекламой, обновлениями в бэкграунде и многим другим. 

Мы не занимаемся только e-commerce приложениями, в которых сделан упор на продажу товаров: в нашем портфолио приложения для крупного бизнеса, не связанные с розничными продажами, и стартапы с довольными клиентами и пользователями.

Тебе интересно написать свою систему чатов с плавной версткой на сокетах? Электронные замки, отпираемые NFC метками? Или, может, запилить систему лояльности для стартапа? А что насчёт приложения, взаимодействующего с железом, установленным в автомобиле? Или может, тебе интересно написать e-commerce с нуля так, чтобы всё работало, как часы, и легко масштабировалось? Всё это ждёт тебя у нас, и проекты будут меняться: главная прелесть работы в аутсорсе — это разнообразие!

Что тебе нужно будет делать

— влиять на процесс разработки, бизнес-логику и требования: мы решаем важные вопросы проекта всей командой, и разработчики активно в этом участвуют;

— вместе с дизайнерами оптимизировать UX приложений;

— писать качественный, декларативный и хорошо читаемый код;

— оценивать сроки выполнения задач;

— давать экспертную оценку и технические консультации отделам маркетинга и продажам;

— в ближайшие месяцы — изучать наш стек, участвовать в митингах iOS-отдела.

Чего мы ожидаем от тебя:

— опыт мобильной разработки под iOS от 1 года (если ты занимался не коммерческой разработкой, а делал свой pet project — это подойдет);

— программируешь на Swift;

— понимаешь архитектуры, отличные от MVC;

— опыт работы с базами данных;

— умеешь создавать сертификаты provisioning profile в apple.developer.center;

— уверенно работаешь с git;

— пишешь чистый и хорошо читаемый код;

— хочешь изучать и пробовать новое в работе;

Будет плюсом, если у тебя есть:

— теоретические знания в Code Science;

— теоретические знания о паттернах iOS-разработки;

— опыт работы с Xcode Instruments (профилировщик, поиск утечек памяти);

— знание Objective-C.

Что мы предлагаем:

— белую зарплату от 100 до 150 тысяч рублей в зависимости от твоего опыта и навыков; 

— участие в регулярных развивающих митингах команды iOS-отдела;

— руководителей проектов, которые заботятся о том, чтобы разработчик фокусировался на написании кода: ставят понятные задачи с полным контекстом, берут на себя коммуникацию с клиентом и добиваются всего, что нужно, чтобы твоя работа была «бесшовной»;

— компенсацию 50% расходов на профессиональные обучения и курсы, занятия спортом и английским языком, медицинские расходы;

— не работаем под трекер: не признаем скриншотов рабочего стола, отслеживаний движений мыши и количества набитых на клавиатуре символов;

— гибкий график и возможность работать из дома: офис открыт с 09:30 утра и до позднего вечера, работай где и когда тебе удобно;

— отдых по федеральным праздникам, больничные по закону, если болеешь не сильно — можно поработать пару дней из дома без больничного;

— процесс performance review — ты регулярно будешь получать фидбек от тиммейтов и узнавать о своих зонах развития;

— магию дружбы «Лайв Тайпинга»: мы вместе ходим в походы, в кино, на пляж, играем в волейбол и футбол, каждую пятницу тусим в офисе или в барах на Ленина (пруфы — в нашем паблике и инстаграмах нашей команды :D);

— уютный офис в историческом центре Омска (с нас экскурсия после интервью :3);

— многоуровневый юмор, перезапускающий мыслительный процесс;

— внутренние мероприятия с мастер-классами и докладами;

— доступ к библиотеке профессиональной и бизнес-литературы. Если тебе будет нужна профильная книга — мы купим её для тебя;

— психоактивный рекреационный чай от HR и зубодробительный конкурсный кофе :)

Хочешь к нам? Присылай резюме и пример кода на rabota@livetyping.com или пиши Кристине в ТГ @ChristinaIT

👉Откликнуться на вакансию на hh.ru

Как правильно уволиться с работы

HR-менеджер компании Лайв Тайпинг рассказывает о том, как уволиться с работы так, чтобы оставить после себя только приятные впечатления. Разрушаем негативный ореол вокруг этой процедуры...

Что нужно знать и уметь, чтобы работать iOS-разработчиком

Необходимый минимум знаний, которыми должен владеть начинающий iOS-разработчик

Как успешно пройти собеседование на работу

HR-менеджер компании Лайв Тайпинг рассказывает, каким должно быть здоровое собеседование в серьёзной компании, и даёт советы кандидатам на рабочие места, к чему им готовиться