Какие программисты нужны для создания приложения
Я разрабатываю мобильные приложения для iOS и Android уже почти 4 года. Мои заказчики – это и предприниматели, и стартаперы, и крупные бренды.
Процесс разработки приложения для мобильных устройств предусматривает как минимум три сценария:
- Вы обращаетесь в студию разработки мобильных приложений с опытными программистами в штате;
- Вы ищите фрилансера с доступным прайсом;
- Вы ищите профессионального фрилансера – настоящего гуру своего дела, который, возможно, окажется дорогим специалистом;
Первый вариант - самый простой.
Он подходит, если Вы располагаете приличным бюджетом и готовы переплачивать менеджерам.
Студии - это не только большие финансовые затраты. Работа с ними потребует немало времени. Но, возможно, у вас есть желание обстоятельно пообщаться со специалистом, который уже сам донесет все, что нужно до технических сотрудников и программистов. Этот вариант подойдет, если Вам нужно общаться в непосредственном контакте, посещая офис разработчика.
Второй вариант - самый доступный.
Он для тех, кто крайне ограничен в бюджете и готов пожертвовать временем.
Как правило, недорогой фрилансер – это специалист начального уровня. Это значит, что вам придется направлять, корректировать и контролировать всю его работу. К сожалению, часто у таких мастеров проявляется синдром «балерины» (завершение проекта на 90% и нахождение причины уйти в другую специальность). Конечно же, это один из самых рискованных сценариев разработки.
Третий вариант – для тех, кто стремится к совершенству.
Вам придетсяобщаться напрямую с программистами, считаться с мнением профессионалов.
Будьте готовы к тому, что специалист будет критиковать ваш проект и давать советы. Не пренебрегайте ими. Это – путь к лучшему результату.
Профессиональный разработчик приложений – это человек, который владеет не только технической базой, но и огромным опытом работы в этой сфере. Он не только «съел собаку», занимаясь подобными проектами, но и знает, как ее правильно готовить.
Я хочу подробнее остановиться на третьем варианте и рассказать вам, какие подводные камни могут встретиться на вашем пути к лучшему мобильному приложению. Чтобы найти отличного профессионала, вам нужно следовать 11-ти простым указателям. Эти указатели непременно приведут вас к тому человеку, который вам нужен.
1. Портфолио
Портфолио – ключевой актив любого фрилансера. Обязательно смотрите портфолио.
Очевидно, что там вы должны обнаружить выполненные проекты, готовые мобильные приложения. В портфолио обязательно должны присутствовать ссылки на AppStore и Google Play. Наличие ссылок гарантирует, что портфолио не рисованное, а полностью отражает опыт мастера. Обязательно обратите внимание на количество и качество готовых приложений. Конечно, если их много и они безупречны, то перед вами – настоящий профессионал. Мало, но отборные – тоже прекрасно.
2. Отзывы
Найдите или запросите у фрилансера отзывы о работе с ним. Если их нет в профиле или на сайте, расспросите, его заказчиков.
Не секрет, что отзывы не всегда являются подлинными. Поэтому не стесняйтесь связываться с заказчиками данного специалиста. Не знаете, как их найти? Просто запросите несколько контактов у самого фрилансера. Не стесняйтесь. Особенно если ваш проект потребует больших финансовых затрат. Настоящие профессионалы быстро ответят на такой запрос. Это никак не должно оскорбить их чувства.
3. Рейтинг
PRO и PROFI аккаунты продаются и активно покупаются.Поэтому будьте внимательны к остальным факторам, помимо рейтинга и положения в списках.
Если слева от аватара вы видите значок булавки, значит, фрилансер платит за поднятие в топе, тем самым повышая свой рейтинг. Но это не всегда гарантирует, что он действительно стоящий специалист. Это лишь свидетельствует о том, что он вкладывает деньги в свою раскрутку. Конечно, тоже неплохой знак. Но основывать свой выбор на этом факте ни в коем случае не стоит.
4. Инструментарий
Уточните у специалиста, какими инструментами он пользуется при разработки мобильных приложений.
Опытный мастер использует современный инструментарий. Он следит за новинками в сфере разработки, постоянно повышает свое мастерство. Знание его инструментов также поможет вам ориентироваться в результатах работы. Вы поймете, о каком приложении идет речь, о нативном или гибридном (сайте, обернутом в приложение). Качественные приложения на iOS разрабатываются на языке Objective-C или Swift в инструменте XCode. Приложения для Android пишут на Java в Android Studio.
5. Доступность
Оцените, насколько специалист доступен. Как быстро и легко вы можете связаться с ним?
Чем больше контактных данных есть в наличии, тем лучше. У вас есть возможность выбрать удобный для вас способ связи. Помимо этого, вы должны знать телефон и адрес специалиста. Вы работает с человеком, который несет ответственность за свою работу, а не с набором букв и слов на экране. Если мастер скрывает контактные данные или не отвечает на звонки, то это одна из причин, по которым вы можете отказать специалисту. На аватарке в профиле должна быть фотография самого фрилансера. Позвоните ему на мобильный. Позвоните в скайп, чтобы пообщаться голосом. По возможности, предложите подъехать к специалисту, чтобы обсудить проект лично.
6. Готовность к безопасной сделке
Предложите специалисту работать по безопасной сделке. Если человек практикует мошенничество, затягивание сроков или попросту кидает заказчиков на полпути, то он будет сопротивляться такой форме работы. Он станет рассказывать насколько несовершенна и неудобна безопасная сделка. В идеале, конечно, лучше работать именно в рамках безопасной сделки. Она позволит вам защитить свои интересы лучше, чем что-либо еще. Но в итоге решаете вы – стоит ли безопасность дополнительных расходов порядка 11%.
7. Скорость оценки
Профессионал, неоднократно выполняющий разработку мобильных приложений, может сходу дать оценку по вводным параметрам Вашего проекта.
Ему не нужно время, чтобы придумать цену. Он ее знает. Ему не нужно тратить время на выдумывание, на сравнение своих цен с другими. У него есть четкое представление из чего формируется стоимость его работы, сколько времени и сил он потратит на разработку. Быстрый ответ на ваш запрос говорит о том, что человек имеет значительный опыт в работе.
8. Блог
Специалист с именем и репутацией, как правило, ведет блог, где рассказывает о запущенных проектах и технологиях, выступая в роли эксперта и просветителя.
В своем блоге он может рассказывать как о технических нюансах создания приложений, так и о вопросах маркетинга. Наличие блога у специалиста выдает в нем настоящего энтузиаста, который готов делиться не только опытом, но и своей любовью к делу.
9. Мнение о конкурентах
Спросите мнение специалиста о конкурирующем фрилансере. Профессионал не станет никого поливать грязью.
Адекватный специалист знает, что такое деловая этика и культура. Он знает, что такое репутация и как многое она значит для фрилансера. Если вы слышите жесткую критику в адрес конкурента, знайте, перед вами человек, который готов идти по головам. Возможно, и по вашей тоже.
Профессионал даст конструктивную оценку по формальным признакам вроде тех, что вы читаете в этом списке, без перехода на личности и открытый негатив.
10. Гарантия и обслуживание
Уточните, какие платежи предстоят помимо сметы. Какую гарантию предоставляет специалист. Передает ли специалист исходники проекта.
Средним значением по больнице считается 3-и месяца. В процессе работы у вас могут возникнуть новые идеи и пожелания, реализация которых потребует дополнительных затрат. Это нормально. Ненормально, когда в процессе работы возникают какие-либо дополнительные финансовые претензии со стороны фрилансера. Такие вещи должны быть оговорены перед началом работы. Вы должны точно знать, что и как оплачивается.
Гарантия и обслуживание – обязательные пункты в работе опытного мастера. Он не бросит вас с приложением на произвол судьбы, а будет следить за его исправностью хотя бы на начальном этапе внедрения. Нужен ли вам исходник вашего приложения? Уточните возможность его получения заранее.
11. Готовность приступить сейчас же
Как известно, хороший профессионал всегда занят и маловероятно, что он сможет приступить к проекту прямо сейчас.
Уточните, насколько загружен специалист, чтобы планировать свои действия. По этой же причине, не стоит откладывать поиск исполнителя на последний момент. Если сегодня вы решили, что вам нужно приложение, то это значит, что получите вы его не завтра и не через неделю. На разработку уходит несколько месяцев. Вы должны также отдавать себе отчет в том, что выбранный фрилансер может быть занят в другом проекте как раз тогда, когда вам нужно, чтобы он вплотную занялся вашим. Поэтому ищите, обсуждайте, планируйте.
И напоследок…
Я надеюсь, что эти 11 правил помогут вам не только завершить проект в назначенный бюджет и срок, но и получить действительно крутое приложение. Если вы будете точно следовать им, то вам не придется скитаться по биржам в поисках фрилансера, который сделает работу на 60-90%. Вам не придется искать нового фрилансера для доработки через полгода после срока сдачи проекта. Вам не придется сокрушаться о потерянных времени и деньгах.
- предложение работать по безопасной сделке,
- видео звонок в скайп,
- звонок на мобильный.
И еще немного информации для размышления. Часто от директоров больших студий я слышу, что фрилансер - это один человек, а студия это большое количество профессионалов. Это коллектив, готовый заменить заболевшего мастера. Конечно, это было бы идеально для заказчика. Но факт в том, что другие специалисты всегда по горло завалены другими проектами. Иначе студия, где программисты только и ждут кого бы им заменить, была бы убыточной.
Я желаю Вам удачи в поиске профессионалов и отличных проектов, выполненных в срок!
Найти хорошего разработчика не сложно, сложнее найти специалистов, подходящих для конкретной задачи. Дело в том, что разработчики мобильных приложений имеют разный уровень знаний и опыта, подход к разработке, исследованию клиентов и маркетингу. Выбор разработчика может оказать значительное влияние на то, станет ваше приложение популярным или окажется никому не нужным. Поэтому, приступая к поискам разработчика, не забывайте о важных вопросах, которые помогут сделать правильный выбор.
Опыт работы разработчика
Идеальный для вас разработчик должен иметь опыт создания сложных приложений на нужной вам платформе.
Где посмотреть портфолио
Если у вас не получилось найти работы вашего потенциального разработчика ни в одном магазине мобильных приложений, попросите показать созданные им приложения. Хороший разработчик должен сделать это с удовольствием и гордостью. Если нет, вам стоит задуматься. Конечно, некоторые работы могут быть конфиденциальными, но вряд ли это касается абсолютно всех созданных одним человеком приложений. Однако если это так, пусть разработчик лично покажет вам созданный продукт, чтобы вы смогли оценить качество работы.
Получив доступ к портфолио, не просто посмотрите скриншоты и прочитайте описание, а установите 2-3 приложения на своё устройство, оцените удобство использования, внимательно изучите несколько экранов. Определите для себя, что вам нравится и не нравится в увиденной работе, хотите ли вы видеть подобный стиль в своём приложении.
Каким бы талантливым и опытным не был разработчик, если ваши взгляды во многом не совпадают или не нравятся его работы, ищите другого. Так вы избавите себя от возможных конфликтов и недовольства готовым продуктом.
Опыт работы с конкретной платформой
Существует ряд сторонних платформ для разработки приложений, которые позволяют разработчикам один раз написать код, а затем развернуть его для других платформ. Приложения, получаемые в итоге, называются кроссплатформенными и имеют ряд ограничений.
Нативные приложения — когда для платформ iOS и Android написан собственный код — выглядят и работают гораздо лучше. Если позволяет бюджет, ищите разработчика, создающего нативные приложения. Так вы получите продукт с удобным и красивым пользовательским интерфейсом, который будет использовать операционную систему и аппаратное обеспечение устройства, делая приложение более функциональным.
Если хотите создать приложение только для одной из платформ, найдите разработчика, имеющего большой опыт работы с нужной платформой. iOS и Android в разработке не связаны друг с другом, поэтому разработчик прекрасно справится с разработкой продукта для iOS, даже не имея представления о разработке на Android и наоборот.
Работал ли разработчик в вашей категории / отрасли?
Обычные пользователи редко задумываются над тем, какая работа предшествует выходу готового приложения. Между тем его разработка зачастую длится не один год. И в этом процессе задействована целая команда программистов, каждый из которых вносит свой вклад в создание инновационного продукта. По мнению самих специалистов, написать код с первого раза без единой ошибки сродни фантастике. Чтобы узнать, как создаются программы, мы побеседовали с ведущим iOS-разработчиком, проект-менеджером SFERA Дмитрием Нгуеном.
— Дмитрий, скажите, какие специалисты обязательно должны присутствовать в команде разработчиков?
— Если рассмотреть на примере разработки простого приложения, то потребуется 2 iOS-, 2 Android-, 2 backend- и 2 frontend-разработчика. Также нужны 2 дизайнера, архитектор, тестировщик и системный аналитик. Можно обойтись и без системного аналитика, но увеличивается время на разработку.
— Чем конкретно занимаются эти специалисты?
— Backend-программисты специализируются на серверной части. Frontend пишут код для видимой части приложения или сайта. Разработчики ядра приложения создают универсальное ядро, которое можно будет внедрять в разные платформы: на Android, iOS или web-сайт.
Архитектор разрабатывает данные, которые нужно передавать, просчитывает архитектуру всего приложения, как работает back и frontend, ставит задачу программистам. Он обладает знаниями по этим направлениям, в курсе возможных нюансов.
Системный аналитик решает сложные организационные задачи и распределяет их. Ищет варианты оптимизации процессов, согласовывает их с руководством. Взаимодействует с подрядчиками по вопросам внедрения новых решений, анализирует, нужны ли они бизнесу. Оформляет пожелания заказчика в бизнес-требования. Хорошо, если он в то же время и scrum-мастер, который помогает специалистам понять суть программной платформы, разрешает трудности в процессе разработки.
— В чем состоят ваши обязанности как проект-менеджера?
— Совместно с тимлидом мы распределяем задачи между командами программистов и обозначаем сроки выполнения. Предварительно всё согласовывается с руководителем проекта. Также на мне ответственность по контролю за действиями подрядчиков.
— Как вы выстраиваете работу в команде?
— Например, за 2 недели мы должны подготовиться к одному релизу. Мы обдумываем, что нам нужно для этого сделать. Далее распределяем задачи и проводим ежедневные митапы, чтобы оценить успеваемость команды и понять, на какой стадии находится разработка. Именно анализ задач и их распределение занимает большую часть моего времени как проект-менеджера. (В остальное время я пишу код для iOS.)
Для того чтобы выстроить эффективный рабочий процесс, необходимо понимать зависимость команд друг от друга. Так, у нас есть backend (серверная часть), frontend и разработчики ядра приложения.
Так, фронтенд зависит от бэкенда и ядра. А ядро — от серверной части и в какой-то мере от фронтенда, поскольку он находит актуальные баги. Бэкенд предоставляет функционал, который не виден пользователю, для того чтобы приложение работало как единая экосистема (в нашем случае). Ядро, зная структуру данных сервера, приступает к разработке. Параллельно фронтенд начинает верстку. Когда всё сверстано, ядро завершает свою работу и можно внедрять. То есть сначала идут работы по серверной части, затем на ядре и фронтенде. Такое распределение задач позволяет задействовать всех сразу.
— Как оцениваются результаты работы?
— Разработка продукта ведется по методологии Agile. Для более точной организации рабочих процессов и отслеживания результатов мы используем SCRUM и Kanban.
Задачи распределяются и реализуются согласно поставленным срокам. Мы должны их придерживаться. Решение каждой задачи оценивается по часам. Когда же задача закрывается, проверяется предполагаемое и фактическое количество часов. Выявленную разницу мы учитываем при постановке предположительного времени. В дальнейшем это помогает проводить более точный анализ временных затрат на реализацию той или иной задачи.
Как я уже сказал, спринты у нас по две недели. За это время происходит один релиз. Когда фронтенд заканчивает работу, мы делаем активные функции и отправляем всё это тестировщикам. Они в течение одного-двух дней проводят проверку. Непосредственно перед релизом мы правим баги и отправляем всю сборку на релиз.
— С какими проблемами в своей работе вы сталкиваетесь систематически?
— Основная проблема у нас — неточное ТЗ от отдела дизайна. При написании кода мы должны учитывать любое состояние окон, которое может быть в приложении. Все эти окна должны быть отрисованы. Все возможные недочеты должны закрываться еще на этапе проектирования приложения. И такие проблемы в основном возникают из-за недостаточности знаний и неопытности тех, кто разрабатывал и дизайн, и ТЗ.
— Что поможет избежать ошибок и переписывания кода?
— Большое значение имеет правильно составленное ТЗ. Этим также занимается системный аналитик. При этом нужно максимально декомпозировать все задачи для написания кода. Требования следует формулировать как можно конкретнее. Нам, программистам, при разработке очень нужна и важна точность. Идеального ТЗ в своей жизни я еще не видел. Но если что-то непонятно, всегда можно обратиться к знающему человеку и спросить. Самое важное в любой работе — это общение. Без взаимопонимания ничего не получится.
— Какие проблемы возникают при работе с программистами?
— Зачастую это непонимание того, что требует бизнес. Неумение работать в команде. Бывает, программист говорит: «Вот мой кусок кода — его не трогайте». А иногда появляется необходимость посмотреть этот код. И проект-менеджер «лезет» в этот код. А в дальнейшем могут возникнуть разногласия. Поэтому разработчикам очень важно научиться работать сообща. Проект-менеджер должен так выстраивать рабочий процесс, чтобы была достигнута задача заказчика в обозначенные сроки.
— Как избежать неприятных моментов в работе?
— HR должен правильно подбирать персонал. На собеседовании обязательно задать ряд вопросов, по которым можно определить, есть ли у кандидата soft skills. Это первый фильтр. Далее HR советуется с командой и принимает решение, сможет ли специалист взаимодействовать с коллегами. Такой подход уменьшит вероятность конфликтов в будущем.
— Дмитрий, расскажите, какие навыки необходимы для того, чтобы стать тимлидом или проект-менеджером?
— Чтобы стать тимлидом или проект-менеджером, помимо специальных знаний по разработке, необходимы хорошие soft skills. Самодисциплина, тайм-менеджмент, умение выстраивать личную и командную работу. Hard skills можно наработать, это сложно, но можно. Но наличие гибких навыков — на первом месте. Даже высококлассному разработчику будет тяжело работать в проекте без умения налаживать контакты с другими людьми. И самое главное — решать задачу бизнеса.
— Как сформировать команду из квалифицированных специалистов и где их найти?
— Основная масса таких программистов идут работать в известные компании. При этом хороший разработчик пойдет в стартап, если проект ему покажется интересным. В начале придется нанимать джунов и сформировать из них команду. Мидл не пойдет в проект, если там никого нет. Тенденция на рынке труда такова, что средних и старших разработчиков (middle и senior) привлечь очень сложно. Они соглашаются работать за достойную зарплату. Поэтому на их оплате труда сэкономить не получится.
И если, пребывая в проекте 2-3 года, мидл или сеньор не видят перспектив для себя в плане знаний, то они уходят из него. Получив опыт корпоративной разработки, они могут пойти работать в стартап и сформировать свою команду разработчиков.
При наличии высококлассных специалистов разработка отвечающего всем запросам пользователей приложения — лишь дело времени. А полноценному релизу такого продукта предшествует длительная и кропотливая работа его создателей — программистов. Необходимо согласовать множество рабочих моментов как со своими программистами, так и с подрядчиками. А иногда и полностью переписать тысячи строк кода. И при его написании учитывать все возможные действия пользователей.
Давид Григорян — эксперт в сфере разработки мобильных приложений на платформе iOS, главный инженер по разработке в Сбербанке. Он принимает активное участие в развитии сообщества, выступает на конференциях и публикует тематические материалы.
Давид расскажет о том, как можно построить карьеру в сфере мобильной разработки, а также опишет основные шаги, которые нужно проделать для достижения заветной цели. Мы затронем вопросы актуальности этой сферы, пути становления в данной профессии и основные ошибки, которые могут совершать начинающие специалисты.
Востребована ли профессия мобильного разработчика? Легко ли найти работу в этой сфере?
В 2021 году мобильная разработка остаётся одним из самых востребованных направлений. Ситуация с пандемией только дала толчок для её развития. Многие компании ушли в онлайн, одной лишь веб-страницы недостаточно для того, чтобы выживать в конкурентной среде, которая явно задаёт тенденцию на мобильные решения.
Даже в докоронакризисные времена на рынке была нехватка в мобильных разработчиках. Сейчас ситуация стала намного острее.
Согласно исследованиям, в России число специалистов в области мобильной разработки оценивается в 25-30 тыс. человек. Для тех предложений, которые есть на рынке, этого мало. Разница в зарплатах в этой области может составлять от 100 до 200 тыс. руб. для одной и той же позиции.
Из всего вышесказанного выходит, что найти работу для начинающего специалиста, имеющего пару-тройку проектов портфолио, не составит труда. К тому же формат удалёнки становится неотъемлемой частью в IT, а программ стажировок от крупных компаний становится всё больше.
Какие направления существуют в мобильной разработке? Есть ли смысл осваивать кроссплатформенные решения?
Существуют три основных направления в мобильной разработке: Android, iOS и кроссплатформенные решения (Flutter, React Native, PhoneGap).
Revolut , Санкт-Петербург, Москва, можно удалённо , По итогам собеседования
Для Android-разработки используются языки Kotlin и Java, для iOS — Swift и Objective-C. Ещё несколько лет назад основными языками для Android и iOS были Java и Objective-C. Однако с появлением новых языков многие проекты, в том числе крупных IT-компаний, стали использовать современные решения. Сейчас начинающему специалисту достаточно владеть знаниями об основной платформе, на которой он разрабатывает (iOS или Android), а также одним из новых языков программирования (Swift или Kotlin).
Нужно исходить из требований того региона, в котором вы собираетесь искать работу. Например, если вы живёте и собираетесь работать во Владивостоке, где основные вакансии по iOS требуют знания Swift, то очевидно, что изучение Objective-C будет неоправданным.
Кроссплатформенные решения в России не так востребованы как нативные (родные). Но у них есть своя ниша. В основном это стартапы, которые требуют минимальных вложений для реализации задуманной идеи на обеих платформах.
Это эффективная стратегия для выпуска MVP продукта, который впоследствии может быть презентован инвесторам и другим заинтересованным лицам для привлечения дополнительных средств на развитие. Спустя какое-то время, с привлечением дополнительных средств, такие проекты переписываются на нативные технологии, а их поддержка становится более предсказуемой и эффективной.
Сравниваем подходы нативной и кроссплатформенной мобильной разработки в 2021 годуКакие основные роли и задачи мобильного разработчика?
Разработчик в целом — это не только тот, кто набирает код на клавиатуре. Это специалист, который понимает конкретную бизнесовую проблему, которую ему необходимо решить с помощью этого кода. Мобильный разработчик — не исключение. Единственное отличие — это понимание особенностей мобильных технологий в целом (таких как push-уведомления, ограничения скорости интернета, зарядки и памяти).
Очевидно, что мобильные приложения — это та же фронтенд-часть приложения. Соответственно, отсюда вытекают стандартные задачи и проблемы: поддержка вёрстки для большинства девайсов, необходимость учитывать версии операционных систем и т.д.
Одна из основных проблем, которую необходимо учитывать в разработке тонкого мобильного клиента (основная часть и логика которого реализуется на бэкендe), — это поддержка обратной совместимости между различными версиями приложений. Одна из основных задач мобильного разработчика — выполнение поставленных требований с оглядкой на перечисленные выше ограничения и особенности.
Мобильные приложения могут выступать как:
- самостоятельные решения без необходимости интеграции с бэкенд-частью;
- основной компонент клиент-серверной архитектуры.
Как стать разработчиком мобильных приложений?
Если мы говорим про случай, когда у человека нет знаний и опыта в программировании, то стоит для начала изучить:
- один из языков программирования (Kotlin или Swift),
- саму платформу (Android или iOS),
- объектно-ориентированное программирование,
- алгоритмы и структуры данных (без фанатизма, только основные принципы).
Также нужно обязательно научиться гуглить. Кому-то этот совет может показаться оскорбительным, но это не так. Программисты всех уровней и мастей гуглят, без исключений. Умение правильно задать вопрос — навык, который потребуется и в дальнейшей работе с коллегами, если этот вопрос нужно будет адресовать им.
Стоит оговориться, что для начала разработки под iOS необходимы устройства от Apple. Как минимум нужно приобрести бюджетный Mac mini или MacBook на вторичном рынке. Для изучения одного из языков программирования и изучения самой платформы подойдут основные туториалы на сайте Apple или Android. В идеале — найти ментора, который поможет на первоначальном этапе и выстроит план обучения. Курсы тут тоже будут кстати, но не стоит надеяться, что после простого их прослушивания всё станет очевидным и понятным.
Достичь успеха получится, если заниматься самостоятельно, делая домашние задания и разрабатывая собственные мини-проекты, которые в дальнейшем станут отличным портфолио для поиска первой работы.
Какие ошибки чаще всего совершают новички?
Многие новички совершают ошибки при изучении новой области. Я не был исключением.
Насколько сложно войти в мобильную разработку в отличие от смежных направлений, например, веб-разработки?
Есть мнение, что вход в мобильную разработку сложнее, чем в тот же веб. Но я не согласен с этим аргументом. Для освоения веб-технологий как минимум потребуются знания о том, как работает интернет в целом, как действуют основные протоколы взаимодействий между клиентом и сервером. Добавьте сюда HTML/CSS/JavaScript, один из серверных языков (PHP/Python/Java/Go/Ruby), SQL и много чего ещё интересного. Это вовсе не значит, что мобильному разработчику не нужно понимать, как работает интернет, или иметь представление о смежных технологиях. Но это всё-таки не основной стек технологий, с которым специалисту нужно будет иметь дело изо дня в день.
Как известно, во фронтенд в целом легко входить, но сложнее поддерживать себя в форме. Обновления инструментов для разработчиков Apple и Android-платформ, выходят ежегодно, их нужно изучать и применять. Похожая ситуация и с JS-фреймворками для фронтенд-разработчиков.
Останется ли мобильная разработка востребованной в ближайшие годы?
Конечно, мобильная разработка останется востребованной. Несмотря на очевидную стагнацию в выпуске новых фич для смартфонов, ими всё равно продолжает пользоваться огромное число людей по всему миру. И большинство задач тоже будет решаться с помощью устройства, которое находится у вас в кармане. Как минимум в ближайшие 10-15 лет.
Читайте также: