«Одна версия кода, один бэкенд, 600 приложений» Материал редакции

Белорусская Onde разработала SaaS-решение, которое позволило локальным сервисам такси отобрать долю рынка у Uber и других. Основатели стартапа рассказали изданию dev.by историю Onde и почему в Африке и Азии перспектив больше, чем в Европе.

В закладки
Аудио

Onde — это SaaS-решение, которое включает в себя мобильное приложение на Android и iOS, диспетчерскую панель и облачное хранилище данных. Клиенты компании получают приложение под своим брендом, круглосуточную поддержку, обновление и маркетинг. Регистрация на платформе происходит по телефону или SMS-коду. Система поддерживает более 50 языков.

Главным архитектурным решением, позволившим стартапу взлететь, в Onde считают доведённый до максимума процент переиспользования кода. В ближайших планах — полностью перевести систему на Kotlin и произвести реворк архитектуры сервера.

Уволился в среду, а в четверг начал стартап

«История Onde началась в июле 2011 года, — рассказывает технический директор компании Игорь Зубчёнок. — На тот момент я работал в аутсорсинговой компании и писал программы под Windows Mobile. Но интерес к телефонам на этой системе уже затухал, несмотря на весь пиар, и клиент в итоге закрыл проект.

В компании возник вопрос, что со мной делать дальше. Клиент много платил за мою работу, и я получал очень хорошую зарплату. Я был готов остаться работать только на прежних финансовых условиях, но компания уже не могла себе этого позволить. Для меня это был хороший повод, чтобы рискнуть всё бросить и начать свой стартап.

Вот так 7 июня 2011 года я проснулся безработным и решил взяться за разработку мобильного приложения для вызова такси. Уже через неделю появился какой-то прототип приложения. Помню, мы с женой Аней бегали вокруг дома, тестировали его. В Google Maps тогда ещё не было шеринга локейшенов.

Над приложением я поработал около трёх месяцев, привлёк к проекту друзей. Но понял, что в таком составе не хватает экспертизы. Ближе к зиме у меня появился партнёр Илья Атрашкевич. У него был опыт в области GPS-мониторинга. Параллельно Илья начал заниматься командой. Именно он переманил из Дании Женю (Евгений Сусло, гендиректор Onde — прим. dev.by)».

«На тот момент я жил в Скандинавии уже около шести лет, — вспоминает Евгений Сусло. — Успел закончить университет в Швеции (Lunds University, MSc in Computer Science and Efficient Algorithms) по специальности разработка эффективных алгоритмов, работал в Дании системным аналитиком в крупной компании Maersk. Но интереснее было заниматься разными проектами.

Например, одним из проектов после моего ухода с основной работы был сервис Noromance — аналог Tinder до его появления. Правда, проект так и не развился. Мой партнёр переехал в другой город, а с разработчиками на удалёнке было сложно взаимодействовать. Пришлось опять пойти на работу, что меня не радовало.

В какой-то момент со мной связался Илья. Я c удовольствием подключился, мы встретились с командой на конференции в Амстердаме, обкатали идею, получили фидбек. Я оставил работу в Дании и вернулся в Белоруссию. Думал, что ненадолго, на год. Тогда у нас не было долгосрочного планирования. Никто не знал, во что превратится проект».

«Белорусские службы такси убеждали нас, что люди привыкли звонить»

Ещё до появления первых клиентов у команды было понимание, что надо делать глобальный продукт и не фокусироваться на местном рынке. Но встал вопрос финансирования: для запуска своего сервиса в каждой конкретной локации требовались внушительные инвестиции.

«С деньгами инвесторов проект мог развиваться иначе. Но я считал, что привлекать инвесторов имело смысл при наличии команды в каждом конкретном регионе запуска. В итоге решили, что сфокусируемся на разработке технологии, а заказчики, используя наш софт, будут сами запускать сервисы-аналоги Uber на своих рынках», — поясняет Игорь Зубчёнок.

Публичная версия Android-приложения для водителя и пассажира появилась в январе 2013 года. Сначала компания называлась TaxiStartup. Первым клиентом белорусских разработчиков стало «Cowboy Taxi» из Канады «с небольшим автомобильным парком и сайтом "привет из 90-х"».

«Изначально было две модели подписки, — вспоминает Евгений Сусло. —Дешёвая стоила $99 в месяц плюс $5-20 за водителя. Компании работали не на брендированных, а на наших дефолтных приложениях. Дорогая подписка уже на брендированные приложения под каждого клиента стоила $300 в месяц плюс $5-20 за каждого водителя. Но в итоге мы отказались от такой модели монетизации».

Клиенты, которые заказывали брендированные приложения, платили за один-два месяца и уходили, инвестиции не окупались.

Евгений Сусло
гендиректор Onde

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

Функционал приложения был ограничен. В первой версии не было даже расчёта стоимости поездки: водитель ехал по своему таксометру. Эту фичу разработчики добавили в первую очередь. Дальше важно было обеспечить пассажирам возможность связи с водителем по SMS и телефону.

За 2013 год у компании появилось пять клиентов, в том числе один из Белоруссии. Но при этом было много лидов. Других похожих сервисов на рынке фактически не было. Сайт компании был на первых строчках в Google по запросам типа «Apps Like Uber».

«База лидов росла в основном за счёт такси-компаний, и они были готовы платить за сервис. Правда, не везде. Изначально мы позиционировали продукт на существующие такси-компании и хотели оптимизировать их работу в Белоруссии.

Но службы такси не понимали, зачем им что-то менять. Нас убеждали, что приложение не будет популярным, так как люди привыкли звонить. Они поняли, как ошибались, уже через три-четыре года, когда Uber начал отбирать у них бизнес», — вспоминает гендиректор Onde.

Как это сделано. «Новая фича разрабатывается на трёх платформах и в три раза быстрее»

«Все понимали, что рынки разные, и каждый сервис захочет свой набор фичей. Это значит, что для каждой компании надо создавать отдельное приложение, и встал вопрос реализации», — отмечает Евгений Сусло.

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

«Писать поменьше кода и побольше его использовать — самое главное архитектурное решение, — уверен lead backend developer Артём Шабан. — У Оnde есть большая кодовая база, которая используется одновременно для клиентов и в бэкенде».

«Мы не делаем копии системы под каждого отдельного клиента, а создаём одну для всех и продаем как уникальный White Label (брендированный) продукт по подписке. Дальше мы развиваем не десять разных продуктов, а один, поэтому расходы сокращаются в разы, а клиенты всегда получают приложения и систему последних версий», — отмечает Артём Шабан.

Новая фича разрабатывается сразу на трёх платформах (Android, iOS, Web) и в три раза быстрее. Есть общий модуль, написанный на Java, и UI-часть для iOS, Web и Android, то есть они просто транслируют общий код. Такой подход имеет огромные плюсы, констатирует Артём. Приложения получаются нативные, работают как написанные на одном языке, «а кода нужно писать вдвое меньше и багов в разы меньше».

Недавно компания внедрила брокер сообщений Apache Pulsar. Это позволило в полной мере реализовать архитектурный подход.

«Для обеспечения пересылки координат водителей и пассажиров необходима связь в реальном времени и без задержек между сотнями тысяч клиентов и водителей. С технической стороны для нашего случая это более грамотное решение, чем Kafka (сейчас считается эталоном), так как позволяет создавать сотни тысяч топиков», — поясняет Игорь Зубчёнок.

Один Java модуль используется как бекенде, так и на всех клиентах, включая не только Android, но также и iOS и Web.

«Модуль содержит общие реализации протокола и другой логики. Также есть отдельные Java модули для клиента, водителя, оператора, которые транслируются и используются в iOS, Android и Web. Они содержат всю логику приложений, представляя общую кодовую базу для нативных приложений. Всё, что можно написать на Java, — написано на Java. В нативных приложениях реализован лишь тонкий слой UI и обертки вокруг нативных сервисов», — продолжает он.

«Новые фичи все клиенты получают автоматически, даже если за разработку заплатил кто-то один»

В App Store и Google Play сейчас доступно более 600 активных приложений (разработанных Onde) для водителей и пассажиров на Android и iOS платформах. Все приложения обновляются автоматически в режиме реального времени.

«Мы целенаправленно сделали ставку на автоматический апдейт. Если приложения не обновляются полгода, то умирают. На этом, кстати, сломались некоторые конкуренты», — отмечает Евгений Сусло.

Новые фичи все клиенты получают автоматически, даже если за разработку заплатил кто-то один под свои потребности. Таким образом, например, для всех клиентов появилась возможность предзаказа и оплаты за проезд кредитными картами.

Кроме мобильных приложений у платформы Onde есть диспетчерская онлайн-система для Web. Она позволяет диспетчеру создавать и отслеживать заказы, мониторить зоны повышенного спроса, движение водителя и пассажира. Своим сервисом компании могут управлять в админке.

Монетизация

Onde экспериментировала с разными бизнес-моделями, в итоге остановилась на Revenue Share. Ежемесячно заказчики платят 2-4% от оборота. Также компания ввела единоразовый платеж за разработку приложения: $7,5 тысяч, $15 тысяч и $45 тысяч в зависимости от тарифного плана, в которые включены маркетинговые пакеты.

«Самый дешёвый тарифный план включает App Store оптимизацию, два других — ещё и продвижение, — поясняет Head of Product Growth Анна Лозицкая. — Например, в самый дорогой маркетинговый пакет входит помощь по запуску проекта, создание медиа-контента, формирование концепции позиционирования, обеспечение пассажирского трафика. Мы помогаем компаниям правильно оценить, сколько на начальном этапе им нужно водителей и пассажиров, чтобы занять определённую долю на рынке при наличии конкурентов».

Плюсы развивающихся рынков

Клиентская база Onde уже насчитывает 200 компаний в 75 странах мира. На платформе зарегистрировано более 500 тысяч водителей, из них больше 100 тысяч активных пользователей, которые принимали хотя бы один заказ в месяц. За прошедший год количество активных водителей выросло в 3,5 раза, количество заказов — в пять раз до 10 млн в месяц. Количество активных пользователей — пассажиров превышает 1,3 млн человек.

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

— Например, в Африке еще некоторое время назад не было доступа к интернету. Сегодня технологии беспроводного интернета становятся дешевле, развивается 3G, люди покупают дешевые смартфоны за $20, получают доступ в интернет и ко всем онлайн-сервисам. И этот рынок быстро набирает обороты», — продолжает он.

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

«Показательный пример — Судан. Там нет общественного транспорта и ограниченное количество личного транспорта, так как это дорого. Tirhal, наш клиент в Судане, стал самым популярным сервисом для среднего класса с базой в 30 тысяч водителей», — говорит Сусло.

Многие клиенты Onde успешно конкурируют на местных рынках с Uber и другими гигантами.

В Азии есть крупный игрок — Grab с оценкой в $14 млрд. Это не помешало PassApp (наш клиент в Камбодже) его обойти.

В Саудовской Аравии ещё один наш клиент Kaiian является лидером несмотря на присутствие Uber и Careem — крупнейшего игрока на Ближнем Востоке в сфере пассажирских перевозок, в марте 2019 года его купил Uber за $3 млрд.


Евгений Сусло
гендиректор Onde

Впрочем, развивающиеся рынки имеют свои особенности, время от времени мешающие Onde продвигаться. «В Африке случаются военные перевороты, один из них произошёл относительно недавно в Судане. В результате в стране на полторы недели отключили интернет, и наш сервис все это время не работал. Похожая ситуация с отключением интернета была в Эфиопии», — говорит Сусло.

