Мобильная разработка: как начать и как развиваться / Skillbox Media
«Мобильный разработчик должен прежде всего любить смартфоны, а уже потом знать Swift и Kotlin». Беседуем с руководителем студии AppCraft.
Содержание:
Бесплатный курс: «Быстрый старт в Python»
Узнать большеВ интервью Александр Мурзанаев, CEO AppCraft, рассказывает:
- про три мировых тренда на ближайшую пару лет;
- каких кандидатов не рассматривает AppCraft, когда ищет разработчиков;
- реально ли в одиночку создать и вывести на рынок мобильное приложение;
- про основные ошибки начинающих разработчиков;
- почему руководителю тяжело уйти от роли специалиста;
- чем его заворожило программирование;
- почему перестал заниматься играми;
- а также даёт пять советов мобильным стартаперам.
— Начнём с тенденций. Какие они сегодня, и везде ли в мире одинаковы?
— Общие тренды одинаковы во всех регионах. Везде нужны удобные, умные, быстрые и интуитивно понятные приложения. Различия обусловлены скорее законодательными нюансами, чем разными потребностями.
Например, в Европе уже не первый год развивается мобильный банкинг Revolut. Подключаете к нему банковский счёт, и система помогает вам по-умному сохранять и приумножать деньги — инвестировать, например. Банк позволяет управлять деньгами любому сервису, который одобрил клиент. Так в Евросоюзе. В других регионах — другие законы. Поэтому там пока нет таких продуктов, хотя потребность в них очевидна.
Я вижу три основных мировых тренда:
- Развитие коммуникаций между людьми в самых разных формах.
- Умные помощники, которые экономят время пользователя, разгружают его внимание, избавляют от множества рутинных действий. Это и планирование путешествия одной кнопкой, и советы по сбережению денег, и выбор музыки с фильмами, и тому подобное.
- Tech For Good. Традиционно технологии противопоставляются природе, естественности. Сейчас, особенно в Европе, многие ломают этот стереотип — помогают своими проектами окружающей среде, людям, отношениям.
Тренды меняются примерно каждые два-три года. Три нынешних сформировались около года назад. Поэтому пару лет нас ожидает движение именно в этих направлениях.
Любопытно, что в дополненной и виртуальной реальности, блокчейне и некоторых других областях, на которые возлагали надежды не так давно, никаких подвижек не предвидится. Для массового потребителя эти технологии сегодня не имеют практической пользы — такой, какая есть, например, у машинного обучения. Оно создаёт «магическую умность», используется в распознавании изображений, обработке видео, фотографий и так далее. Остальное пока в лабораториях.
Так что, я считаю, разработчикам стоит сосредоточиться на том, что применимо уже сегодня.
«Важно самому пройти всё от и до»
— Что должен уметь разработчик, чтобы попасть в вашу команду? Какими инструментами и языками владеть?
— Мобильный разработчик должен прежде всего любить смартфоны, а уже потом знать Swift и Kotlin.
Наше основное требование — это страсть к профессии. Сложно представить себе резчика по дереву, у которого дома нет ни одной деревянной фигурки. Или музыканта, который не написал ничего для себя. Не бывает и хорошего программиста без единого собственного проекта. Дело не в том, что сотрудник должен это делать. Просто профессионал не может по-другому. Без желания, любопытства, потребности открывать для себя новое никогда не получится создать что-то стоящее.
Поэтому мы не рассматриваем резюме frontend-специалиста, у которого нет своих проб, проектов со сложной вёрсткой и анимацией, даже если послужной список у него внушителен.
Всем тонкостям внутренней кухни, технологиям, правилам в нашей команде мы постепенно научим. Я думаю, так поступают и другие дальновидные компании — несложно обучить того, кто получает удовольствие от выбранной области.
— Вам нужны чисто пробы пера или проекты, сделанные с нуля до релиза?
— Хотя бы рабочие прототипы. А в идеале — да, готовые проекты, пусть и небольшие.
— Вообще реально в одиночку создать приложение и вывести его на рынок?
— Более чем реально! Кроме того, это стоит делать со своими pet-проектами. Иначе не поймёшь, работают ли результаты твоего труда.
Важно самому пройти всё от и до. Например, ты написал нереально крутую фичу, но её никто не поймёт и не будет использовать, пока толково не объяснишь в туториале — и это тоже нужно уметь. А если сам не пробовал делать UI, то тебе будет сложно говорить на одном языке с дизайнерами.
— Что для этого нужно?
— Разобраться с полным циклом разработки и методично идти от аналитики и маркетинга до проведения когортных исследований. Каждый шаг позволяет лучше понять сферу мобильной разработки, даёт важные знания и, главное, опыт.
И если ты можешь сам пройти эти шаги — тебе будут рады везде.
От игр к мобильным приложениям
— Ваш сайт говорит, что AppCraft возник в 2008 году. С чего вы начинали?
— В 2007 году я купил первую модель iPhone. Магазин приложений тогда ещё не появился, предустановленных программ было мало, но щупать устройство было очень интересно. Большой экран, удобный интерфейс, высокая скорость работы натолкнули на мысли о прекрасном будущем технологий. Годом позже, сразу после появления на прилавках, я заказал Android Dev Phone 1.
Первое приложение, которое я под него создал, измеряло высоту, с которой упал смартфон. Для расчётов применялись акселерометр и таймер. При желании можно было узнать и высоту многоэтажки, но сомневаюсь, что после такого телефон бы выжил. Пользоваться приложением можно было хоть на Луне, хоть на Звезде Смерти — спасибо программистам из Google, добавившим в Android много гравитационных постоянных, в том числе и для вымышленных объектов.
Следующим увлечением стали, конечно, игры. Я придумывал разные. Например, про снежный ком, который нужно было катить, дуя в микрофон телефона. Челлендж появлялся, когда снежный шар становился большим — сдвигать его становилось всё труднее, и дуть приходилось изо всех сил. В 2009-м сделал даже собственный файтинг вроде того, каким потом получился Pokemon Go. Там игроку нужно было сражаться с монстрами, сжимая телефон в кулаке и лупя им по воздуху.
Благодаря редкой рекламе в играх удавалось зарабатывать до 30–80 тысяч рублей с каждой. Тогда можно было содержать команду, выложив в магазин около 20 приложений. Но мало того, что игры тяжело разрабатывать в одиночку, это ещё и очень нестабильное направление. Есть много примеров, когда маститые разработчики запустили всего один-два хита, на которых удалось зарабатывать. Rovio (Angry Birds) или Supercell (Clash of Clans) — все развивают только свой основной продукт. Любое отклонение в сторону заканчивается неудачей.
Игра, которая приносит серьёзный доход, — явление редкое даже при сотрудничестве с крупными издателями.
— То есть игры — пройденный этап?
— Да, потому что социальные сети, мессенджеры, интернет-магазины, утилиты живут дольше. Действительно полезные приложения задерживаются на устройствах годами. Поэтому захотелось создавать именно их.
Помню, как разослал ровно триста писем в разные компании с описанием плюсов, которые даёт собственное мобильное приложение. Ответили из двух. Одни просто поинтересовались ценой, а вот со вторыми удалось заключить договор. Так и получилось, что первым нашим клиентом стала сеть ресторанов суши. Это был 2012 год.