Connect with us

Разработка

Мобильная разработка в “Билайн”: архитектура, инструменты и цели

Софт поглощает мир. «Билайн» из оператора сотовой связи превращается в технологическую компанию, оперирующую большими данными и кодом, и открывает собственный отдел разработки мобильных приложений. Новый отдел не просто будет заниматься разработкой приложений, но и наращивать технологические компетенции компании и предоставлять экспертизу партнерам, базирующимся на технологиях «Билайн».

Beeline

Опубликовано

/

     
     

Разработка изнутри

Да, собственная разработка часто сложнее, однако в современных условиях компаниям, наращивающих свои программные компетенции опираться на аутсорсеров невозможно. Технологии развиваются настолько стремительно, что необходимо “понимать” и “применять” их внутри, минуя дополнительное звено, каким бы хорошим и качественным оно ни было.

Что касается экономической эффективности, то собственная команда это не просто накопление опыта, но и улучшение качества продуктов, аналитики, сокращение экономических затрат в перспективе.

И так, в “Билайн” создаются собственные объединенные команды — управления разработкой приложений, iOS, Android, Backend, QA — и мы активно набираем работников во все департаменты.

На начальном этапе, пока процессы в команде формируются, фактически каждый сможет поучаствовать в этом со-творчестве, сможет внести вклад в то, как будет выглядеть ее/его работа и компания в будущем. В самое ближайшее время мы опубликуем список вакансий и организуем митап в нашем офисе — у нас есть и будет много всего интересного!

Стек

Команда разработчиков будет осуществлять полный цикл работ, включая проектирование, написание кода,  развитие бэкенд-систем, тестирования, а во внутренней инфраструктуре компании можно будет опираться на уже полученные результаты с ИИ и работать с Big data.

Технологии мы выбирали сами, этот стек был принят в ходе дискуссии ведущих разработчиков:

  • Архитектура: Uber RIB
  • iOS: Swift 4 и Objective-C, RxSwift, Alamofire
  • Android: Kotlin и Java, Retrofit 2, RxJava2 + RxAndroid, JodaTime, Moxy, Dagger2
  • Python для бэкенда
  • Appium, TestFairy, Crashlytics, Postman, LoadRunner, Jira + Confluence, TestLink для аналитики, тестирования и управления проектами

RIB: кроссплатформенная архитектура, придуманная и используемая в компании Uber. Причин ее выбора несколько.

  1. Унифицированная архитектура для обеих платформ (iOS и Android), которая позволяет командам обоих направлений работать в единой среде, оперируя одними и теми же архитектурными компонентами.
  2. RIB позволяет вести работу независимыми командами над одним проектом, не создавая помех друг другу (для Uber, например, это сотни инженеров, работающих одновременно над одним проектом). На данный момент наше приложение состоит из трех независимых модулей, разделенными по типам абонентов, работа над которыми ведется совершенно разными командами.
  3. В отличие от привычных для мобильного разработчика архитектур, вся структура приложения представляет из себя дерево состояний, которое выстраивается исходя из бизнес-логики, а view-слой следует за ней.

Больше о RIB-архитектуре вы можете прочитать тут: https://github.com/uber/RIBs

Документация: https://github.com/uber/RIBs/wiki

Туториалы: https://github.com/uber/RIBs/wiki

Swift: мы не видим смысла начинать новые и долгоживущие проекты на Objective-C.  Swift активно развивается, еще более активно поддерживается и продвигается самой Apple, код получается нагляднее, лаконичнее и безопаснее. Также, в последнее время, становится легче найти iOS-разработчика, пишущего на Swift, чем на Objective-C и в ближайшее время этот разрыв будет увеличиваться. Хотя, мы считаем, что в данный момент времени знание Objective-C — необходимость для хорошего iOS-разработчика.

Разделение и взаимосвязь Kotlin и Java обоснованы такими же причинами.

Текущее приложение, в большей его части, написано на Objective-C и Java и нам важно понимать устройство проекта, обращаться к нему, чтобы увидеть “подводные камни” — мы стараемся как раз быть носителями экспертизы в каждом из языков для обеих платформ.