Перевести систему на Kotlin

Сейчас команда Onde изучает возможность полностью перевести систему на Kotlin, используя Kotlin Native для iOS и Kotlin JS для Web приложений, вместо аналогичных компиляторов для Java. В планах — произвести реворк архитектуры сервера: разбить на модули и настроить общение между ними. Это обеспечит больше стабильности и корректности работы системы, поможет решить проблему с синхронизацией.

На данный момент основной фокус Onde — это пассажирские перевозки.

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

dev.by — сайт об информационных технологиях в Беларуси и в мире.

Статьи по теме:

  • С помощью белорусского стартапа такси-конкуренты «сделали» Uber в Саудовской Аравии и Камбодже.
{ "author_name": "Татьяна Боброва", "author_type": "editor", "tags": ["onde"], "comments": 65, "likes": 76, "favorites": 158, "is_advertisement": false, "subsite_label": "services", "id": 82184, "is_wide": false, "is_ugc": false, "date": "Sat, 07 Sep 2019 18:13:37 +0300", "is_special": false }
0
{ "id": 82184, "author_id": 283507, "diff_limit": 1000, "urls": {"diff":"\/comments\/82184\/get","add":"\/comments\/82184\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/82184"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 200396, "last_count_and_date": null }
65 комментариев
Популярные
По порядку
Написать комментарий...
26

Одна версия кода, один бэкенд, один иксбет.

Ответить
2

Годно )

Ответить
–45

"Я оставил работу в Дании и вернулся в Белоруссию"
он что на машине времени в СССР попал?))
с 1991 там вроде Беларусь. Даже в оригинале статьи на русском языке прочитайте.

Ответить
40

"Я оставил работу в Danmark и вернулся в Беларусь".
Так пойдёт?

Ответить
1

так вообще-то и написано в оригинале на русском языке)

Ответить
24

Не надо путать кириллицу и русский язык. Беларусь - на белорусском, в Украине - на украинском, Саха - на якутском. По-русски - Белоруссия, на Украине и Якутия. Интересно, что немцы не страдают от своего названия на русском. Нация философов.

Ответить
0

Не на Украине, а в Украине, и дело тут не в русском или украинском языке. Предлог НА применяется для обозначения острова, островного государства либо части территории. На Сахалине, На Мадагаскаре, На Кубе. Так как Украина это не островное государство и не часть территории нашей страны, то "в Украине"

Ответить
1

Вы можете как угодно применять предлог НА, что доступно показал знаток русского языка Черномырдин. Но люди, которые говорят на родном языке, не нуждаются в подобных применениях. С другой стороны, люди, которые учат язык по "правилам", выставляют себя посмешищем и невеждой. Посмешищем - потому что кичатся своим заблуждением. Невеждой - потому что считают, что язык произошел из правил, а не наоборот. Напомню, что полный отказ от правил языка стал тем прорывом, который позволил компьютеру заговорить. Это очевидно для вменяемых людей указывает на то, что правила языка препятствуют знанию языка. Другими словами, знаешь или правила, или язык. Но не одновременно.

Ответить
0

Применение той или иной нормы языка уходит корнями в историю. Конструкция "на Украине" видимо сформировалась тогда, когда Украина была частью Российской Империи. Но Украина уже не часть империи, а самостоятельное государство и былое больше не вернется. Пора бы привыкать. А я перешел на "в Украине" с 2014 года- с момента ФАКТИЧЕСКОЙ независимости страны. Так что мой коммент к правилам имеет лишь косвенное отношение

Ответить
0

Карим, ну не спорьте :) 

Хотите - привыкайте к своим внутренним (назовем их "политическими") установкам, другим-то зачем пенять?

Подозреваю, что произносимая другими, эта конструкция нарушает какие-то ваши внутренние установки. Но пора бы быть толерантнее к мнению других, не? Раз уж вы толерантность к украинцам демонстрируете своим "в Украине".

Что касается правила. 

Конечно же, никакие правила русского языка в конструкции "на Украине" не нарушаются.

Конструкция "в Украине" (если \ когда) _возможно_ заместит текущую "на Украине" лет через 30-60, не ранее. И уж лично я точно этому не помогу. Меня в школе учили - "на Украине". У меня была отличная школа, отличные учителя, отличное советское детство. Так что давайте-ка - "к порядку" :)

Всем добра!

Ответить
0

А, советское детство и советская школа. "Усе понятно"

Ответить
1

Блажен невежда.

В советской школе знакомили с ярчайшими представителями национальных культур. В том числе украинской. Есть такой Тарас Шевченко, обвинять которого в незнании украинского никак не получится. 

Ответить
0

Вы-гений!

Ответить

Комментарий удален

1

Не надо путать разные языки. Для россиян это Белоруссия. Разные языки, разные слова. Вот возьмем слово "русский" оно существует только в головах у россиян. У соседних стран Украина и Польша - такого слова в словаре даже нет. Есть только россиянин.

Ответить
2

вы плохо знаете эти языки) например в польском есть и rosjanie, и ruskie, так и разговорное rusek, которое можно сказать обидное)

и вообще мой пост был о другом.

Ответить

Комментарий удален

2

А ещё там буськи и шуфлядки, и многие знают русский язык.

Ответить

Комментарий удален

5

я проснулся безработным и решил взяться за разработку мобильного приложения для вызова такси

Вот обожаю такие сказки из серии "...а потом умерла тётя и оставила мне миллион..." Т.е. такой лежит на печи, "а не спеть от мне песню?..." (с) Вот просто взял и прорюхал тему! Бинго!
А на самом деле, интересен момент вот этой самой "божьей искры". Дальше - это дело техники и везения. А вот как родилось именно это правильное решение? Откуда оно взялось? Что натолкнуло? Какой опыт стоял за этим?

Ответить
12

Ну, я, например, в 93м году пил пиво в институтской общаге и резал рыбу на газете "Коммерсантъ", после чего решил заняться автоматизацией банков и в итоге провел за этим делом почти 10 лучших лет своей жизни.

Ответить
5

Кстати да. Решения иногда приходят очень внезапно.
Даже взял за правило не стремиться к цели сломя голову а выжидать момента когда реально ебанет в голову и вся вселенная как будто тебе благоволит. А когда прешь раньше времени то все как то против шерсти получается. Но идея все равно зреет где то внутри по-любому, нельзя так внезапно бомжу придумать синхрофазотрон.

Ответить
3

Полностью согласен - это самое интересное!
В оригинальной статье вырезали часть этой истории почему-то. Расскажу.

Имея смартфон на андроиде с GPS и картами (кажется Nexus One) я приставал к таксистам, почему они не принимают заказы таким способом, ведь есть точные координаты и интернет. На меня эти ребята смотрели как на идиота. Так же серьезный толчком было посещение мероприятия связанного с запуском стартапов и поддержка моей будущей жены.

Вот так было мной описано все до работы редактора dev.by (кое что попало в статью, но интересные детали - нет, сорри за частичный повтор):

