В России, несмотря на экономические и политические потрясения, тенденция похожа: за 2022 год выручка отечественных предприятий, разрабатывающих мобильные приложения, увеличилась почти на 30% по сравнению с 2021. Все больше компаний создают приложения для клиентов, причем не только в потребительском сегменте, но и в В2В.
Шамиль Иманов, эксперт по разработке программного обеспечения для устройств экосистемы Apple, внес весомый вклад в создание и развитие мобильного приложения для торговой сети «Золотое Яблоко». Этот инновационный цифровой продукт быстро вошел в топ скачиваемых приложений в App Store, попав на первое место в категории «Покупки». Шамиль Иманов был награжден престижной всероссийской премией CNews. Сегодня он рассказывает, как создать качественное и востребованное мобильное приложение.
— Шамиль, у вас в портфолио кейс разработки востребованного мобильного приложения торговой сети «Золотое Яблоко». Первый вопрос — как разработать подобный цифровой продукт, чтобы он нравился аудитории?
— В основе разработки мобильных приложений лежит, прежде всего, идея, концепция. Поэтому до того, как приступить к созданию такого цифрового продукта, необходимо понять, какие бизнес-цели планируется решать с его помощью, на какие группы пользователей он будет рассчитан, чего ожидает потребитель.
Такой анализ надо проводить не только когда дело касается разработки нового приложения, но и, если речь идет о создании и добавлении новых функций в уже существующий продукт. Например, я работал старшим разработчиком Департамента технологического развития розничного бизнеса банка ВТБ, и там мы в приложение «ВТБ Онлайн» добавляли опции для отдельных групп пользователей: для тех, кому удобнее визуализировать цели накопления средств в виде графика, для людей, лишенных зрения.
После того, как определили, с какой целью и для какой аудитории будет создаваться приложение, надо со всей тщательностью подойти к технологической стороне проекта, чтобы получился качественный продукт. Мобильное приложение «Золотого Яблока», в разработке которого я принимал участие, после загрузки в App Store очень быстро стало востребованным, по числе скачиваний вышло на первое место в категории «Покупки». Однако, если бы оно было сделано некачественно, зависало, тормозило, выбрасывало пользователя из аккаунта, то люди очень быстро перестали бы им пользоваться.
— То есть, по сути, если команды маркетинга и IT-разработки спланировали и реализовали проект грамотно, это ключ к успеху мобильного приложения?
— Да, однако не следует забывать, что после создания продукта и выгрузки его в магазины приложений работа не заканчивается. Необходимо собирать обратную связь от пользователей, так как они помогают улучшать приложение. С их помощью IT-команда понимает, что людям важнее в функциях приложения, на какие опции стоит выделить больше ресурсов. Для этого все разработчики используют аналитику активности, которая позволяет понять многое (например, что больше всего делают пользователи в приложении, где у них возникают трудности и что можно с этим сделать). Еще у всех приложений есть служба поддержка, куда обращаются пользователи: этот канал тоже надо использовать для анализа эффективности приложения и делать выводы.
— В России в 2022-2023 годах айфоны вытесняются смартфонами, в которых используется операционная система Android, поэтому можно ожидать, что отечественные компании будут меньше приложений создавать для iOS. В чем различия iOS и Android-разработки?
— Сразу обозначу, что бывает так называемая кроссплатформенная разработка, когда одно и то же приложение сразу создается с целью, чтобы оно работало и на iOS, и на Android. К ней прибегает немало предприятий, главным образом, потому что она дешевле.
Разработка, ведущаяся исключительно под iOS или под Android, называется нативной. Она дороже, но имеет свои плюсы, прежде всего, более высокую производительность.
В целом, Android-разработка отличается от iOS тем, что требует тестирования на множестве устройств различных производителей (Huawei, Samsung, Siemens, Lenovo и прочих). Операционная система iOS используется в меньшем количестве гаджетов (только айфоны Apple), поэтому, когда сделали мобильное приложение для нее, проверок проводить приходится не так много.
Важным отличием является возможность установки приложений на iOS только через App Store, в то время как Android позволяет пользователю скачивать и устанавливать приложения из разных источников, включая магазины приложений, веб-сайты и так далее. Впрочем, судя по сообщениям СМИ, Apple планирует на айфонах добавить возможность скачивать приложения извне.
Недавно Apple ввела обязательное требование для приложений в App Store: наличие опции, которая позволяет пользователям удалить свой аккаунт. В операционной системе Android таких ограничений нет.
— Вы назвали качество одним из важных условий, способствующих успеху мобильного приложения. Как добиться того, чтобы, с технологической точки зрения, продукт был хорошим?
— Чтобы обеспечить высокое качество приложения, требуется внимательно его проверять как вручную, так и с использованием unit-, ui- и snapshot-тестов. Обязательно регрессионное тестирование (изучение, не возникли ли ошибки на предыдущих этапах разработки).
При увеличении числа функций в приложении следует следить за его производительностью, учитывая разные типы устройств. Безопасность и конфиденциальность данных пользователей также должны быть на высшем уровне.
— В России вырос спрос на IT-специалистов. Какие навыки и знания, по вашему мнению, наиболее важны для успешного программиста, если он хочет создавать мобильные приложения в наши дни?
— Если человек хочет стать успешным разработчик, то ему обязательно нужно беспрерывно следить за развитием его сферы. Изучать новое важно не на уровне: «Делай так, и будет работать», — а глубоко вникать, почему именно так, а не иначе.
Бывает, язык программирования уходит в прошлое, на нем уже не пишут. Однако все приложения, которые создавались во времена, когда он был популярен, будут еще долго содержать код именно на нем. Поэтому разработчику надо быть готовым изучать этот язык, несмотря на то, что он устарел.
Сейчас многие думают что пройдут какой-то платный курс на онлайн-платформе и станут сразу разработчиками. Это большой самообман, так как на подобных программах чаще всего просто рассказывают все то, что человек может изучить и без них. Нельзя говорить о том, что такие курсы совсем бесполезны: например, они эффективны при обучении людей, которые испытывают проблемы с самодисциплиной. Однако, чтобы стать специалистом с большой буквы, требуются годы теории и практики.
Поэтому считаю, что самообучение и получение практического опыта на стажировке и работе — это один из лучших вариантов, как стать хорошим разработчиком. Трудиться лучше в тех командах, где можно многому научиться, даже если придется там бесплатно работать пару месяцев — оно того стоит!
— С программистами понятно. А как стартапам или предпринимателям сделать свое первое мобильное приложение таким, чтобы оно имело коммерческий успех?
— Помимо того, о чем я говорил в самом начале о совместной работе команд маркетинга и IT-разработки, важно отметить, что приложение должно быть максимально комфортным в использовании. Люди ждут, что бизнес будет ценить их время, и готовы платить и даже переплачивать за удобство. Если приложение качественное и востребовано аудиторией, но пользователь должен в нем совершить 15 действий, прежде чем сможет оформить заказ, интерес к такому IT-продукту сразу упадет. Чем легче применять приложение, тем больше вероятность, что оно привлечет клиентов и покупателей.