Конструктор мобильных приложений, для которого не нужны миллионные бюджеты и навыки программирования.
Мобильная разработка – трудоёмкий и дорогостоящий процесс, который может себе позволить далеко не каждый предприниматель. На помощь приходит инновационный онлайн-сервис Yelm. Это конструктор мобильных приложений, в котором пользователь, используя интуитивно понятный интерфейс, может создать собственный онлайн-магазин со всем необходимым функционалом. Рассказываем, как мы помогли основателям стартапа Yelm превратить амбициозную идею в реальность.
Задачи:
Встроить в конструктор приложения интеграцию с системами обработки заказов, сервисами оплаты и службами доставки, а также возможность внешних интеграций.
Разработать собственный сервис доставки и автоматизировать управление им.
Создать сервис партнёрской программы Yelm для администраторов, партнёров и владельцев приложений.
Внедрить систему оплаты за пользование услугами сервиса.
Обеспечить быструю и надёжную работу всех элементов конструктора и избавиться от проблем уязвимости.
Ревью Кода
До нас команда Yelm начинала работу с другими программистами. Поэтому первым делом мы провели ревью кода, чтобы выявить особенности предыдущей разработки. Оказалось, что часть функционала реализована не надёжно и есть предпосылки к накоплению существенного технического долга в будущем. Поэтому чтобы упростить дальнейшую разработку и внедрение новых функций, мы “навели порядок”: оптимизировали код всех элементов программы, с которыми работали. А ещё переписали схему работы с внешними сервисами, существенно сократив затраты внедрение новых и поддержку старых интеграций.
В конструкторе приложений можно создать полноценный онлайн-магазин – такой, чтобы покупатель мог оформить заказ, не переходя на сторонние сервисы. Поэтому для корректной работы каждого из этапов, будь то заказ товара, проведение оплаты, доставка и отслеживание покупок необходимо внедрение отдельных программ.
Например, автоматическую обработку заказов, мониторинг покупок и остатков, а также работу с доставкой предприниматели могут контролировать с помощью бизнес-системы Iiko. Она легко встроится в создаваемое приложение, ведь интеграцию уже сделала наша команда. Владелец магазина может создать каталог товаров за пару минут, просто импортируя готовые позиции из своей системы Iiko в приложение. А вся информация о заказах и продажах через онлайн-магазин сразу же попадает в систему отслеживания.
Для быстрого и удобного получения товаров мы провели интеграцию с Яндекс.Доставкой. А ещё разработали и внедрили собственной сервис доставки. В нём владелец магазина может самостоятельно назначить курьеров, указать зоны доставок и установить цены. Курьеры получают уведомление о заказе, доставляют и отчитываются о завершении в специальном приложении. Конечная стоимость и примерное время доставки рассчитываются автоматически. Владелец приложения может сам выбрать, какой из сервисов доставки использовать или подключить оба.
Для оплаты покупок мы интегрировали в конструктор приложений сервис онлайн-платежей ЮКасса. При создании своего онлайн-магазина владелец бизнеса должен лишь включить этот модуль и выставить свои настройки – все остальное сделается автоматически.
А что, если владелец магазина пользуется другими сервисами для проведения всех операций? Для этого случая мы написали внешний API, чтобы клиенты могли самостоятельно интегрировать любые системы учёта с приложениями, созданными в Yelm.
Сервис для партнёров
Пользователи конструктора Yelm могут создавать мобильные приложения не только для себя, но и для своих клиентов. Мы разработали систему, в которой администратор партнёрской программы может управлять участниками, а они – помогать в настройке другим предпринимателям и получать с этого фиксированный процент.
Система биллинга
Разработали систему пополнения баланса клиентов и автоматический расчет стоимости приложения в зависимости от количества подключаемых интеграций. Необходимую сумму пользователь вносит на баланс своего личного кабинета, а финальная оплата списывается после выпуска приложения. Впоследствии владелец приложения может добавить отдельные модули и интеграции.
Для поддержки работы готового приложения мы настроили ежемесячную абонентскую плату. Она, как и все операции по балансу, фиксируется в личном кабинете пользователя.
Улучшения платформы
В процессе изучения исходного кода платформы мы обнаружили уязвимости в старой системе регистрации и авторизации. Поэтому мы полностью переработали её в соответствии с последними техническими и UI-стандартами.
Код регистрации приходит по звонку на номер телефона. Затем пользователь вводит электронную почту, придумывает пароль и может приступать к разработке своего приложения.
Примеры приложений
Итоги работы
Вместе с командой мобильной разработки Yelm мы создали конструктор, в котором можно не только собрать мобильное приложение, но и максимально автоматизировать его под свои бизнес-задачи.
Интегрировали инструменты создания каталогов товаров, оплаты и доставки. Разработали собственный сервис доставки и написали API для внешних интеграций с любыми приложениями.
Платформа работает быстрее и надёжнее: устранены уязвимости регистрации и авторизации. Благодаря проведённому рефакторингу код проекта стал прозрачнее, что упрощает внедрение новых интеграций и ускоряет порог входа в проект новых разработчиков.
Запущено автоматическое управление партнёрской программой Yelm, к которой уже присоединились первые 3 участника со своими клиентами.
Внедрена система биллинга и автоматического расчета стоимости приложения.
Вместе с командой мобильной разработки разработали схему автоматической сборки и адаптации приложений для iOS и Android прямо из конструктора. В ближайшем будущем это позволит сократить время финального выпуска приложения и его загрузки в магазин.
Пользователи конструктора выпустили уже более 15 собственных бизнес-приложений. В среднем на создание проекта в конструкторе у пользователя уходит от 2 до 8 часов. А увидеть готовое приложение в магазинах AppStore и GooglePlay можно уже через 2–3 дня.
Екатерина Власова
Директор Yelm.Builder
Много различных специалистов, которые при необходимости могут подключиться к проекту. Отдельную благодарность хочу выразить архитектору и тимлиду проекта — именно от его грамотного подхода зависела вся дальнейшая работа. А также менеджеру проекта, который постоянно держал руку на пульсе и координировал всех специалистов.