Android junior требования

Sleepers never dig

Как стать Android разработчиком, самообучение и просто интересные факты из жизни.

среда, 15 октября 2014 г.

Основные требования для устройства на работу junior android developer

Основным требованием при устройстве на работу разработчиком Android является наличие готовых проектов на Google Play. Для добавления своего приложения в маркет вам нужно зарегистрировать аккаунт разработчика заплатив Google $25, что можно сделать на странице разработчиков.
Для того чтобы писать программы на Android вам нужно обладать таким наором знаний и навыков:

  • Java. Нужно знать основной синтаксис языка, хорошо понимать принципы ООП, оперирывать с основными типами данных и уметь писать простые програмы.
  • Многопоточность
  • XML. Верстка визуальной составляющей, подключаемые ресурсы, и многое другое в Андроид производится с помощью XML разметки.
  • SQL. Вам необходимо знать основные SQL запросы и уметь работать с ними а также уметь работать с SQLite — бд для Андроид.
  • Version Control Systems
  • HTML/CSS
  • Шаблоны проектирования используемые в Android (нелохая шпаргалка по шаблонам)
  • Знание Android SDK и умение работать со стандартными средствами Android.Об этом подробнее.
  • Клиент-серверная архитектура приложений

При устройстве на работу обычно дается тестовое задание. Например, написать программу для которая будет взаимодействовать с сервером и отображать информацию в устройстве. Также вам необходимо будет пройти собеседование по теоретическим знаниям.

Android junior требования

Хотел бы узнать у людей, которые работают сфере мобильного рынка. Каковы требования к человеку на должность android junior. Хотелось бы как можно по подробнее. А так же главный вопрос нужно ли иметь высшее образование?

Закрыт по причине того, что необходимо переформулировать вопрос так, чтобы можно было дать объективно верный ответ участниками Grundy, ЮрийСПб ♦ , pavlofff, katso, pavel 10 ноя ’16 в 19:30 .

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

IMHO, нет устоявшихся требований к младшему программисту, ни в какой области. Кто-то может позволить себе нанять человека вообще без опыта, пример:

Требования:

  • Приличное образование, представление об общей культуре разработки,
  • Знание java core (в самом простом смысле) все-таки нужно,
  • Понимание как работают REST-сервисы будет определенным преимуществом,
  • Понимание, что такое JSON будет определенным преимуществом, хотя там и понимать нечего.

Самый интенсивный курс доступен только на английском, поэтому хороший английский будет тоже определенным преимуществом, хотя и не очень существенным.

Условия:

  • На время обучения (это займет от двух недель до двух месяцев) обязательно посещать офис в учебные часы и в часы персональных занятий с ведущими программистами.
  • По завершению обучения мы выдадим вам тестовый личный проект, а потом подключим к одному из общих проектов.

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

Смотрите так же:  Расписка в даче денег

Поэтому уточнять нужно в каждом конкретном случае. Но одно можно сказать определённо: для джуниора не так важны знания какой-то узкой специфики, как общие знания (основ работы с БД, базовых алгоритмов, структур данных, понимания как работает компьютер, как устроены ОС, умение пользоваться инструментами разработки от VCS до отладки и профилирования. ). И трезвая оценка своей подготовки (то есть если вы задаёте подобные вопросы — смело вычёркивайте из резюме пункт про знание БД и срочно займитесь ликвидацией пробелов в этой области; если буковки O(n) вам ни о чём не говорят — зарыться в алгоритмы и т.д).

Как выглядит рабочий день Junior Android developer?

Добрый вечер, уважаемое DOU 😉

Сейчас активно развиваюсь в области Android разработки, есть огромное желание устроиться джуном в этом направление (уверен, не только у меня есть такое желание 🙂

Соответственно, появились некоторые вопросы:

1) А как же выглядит сам процесс работы джуна в области андроид разработки, в реальной компании, на реальном проекте? какие задачи отдают джуну (желательно примеры таких задач, например поправить формочку, сделать connection к удаленному серверу, сходить в базу и спасти мир) , думаю, понятно объяснил) Если не трудно, опишите вообще распорядок дня джуна на проекте)

