Ни для кого ни секрет, что работа высококвалифицированного разработчика достаточно неплохо оплачивается.
Вилки зарплат можно легко найти на hh и для разных городов они могут достаточно сильно отличаться, однако я больше чем уверен, что если вы хороший программист в своей области - то одноклассники в вашем городе точно будут жалеть о том, что вместо уроков математики курили сигареты на заднем дворе школы. Особенно это касается мобильных разработчиков - iOS или Android. Что нужно знать и как подготовиться к собеседованию на такую позицию - об этом читайте далее на телеграм-канале Найти ИТ
Итак, вы нашли вакансию мобильного разработчика в вашем городе и хотели бы попробовать себя в этой роли. Что должен знать мобильный разработчик, чтобы успешно пройти собеседование? В данной статье будет рассмотрен набор для Android - разработчика, а в следующей мы обсудим iOS
1) Хорошее знание языка. Java/Kotlin
В последнее время набирает обороты язык программирования Kotlin - многие проекты начинаются именно с него. Он более гибок
чем Java и большинство Android-разработчиков начинают именно с него. Нужна ли Java в этом случае? Безусловно! Не забывайте, что помимо новых проектов есть legacy-код, который необходимо поддерживать и который написан на Java. Так какие же темы подтянуть для этого:
Методы Object, hashCode() и equals()
Boxing & Unboxing
Особенности работы со строками в Java
Способы синхронизации
Коллекции в Java
Виды исключений
Это тот самы must have список по языку, двигаемся дальше
2) Знание SDK Android
Для мобильного разработчика очень важно знать свою платформу - ее минусы и плюсы, чтобы использовать те компоненты и классы, которые лучше всего подходят для текущей бизнес-задачи.
Жизненный цикл Activity/Fragments
Activity Launch modes
Способы общения между Activity и Fragments, Fragment и Fragment
Способы асинхронного взаимодействия (Services, AsyncTask, IntentService) - если многие ими не пользуются, это не значит, что можно ими пренебречь. Фрэймворки приходят и уходят, а база остается!
Как избежать утечек памяти в Android
Как сделать CustomView, какие методы нужно переопределить.
3) Библиотеки и Фрэймворки
Здесь могут быть вопросы по
RxJava 2 (Различие 1 vs 2), RxRelay, AndroidRx
Dagger 2
Realm, OrmLite, GreenDao
Retrofit
Архитектурные компоненты от Google (Room, LifeCycle)
4) Архитектурные паттерны и Шаблоны проектирования
MVP, MVVM, VIPER, MVI
KISS, SOLID
Adapter, Builder, Factory, Singleton
Конечно это не полный список, но по этим темам вас точно будут спрашивать, так что теперь у вас есть материал по которому вы можете проверить себя и попасть на позицию мечты. Всем удачи!
Понравился материал? Подписывайся на https://t.me/android_school_ru
Все самое интересное в нашем телеграм-канале https://t.me/android_school_ru