- История Onde началась в июле 2011 года, - рассказывает СТО компании Игорь Зубчёнок. –Так случилось, что совпало два события. Моя будущая жена Аня затащила меня на Startup Weekend Belarus. А второе событие - это закрывался проект, которым я долго руководил. На тот момент я работал в аутсорсинговой компании и писал программы под Windows Mobile. Но интерес к телефонам на этой системе уже затухал, несмотря на весь пиар, и клиент в итоге закрыл проект. В компании возник вопрос, что со мной делать дальше, ведь клиент раньше много платил за мою работу, соответственно, я получал очень хорошую зарплату. Я был готов остаться работать только на прежних финансовых условиях, но компания уже не могла себе этого позволить. И я решил, что это хороший повод, чтобы рискнуть все бросить и начать свой Startup.
Вот так 7 июня 2011 года я проснулся безработным и решил взяться за разработку мобильного приложения для вызова такси.
Эта идея у меня была давно. Но озвучил я ее впервые только на Startup школе, куда меня и Аню пригласил Александр Патутин после Weekend-а. Это действительно работает - когда произносишь идею вслух, она начинает другую жизнь!
Я часто пользовался такси, но система заказа казалась мне не удобной. Службы такси на тот момент не принимали заказы даже со смартфона.
Мне захотелось решить эту проблему. Тем более я видел, что есть технологии, которые могли упростить процесс вызова такси. В общем, уже через неделю появился какой-то прототип приложения. Помню, мы с женой бегали вокруг дома, тестировали его. Кстати, тогда еще не было шеринга локейшенов ни в Telegram, ни в Google Maps.
Над приложением я поработал около трех месяцев, что-то развивал, улучшал, привлек к проекту друзей. Но понял, что в таком составе не хватает командной экспертизы, не с кем было обсудить развитие проекта. Ближе к зиме у меня появился партнер Илья Атрашкевич. У него был опыт в области GPS-мониторинга. Параллельно Илья начал заниматься командой. Именно он переманил из Дании Женю (Евгений Сусло, СЕО Onde -прим. dev.by).

Ответить
0

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

Ответить
3

Стоять, а когда вас купит Яндекс?

Ответить
5

У них нету столько денег 😼

Ответить
1

Давно искал готовое решение для запуска "Женского такси" в Москве.
Обязательно попробую сервис ONDE !
Автор, когда же дойдёт очередь до обзора минской компании, о которой я спрашивал вас в личном сообщении?

Ответить
7

Водилы тоже бабы будут? Давайте уже fake taxi запустим

Ответить

Комментарий удален

1

Sherlocktaxi тоже попробуйте

Ответить
3

Приложение для такси за $7,5 тысяч?! Постойте-ка, это же месячная зарплата одного программиста в Uber/Lyft, только там их тысячи, что вытекает в несколько миллиардов долларов на НИОКР ежегодно. Трудно поверить, но самый простой вариант: деньги инвесторов именно что вытекают куда надо по классике отката и распила. Стартапы крутятся, лавеха мутится.

Ответить
0

Мне вот любопытно, в вашем понимании, инвесторы - это беспробудные идиоты с желанием куда то выкинуть свои деньги? Они же не Ланнистеры, которые золотом слабятся.

Ответить
3

Напомни-ка мне, когда случился ипотечный кризис 2007-2008 года, перетекший в международный финансовый, кто покупал облигации CDO? Те самые облигации из невозвратных ипотек рейтинга ВВВ упакованные по принципу матрешки до облигаций уровня ААА. Не инвесторы ли?

Ответить
0

А еще были инвесторы, которые шортили эти облигации. И?

Ответить
0

и то, их было 0,1%

Ответить
0

Откуда цифра?

Ответить
0

Ну сравнивать зарпалты в Минске и НЙ не очень корректно. За $7.5 можно сделать прототип вполне.
На поддержку и развитие уйдет больше. Плюс маркетинг

Ответить
0

1. Приложение разрабатывают не с нуля, а готовый код брендируют под заказчика. Это работа на пару-тройку дней 2. Основной заработок компании- 2-4% с оборота такси компаний. 10 млн поездок со средним чеком, ну условно для стран Африки и Латинской Америки пусть будет 3$, получается с $30 млн средние 3% дают $900 тыс в месяц. И они еще ежемесячно растут. 3. 200 компаний платят ежемесячно 99$ за подписку, получается порядка $20 тыс; плюс в среднем 10$ на 100 тысяч водителей (и то я беру по минимуму и не все 500 тысяч зареганых) еще $1 млн в месяц

Теперь расскажите свою историю про слив денег инвесторов 

Ответить
0

я уже рассказал чуть выше

Ответить
0