2) какие требования вообще к джуну на андроиде? конечно, есть вакансии и в описании написан необходимый стек технологий, но очень часто пишут довольно расплывчато, вроде Design Patterns, REST services и т.д, без особой конкретики. То есть, вопрос в следующем: на сколько углубленно нужно знать паттерны, REST, сам Android framework , а также базы данных?

3) и еще очень интересующий вопрос: нужно ли Android разработчику знать С/С++? иногда мелькают вакнсии, в которых есть требование NDK и соответственно требуются скиллы по С и С++. Насколько часто встречается такая необходимость писать нейтив код на сях в Андроид проектах и стоит ли заострять свое внимание на изучении С++?

На этом у меня все, буду ОЧЕНЬ благодарен за всевозможные ответы, особенно от людей с подобным опытом, которые уже прошли путь Junior’а 🙂 всем добра 🙂

Фигачить формы весь день и получать втык от тимлида/синьора/любого мидла кто использует твой код.

А что скажете про знания в области ORM? Требуются ли эти знания для андроид дева? Также интересно про Spring, JDBC. И вообще, какие фреймворки нужно знать джуну, кроме андроид фреймворка, естественно?

Лучше сконцентрироваться на Java Core и Android SDK, поверьте — там копать не перекопать.
Spring и JDBC не нужно Junior Android dev-y, это придумали ностальгирующие энтерпрайзники.
Orm — все зависит от тим лида или команды, достаточно холиварная тема, можно сделать Hello World с любой orm либой, что бы иметь приблизительное понятие что это такое и с чем его едят.

джуны — это уже пристижно. зп 1000 уе. просто за желание столько не платят

А что ты делал что б стать хотя б стажером?

Почитал комменты. Блин, интересный день у джуна. Не то что Сеньора.
Пришел,открыл доу, почитал, пописал.
Открыл почтовый клиент, посмотрел какого говна тебе наслали, разгреб, раздал.
Пошел пообедал.
Открыл доу. Почитал, пописал.
Прогулялся по офису, раздал тумаков джунам.
Открыл доу, почитал пописал. Во и 6 вечера, можно и домой валить.

Смотрите так же:  Трудовой кодекс российской федерации глава 19 отпуска

Поддержу комент который: берешь и пилишь.
Все очень просто, берешь таску делаешь, идешь к ментору(синиору/мидлу/. ) говоришь вот сделал, что не так, получаешь по ушам, переделываешь, получаешь по ушам, переделываешь . рекурсия до тех пока ментор не пустит слезу счастья. Парочка таких рекурсий и все станет места свои.

довольно расплывчато, вроде Design Patterns, REST services и т.д, без особой конкретики. — а какую ты конкретику хотел? Наверняка если ты полный ноль, то пойдешь искать туторила по тому же REST. How make GET/POST request in android — получишь N — количество ответов от гугла, а посмотришь на них так все они разные. Кто то пишет через HTTP клиент кто то через URLConnection(ты знаешь какой вариант лучше/нужно использовать?), смотришь изучаешь. Прикручиваешь запросы в код, как ты это сделаешь? Через асинктаски, через Service, может через реактивную джаву. Как построишь обработчик риспоносов? Как будешь работать с инфой(парсить/мапить/хранить). Допустим ты просерфил и переварил все это, понял что есть пачка серд пати либ которые могут делать это за тебя, смотришь либы, смотришь их плюсы и минусы, взвешиваешь какая лучше в твоем случае.
Design Patterns аналогично — пилишь сам, смотришь что есть в опенсорсе, сравниваешь перфоменс. Делаешь набор снипетов которые часто используешь(но это по желанию) и оформляешь в либки. Разбираешься в готовых элементах из коробки. Разбираешься в стайлах, дрове. Делаешь свои какие то вьюхи(сложные). Делаешь их красивыми быстрыми и расширяемыми.
Это только капля в море, о чем тебя могут спросить на собеседовании по твоим же «расплывчатым» вопросам.
По поводу NDK — не обязаетльно, это единичные случаи где нужны знания NDK, НО базовые знания и понимания как с ним работать можно освоить за вечер два(обьекты, вызовы методов, колбеки).

