Сучасна диджитал-освіта для дітей — безоплатне заняття в GoITeens ×
Mazda CX 30
×

Какие вопросы задают на собеседовании Android Strong Junior?

Доброго времени и суток!

Живу в провинциальном городке и таких вакансий у нас мало. Через дня 3 собеседование. Опыта с android мало (пару приложений по работе с БД и базовыми вещами).

Хотел бы узнать у тех кто устроился, какие обычно вопросы чаще всего спрашивают на таком собеседовании? Что самое важное нужно знать разработчику под Android?

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

«Чому не iOS?» ;))

Лично я от джуна жду теоретических знаний Java, Kotlin, не особо глубоко копая, конечно же не жду объяснений как работает модель памяти и так далее, но основы теории обязательно и пара задачек, чтобы проверить что мозг жив)

А вот и подоспел 2К17
Что у на с по Джунам:
Все сопутствующие технологи нужно иметь опыт работы
(Dagger 2, Retrofit, Java — Rx, Realm, ORM ).
Естественно MVP, MVVM — куда без них
По Андроиду спрашивают достаточно детально вплоть до вопросов по реализации Кастомных вью, работе с базой. Отдельно спрашивают по Rest Api, OAuth2.0, Socket и работе с SQL.
Паттерны тоже все спрашивают.
Ну Java Core по умолчанию.
Ах да Kotlin
Так что кто читает пост сегодня — снимайте розовые очки , из за наплыва стада нью-разрабов компании планки свои уже давно задрали кверху...

Сплошная глупость. То что описал автор, это вопросы на мидла. Сомневаюсь что за 2 года так сильно упала планка.
Главное ходить по собеседования и набираться опыта. По технологиям надо разбираться:
— ООП
— Java core (сделать упор на коллекции часто спрашивают, про переменные, память и тд),
— Многопоточка (можно сильно не углубляться)
— выучить жизненные циклы разных компонентов
— подучить различные компоненты андроида
— желательно подучить котлин (но не всегда требуют)
— Dagger 2, Retrofit, Rx — огромнейший плюс
А так, от джуна не требуется прям глубоких знаний. Посетив 3-4 собеседования можно получить полный список вопросов. Желательно конечно опыт написание приложений, но и без него берут.

Dagger 2

За 8 лет видел 3 проекта, где он был. Из этих 3-х из 2-х его можно было выкинуть, они стали бы намного проще.
Глубоко второстепенная штука в мобайл разработке, которую я бы и у сениоров особенно не спрашивал.

Естественно MVP, MVVM

MVP — совершенно бессмысленный для Андроид паттерн с момента появления связки LiveData/viewModel.
Только MVVM. И только с полным DataBinding.

вплоть до вопросов по реализации Кастомных вью,

Это бывает нужно в 1 из 5 проектов.

работе с базой

1 из 10 проектов.

OAuth2.0, Socket

Ни одного проекта с этим за 8 лет в глаза не видел ни в одной компании.

работе с SQL

Выше говорил, что это крайне редкий случай, когда те базы нужны. И в этих случаях вполне ок погуглить тот SQL.

из за наплыва стада нью-разрабов компании планки свои уже давно задрали кверху.

С появлением Kotlin и JetPack, порог входа существенно вырос, т.к. от новичков с ходу требуется знание обоих языков и кучи новых фреймворков.

От джуна ничего особо и не ждут...вам уже правильно написали: покажите хороший уровень знания и понимания Java Core + базовых вещей для платформы Android (жизненый цикл основных элементов, работа с фрагментацией ресурсов и т.п.) и дело в шляпе. На вопросы по технологиям которые вы не знаете, лучше сразу говорить что не знаете/не работали. Лучше ответить мало но четко, чем что-то мямлить (показать что вы умеете рассуждать тоже вариант, но тогда сразу предупредите что это мысли в слух и вы реально с технологией не работали), все знать невозможно, в общем — чего-то не знать, это не порок и с опытом проходит.

какой наивный ответ для 2017 года...

все сопутствующие технологи нужно иметь опыт работы
(Dagger 2, Retrofit, Java — Rx, Realm, ORM ).
По Андроиду спрашивают достаточно детально вплоть до вопросов по реализации Кастомных вью, работе с базой. Отдельно спрашивают по РестАпи, аутентификации, Сокетам и работе с SQL.
Паттерны тоже все спрашивают. Ну Джава по умолчанию.
Так что кто читает пост сегодня — снимайте розовые очки , из за наплыва стада нью-разрабов компании планки свои уже давно задрали кверху...

Дивно. В мене і на мідла таке не питали. Та ще й одночасно і Realm, і ORM, до купи сокети... Мене по сокетах не ганяли навіть у продуктовій компанії, де на них весь проект зав’язаний. Це ви зі свого досвіду пишете чи просто хочете поспілкуватися?

Скорее второе. Или чуваку просто не повезло на собеседовании.

не так давно менял работу, собеседовался в 5-6 компаниях на позицию мидла. Только в одной компании собеседование было именно по андроиду (в неё и устроился в итоге), на остальных собеседованиях гоняли по джава кору, в общих чертах интересовались предыдущими проектами. В одном месте вообще целый час беседовали только о временной и пространственной сложности алгоритмов. Короче я бы на твоём месте сейчас максимально подтянул знание языка.

и что по коре спрашивали ? просто интересно

структуры данных, многопоточность, внутренние классы, оверрайд методов... в таком духе

ехх ... как всегда, теже вопросы что и на половине сайтов в гугле ...

Как минимум надо знать жизненный цикл активити и уметь гуглить на тему «android interview questions» и аналогично по джаве.

Спасибо, погуглил перед тем, как писать. Это понятно)) Хотел узнать, что требуют конкретно знать в украинских конторах по android разработке, знания есть, хочу понять на что сделать акцент. Буду весьма признателен, если укажите 3-4 самых важных темы.

Я бы спросил:
1) Как устроен HashMap
2)Разница между ArrayList и LinkedList
3)Разница между HashMap и LinkedHashMap
4)Что такое TreeSet
5)Разница между ArrayList и CopyOnWriteArrayList
6)Для чего нужно переопределение equals и hashcode
7)Многопоточность в Java
8)Паттерны
По андроиду
1)Что такое BroadcastReceiver
2)Что такое Intent
3)Разница между AsyncTask и Service
4)Fragments и с чем его едят
5)Как создать кастомный контрол
6)Жизненный цикл Activity

Раз пошла такая пьянка, то тогда может сразу и для Middle с Senior-ом требования распишите? :)

все тоже самое + дать ссылку на google play своих работ

Хм, как-то просто получилось, но сгодится, спасибо :)

А интересно, есть какие-то количественные цифры, которые отличают мидла от синеора в мобайл деве? Например < 3 опубликованых приложений это мидл, >= 3 — синиор. Или же просто смотрится на качество и объем работ и даже по одному приложению можно признать синиора ну или даже по 5 — не признать?

Да и как быть, если приложение писалось не сольно, а командой, в которой ты принимал участие (ну или несколько таких приложений)?

это ж не пол определить, пощупав первичные признаки.
определение позиции - это попытка определить, втиснется ли человек в ожидания конкретной позиции в конкретной команде на конкретном проекте конкретной компании или нет. где-то синьор — это «сносно болтает по-английски, изображает активность, не хамит заказчику и может раздавать оплеухи джунам, когда сроки горят», а где-то джун — это «разработчик, который знает свою предметную область, неизвестное находит в интернете за полчаса, ошибается в сроках максимум на 50%, вид имеет лихой и придурковатый ©». вот и идет прикидка.
а строгих рамок нигде нет — и заморачиваться не стоит
P.S. ну, вообще, думаю, компании, крупнее 10 человек, задумываются о некой «всех-под-одну-гребенку» аттестации, явной или неявной. ибо вдруг придется перебрасывать в другую часть компании/проекта, надо хоть немного представлять, чего ждать.
но в целом — лучше не заморачиваться «синьор ли я или нет» — нет смысла, только лишнее самокопание.

А если попытаться абстрагироваться от всего остального и оставить только технические знания и опыт и попытаться прикинуть, что же должно отличать этих трех специалистов разных уровней друг от друга (а контексте разработки под Android)? Как раз та ситуация, когда _нужно_ как-то уже ранжировать людей между собой, а не когда все еще «подойдет/не подойдет», когда рекомендации общего характера вроде «как нанимать» и «кого брать» несколько позднова-ты уже.

3 опубликованных хеллоуворда, калькулятора и органайзера это миддл? А если еще и крестики нолики опубликовал в play то это теперь вообще синьор?

Судя по кандидатам на собеседованиях, да.

Возможно потому, что те, у кого действительно стоящие работы в play — редко ходят по собеседованиям.

Предлагаешь не смотреть на работы в play вообще? Или может быть какими-то другими способами оценки поделишься?

Работы в play как способ оценки?
У меня там валяются пару работ. Последний раз притрагивался к их коду полтора года назад. Сейчас иначе как с усмешкой об их коде вспомнить не могу. Если работодатель посчитает их объективным индикатором моей квалификации, не глядя на дату последнего обновления, так даже лучше, устраиваться к неадекватному работодателю — это всегда потеря времени и сомнительная выгода.

сейчас почти все просят к резюме прикладывать ссылки на законченные проекты.
трудно представить проект на Андроид, который нигде не публикуется, ну разве что какой-то кастомный имидж писать, да и то, это не совсем разработка приложений на Андроид

Да понятно, у меня в резюме они тоже есть. Но это едва ли способ оценки текущей квалификации.
Что до проектов, которые не публикуются — проект может быть закрыт по не зависящим от разработчика причинам — такое бывает часто.

Иногда еще по каким-то причинам NDA запрещает в течении какого-то срока разглашать свою работу над определенным проектом. Есть еще b2b решения, которые распространяются напрямую клиентам, а не через сторы.

может и так, но это плохая практика: юзерам требуется разрешить установку приложения из неизвесного источника, можно подцепить троян. Надо использовать Google Play Private Channel для этих целей

трудно представить проект на Андроид, который нигде не публикуется
Да хватает. Кроме Google Play есть и другие сторы, некоторые кастомеры лично распространяют приложения (hockeyapp, например). Я уже молчу о B-to-B решениях.
Также кроме приложений имеются и библиотеки которые далеко не всегда публичные.
Разница между AsyncTask и Service
Разница между огурцом и стиральной машиной )

Ты не поверишь, но на собеседовании спрашивают

Підписатись на коментарі