И Uber не тратит миллиарды на НИОКР. Большая часть расходов Uber- это дотирование запусков своего сервиса на новых рынках

Ответить
3

А как вы решаете вопрос с баном в AppStore приложений с одинаковым функционалом? Не попадаете под спам-фильтр?

Ответить
2

Много нюансов. В целом стараемся оформлять приложения в сторах максимально уникально. Помогает то, что рынки разные.

Ответить
2

Крутые ребята! Успехов им.

Ответить
1

По-португальски onde значит "где" )))

Ответить
1

Также красивое созвучие с «onda» - волна

Ответить
0

а если М приписать то сразу ответ получается ))

Ответить
0

Всем бы возможности учиться в Швеции)

Ответить
2

Программа по которой я ездил существует до сих пор. Любой может поехать:

https://si.se/en/apply/scholarships/visby-programme-masters/

К слову, подобных возможностей много.

Ответить
1

Очень интересная компания. Было бы здорово почитать больше об их бизнесе, а не технологиях.

Ответить
1

Как она в таком положении работает???? Ноги опираются на носки, поддержки спины нет, сиденье- не жесткая опора, а раскачивается на веревках, бедра под уклоном вниз и ноутбук постоянно сползает, голова наклонена вниз, затылок напряжен. Это же ад!!!!

Ответить
–1

работал в крупной компании Maersk

Эээ... если этот тот самый Maersk, то, я думаю, уточнение про "крупную компанию" лишнее. Все равно, что сказать "работал в крупной компании Amazon".

Ответить
2

Amazon у всех на слуху, а Maersk известен в более узком кругу. Но да, этот самый Maersk с танкерами, нефтяными вышками и своим блэк джеком.

Ответить
–2

Если вы такие крутые почему про вас никто не знает?

Ответить
2

Публичность не была нашим приоритетом. Это тоже кусок работы, который требует время и усилий.

Ответить
0

Java для Web - это апплеты, GWT или что-то третье? И как впечатления на iOS?

Ответить
1

Для Web - GWT (используем только как компилятор), для iOS - j2objc.

Если все сложится, все это заменим на Kotlin JS и Kotlin Native.

Ответить
0

Клиенты, которые заказывали брендированные приложения, платили за один-два месяца и уходили

Почему?

Ответить
0

Многие не относились серьезно к запуску приложений, покупали и когда понимали, что приложение нмюикто без рекламы не устанавливает, решали дальше не платить. А Onde теперь предлагает услуги и консалтинг по раскрутке приложений в ASO пакете, и с серьезно настроенными клиентами такой проблемы уже нет.

Ответить
0

Молодцы, составьте конкуренцию зажратым сервисам в РФ.

Ответить
0

Если я не ошибаюсь, что в App Store запрещено использовать приложения, где исполняемый код загружается извне. А по вашему описанию (приложения все разом обновляются автоматически) это так и сделано. Как обошли данный запрет или не считаете это запретом?

Ответить
0

Полностью нативные приложения, без подгрузки кода и любых хаков операционных систем.
Тут "все сразу" - означает массовый билд, выливка в сторы и отправка на ревью сразу всех приложений всех клиентов автоматически (скриптом). Пайплайн конечно очень сложный, но отлаженный.

Ответить
0

Все приложения обновляются автоматически в режиме реального времени.

Меня просто смутила фраза "в режиме реального времени".

Ответить
0

Согласен, получилась написана какая-то муть. :)

Ответить
–2

Ммм понятно

Ответить
{ "page_type": "article" }

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fizc" } } }, { "id": 4, "label": "Article Branding", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "cfovx", "p2": "glug" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "bscsh", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223676-0", "render_to": "inpage_VI-223676-0-1104503429", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=bugf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Баннер в ленте на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudx", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byzqf", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvc" } } }, { "id": 19, "disable": true, "label": "Тизер на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "p1": "cbltd", "p2": "gazs" } } } ] { "page_type": "default" }