Реактивное программирование: для реализации некоторых составных частей архитектуры намного более удобно использовать именно такой подход. Это решение позволяет нам осуществлять разработку проекта с большей эффективностью и пластичностью.

Для чего это все

В первую очередь команда мобильной разработки занимается перезапуском мобильного приложения “Мой Билайн” — у него уже более 4 миллионов пользователей и настала пора изменений.

Основной сложностью в работе с текущим приложением стал тот факт, что у него практически нет поддерживающей backend-системы — вся логика работает на клиенте, что за годы развития сделало приложение абсолютно не поддерживаемым и не способным к фундаментальным обновлениям. Поэтому приложение ждет архитектурный и стековый апдейт, после чего команда перейдет к работе над новыми возможностями для юзеров.

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

Присоединяйтесь!

 

Комментарии
Если вы нашли опечатку - выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать info@apptractor.ru.
Advertisement
Click to comment

You must be logged in to post a comment Login

Leave a Reply

Новости

Интересные материалы: 20.09

Наш дайджест полон разочарования, конечных автоматов и программистского дзена.

AppTractor

Опубликовано

/

Автор:

Весь день мы собираем лучшие материалы о разработке и маркетинге технологий, стартапов, мобильных приложений и игр для iOS и Android из самых разных источников:

Комментарии
Продолжить чтение

Кроссплатформенная разработка

Google выпустил последнюю превью-версию Flutter

На Google Developer Days China была объявлена финальная девелоперская версия Flutter.

AppTractor

Опубликовано

/

Автор:

Судя по всему, Flutter Release Preview 2  – последняя версия перед выпуском стабильной версии Flutter 1.0, которая должна выйти в этом году.

Это уже шестая итерация почти за полтора года – первый анонс Flutter состоялся на Google I/O в мае 2017 года, а первая бета вышла в феврале.

В Flutter Release Preview 2 – поддержка фонового выполнения задач, уменьшение размера приложений до 30%, «pixel-perfect» приложения для iOS и расширенная поддержка этой системы.

Как говорит Google, на Flutter уже есть приложения Alibaba (Android, iOS), Tencent Now (Android, iOS) и Google Ads (Android, iOS).

 

 

Комментарии
Продолжить чтение

Новости

Интересные материалы: 19.09

У нас сегодня инструменты, уроки, курсы и исследования.

AppTractor

Опубликовано

/

Автор:

Весь день мы собираем лучшие материалы о разработке и маркетинге технологий, стартапов, мобильных приложений и игр для iOS и Android из самых разных источников:

Комментарии
Продолжить чтение

Исследования

Новый отчет Developer Economics «Состояние нации разработчиков»

Компания SlashData опубликовала новый отчет из серии Developer Economics «Состояние нации разработчиков» за второй квартал 2018 года.

AppTractor

Опубликовано

/

Автор:

Это обобщенные данные опроса, который проходил весной, и на который ответило более 20,000 человек.

Ключевые выводы:

  • Data science и машинное обучение станут наиболее востребованными навыками в следующем году – 45% разработчиков хотят получить опыт в этих областях.
  • 33% разработчиков хотят изучать UI-дизайн, 25% – облачную разработку. Интерес к изучению других языков программирования меньше. Похоже, что разработчики хотят дополнять свои навыки, а не улучшать.
  • DevOps все более распространен – каждый восьмой в опросе работал над проектами из этой сферы.
  • У 40% есть интерес к роботам, но только 9% разработчиков работает над реальными проектами.
  • JavaScript остается самым популярным языком программирования:

  • Разработчики игр стали зарабатывать больше. Если в первой половине 2017 года только 29% опрошенных получали более 100 долларов в месяц от своих игр, то сейчас таких 48%.
  • Игровая разработка смещается в веб – в 2017 году 38% разработчиков игр работали для веба, а сейчас их 43%, в то время как доля смартфонов, планшетов и десктопов снизилась.

Весь отчет вы можете скачать по ссылке: http://sdata.me/DE2Q18DD.

Комментарии
Продолжить чтение

Реклама

Наша рассылка

Нажимая на кнопку "Подписаться" вы даете согласие на обработку персональных данных.

Вакансии

Популярное

X
X

Спасибо!

Теперь редакторы в курсе.