На базе операционной системы Android работает около 75 % устройств по всему миру. Это Smart TV, смартфоны крупных брендов (Samsung, Huawei, Xiaomi), планшеты, ноутбуки, умные часы и многое другое. А значит, работы у Android-разработчиков – непочатый край. Реально ли освоить профессию с нуля, что учить в первую очередь и как получить работу Junior-специалиста – рассказываем в блоге Lemon School.
Android developer – это перспективно?
Давать прогнозы перспективности той или иной профессии в наше время – дело гиблое. Технологии кардинально меняются, и то, что было супер-востребовано 5 лет назад, может потерять актуальность. Тем более в IT-индустрии, где разработчики не останавливаются на одной профессии и постоянно прокачивают скилы.
Но мы можем наверняка утверждать две вещи:
- в ближайшие годы Mobile-разработка будет только набирать обороты;
- освоив инструменты Android Development, вы всегда сможете найти себе место в мире айти. И очень даже прибыльное, но об этом позже.
В контексте Mobile Development напрашивается еще один выбор: между Android- и iOS-разработкой. И там, и там есть свои плюсы и минусы. Разработчики любят Android за открытый код, но чуточку недолюбливают за большое количество устройств. К слову, для кого-то это преимущество, ведь погрязнуть в рутине не получится. iOS же хвалят за прозрачность документации и обновлений, что упрощает жизнь разработчикам.
Вот еще несколько фактов в пользу Андроид:
- по данным Business of Apps в мире насчитывается около 3 млрд активных смартфонов, 75% работают на ОС Андроид;
- Android Developer работает с открытым исходным кодом и языком Java, который вполне реально освоить, имея базовое понимание кодинга;
- по исследованию компании InMobi пользователи гаджетов на Андроиде более лояльны, чем клиенты iOS. Мелочь, но приятно для ментального здоровья программиста.
Ну а теперь перейдем к сути – чем занимается Android Java Developer?
Этот специалист создает и поддерживает программы и приложения, которые работают на ОС Android. От разработчика зависит, насколько удобным, функциональным и популярным будет приложение. Конкретный список обязанностей зависит от места работы. Задачи сводятся к таким пунктам:
- Android Developer это в первую очередь про разработку мобильных приложений, от изучения брифа и техзадания до разработки архитектуры приложения;
- анализ UX;
- написание кода – ключевой скил разработчика;
- тестирование и доработка продукта. Например, оптимизация ресурсов, которые потребляет приложение;
- загрузка софта в Google Play;
- поддержка реализованного продукта, разработка обновлений;
- защита приложения от потенциальных угроз, защита чувствительных данных;
- ведение документации, инструкций для продукта.
Что должен знать Junior Android Developer, чтобы выполнять эти задачи? Ниже – план освоения профессии разработчика.
Что нужно знать Android разработчику и какой язык учить?
Список hard-скилов разработчика Андроид довольно длинный. И начнем мы с языка.
English
Правда, не с языка программирования, а с английского. Большинство полезных материалов для Android-разработчиков написано на инглише – язык пригодится еще в процессе обучения. Да и в дальнейшем при работе с рынком ЕС / США техническую документацию придется вести на английском.
Java Vs. Kotlin
Следующий пункт – язык программирования. Это база из того, что нужно знать для разработки приложений Android. Must have для работы с Андроид – Java и Kotlin. Последний считается молодым языком, его разработали в 2011 году на смену Джаве. Цель была упростить сложный и громоздкий язык. Но все же программисты советуют сначала изучить Java, а уже потом браться за Kotlin – так будет проще.
Java курсы онлайн в Лемон Скул помогут вам закрыть сразу два гештальта: выучить и язык программирования, и подтянуть IT-English.
Инструменты Android и не только
Язык программирования – это база, на которую нужно надстроить массу других знаний. В первую очередь – о работе ОС Андроид. Для начала можно скачать Android Studio – интегрированную среду разработки (IDE). Изучите официальную документацию Developer Guides, разберитесь с Android Jetpack – это унифицированные решения для разработчиков от Гугла.
Фреймворки, библиотеки и платформы – значительно упрощают жизнь Android-разработчика. Самые востребованные: Flutter, React Native, Unity 3D, UIKit, Xamarin.
Следующий пункт – Android SDK (software development kit) – универсальный набор инструментов для создания и тестирования.
Не обойтись и без дополнительных инструментов вроде Git – системы контроля версий проекта, с которой взаимодействует Android Studio. Также в вакансиях часто требуют понимание SQLite – реляционной базы данных. Еще из неочевидных требований к Android Developer – HTML, CSS и XML.
С последнего мы и рекомендуем начать обучение программированию онлайн. Нелогично? Но это реальный путь, как стать Android разработчиком с нуля. Если сходу взяться за сложную Джаву, есть риск забить на все. Потому что освоить этот язык без технического бэкграунда почти нереально.
В целом ваш путь будет выглядеть так:
- Изучите базу кодинга: верстку (HTML, CSS) и простые языки объектно-ориентированного программирования (PHP, JS).
- Освойте язык Java на онлайн-курсах.
- Самостоятельно разберитесь в Android-инструментах. Официальная документация, книги, видео-обучалки – материала масса.
- Отточите навыки на реальных задачах. Банально просматривайте заказы на Upwork и пробуйте выполнить задачу просто для опыта. Потом результаты можно добавить в портфолио и блеснуть опытом на собеседовании.
Android разработчик требования при приеме на работу
Hard-скилы, которые мы описали в предыдущем пункте – как раз и есть кластер требований к Junior Android Developer. Мы проанализировали открытые вакансии и собрали стартер-пак начинающего разработчика:
- английский В2-С1. Львиная доля вакансий в принципе составлены на английском;
- языки программирования: Джава или Котлин;
- знание Java, Android SDK, Android UI/UX Guidelines, SQLite, Google Play API, XML, JSON, HTTP – список технических навыков очень вариативен;
- понимание азов программирования: ООП, структуры данных;
- софт-скилы: умение работать в команде, адекватно оценивать дедлайны.
На какую зарплату можно рассчитывать, зная и умея все это? Скорее всего, вы начнете с позиции Trainee – когда работодатель вкладывает в вас опыт и учит реальным навыкам. Одним словом, работа за еду. Ну а дальше – вполне приятные перспективы. В Украине Junior-разработчик получает в среднем 900$, Middle – 2700$, Senior – 5000$.
Андроид-разработка – это игра вдолгую, поэтому вам нужно здраво оценивать свои силы и желание работать именно в этой нише.