А что скажете по поводу систем контроля версий? На каком уровне от джуна будут требовать тот же Git? То же самое интересно и про системы сборки — Maven, Ant или Gradle?
И еще, если не сложно, поведайте, нужны ли джуниор андроид разработчику навыки написания юнит-тестов? Заранее благодарю за ответы 🙂

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

Что должен знать джун андроид для трудоустройства?

Здравствуйте. Интересует вопрос, на который толком не могу найти ответ. Что должен знать джун андроид для трудоустройства?

14 комментариев

English
Java Core 6
SQL
WEB
Android SDK

Плюс помимо сдк джун еще должен знать всякие third-party либы(ActionBarSherlock например) и конечно же еще
1)Git/SVN
2)XML/JSON
3)HTTP
4)REST
5)Google Maps API
6)API всяких социалочек типа твиттера и фейсбука

Он же junior, что ему осталось выучить после такого списка?

Не, ну вы даете, это уже не джун получается, а не ниже мидла. 🙂 Правда всегда есть еще один момент: уровень оных знаний. Но набор для ждуна явно завышен!

В первые полгода-год работы он обязательно столкнется со всем вышеперечисленным. Мобильные проекты относительно короткие, там нет времени на долгое курение того, чего совсем не знаешь.
Конечно, не подразумевается, что джун будет всё это знать очень хорошо, но как минимум получить понятие и потыкаться, «разведать обстановку» в этом всём перед собеседованием надо.

Смотрите так же:  Бланок заявление на развод

К тому же, мобильные проекты часто маленькие с точки зрения занятости.
1 dev, 0.2 QA, 0.1 PM на один проект — нередкий случай. То есть, разработчика (даже если он джун) фактически некому контролировать. Потому и подразумевается, что он знает многое.

Пичальная тенденция в СНГ — считать, что джун уже что-то должен знать. Когда я собеседовался на джуна в канаде, меня просто спросили — имею ли я понятие, что такое jsp и умею ли пользоваться гуглом. Джун на то и джун чтобы не знать и учится.

Согласен, что junior берут в основном не за знание, а за желание его получить и адекватность. Также тенденция лепить одного junior на проект как единственного разработчика плачевна для проекта, заказчика и репутации конторы.

Судя по моему опыту, джуна часто берут по принципу «нравится/не нравится». А дальше — уже в зависимости от тараканов в голове у нанимателя.

Как правило это «плачевно» уже наступило, и соваться туда джуну = хоронить карьеру.

Развитие от Junior до Middle (Android dev.)

Всем добрый день. Интересует мнение более опытных людей сообщества по сабжу топика.
Я один из тех «войти в айти» который без технического образования взяв себя в руки сам с 0 начал учится и дорос таки до «войти» — устроился на работу Android джуном, вроде как даже работается и всё ок 🙂

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

Цель по тому плану достигнута, план как бы завершён, работа джуном найдена, но есть одно НО.
Помимо «войти», я хочу тут задержаться, задержаться надолго и стать действительно крутым разработчиком.

Для этого «задержаться» мне нужна программа дальнейшего роста.
Да на работе есть у кого поспрашивать, кто поднаправит, но всегда интересно мнение не только 1 стороны, да и думаю в будущем (если наберутся полезные ответы) этот топик поможет и другим людям.

В целом понимаю, что критерии jun/middle/senior абстрактные и лычки ничего не значат, поэтому скорее можно сформулировать цель не «Как дойти до Middle», а «как развиваться в целом».

В иннете даже абстрактной инфы по теме не нашел. Может есть какая-то карта, со списком навыков которые стоит качать в первую\вторую\третью\последнюю очередь. На что стоит обращать внимание особенно пристально, что не столь важно?

Интересно любое мнение по данному вопросу, как от андроид разработчиков, так и от остальных людей в любых из направлений IT. Можно даже не Jun-Middle, а 0-Middle, т.к. я могу не знать тех вещей которые должен знать Junior в глазах отвечающего.

Какие нынче требования к Junior Android Developer?

Давно понять не могу, кому и зачем они вообще нужны, эти junior developer-ы? Какой от них прок? Кофе заваривать?

По сути — принесите два-три готовых приложения на собеседование — будет о чем поговорить.