- PVSM.RU - https://www.pvsm.ru -

В сентябре на Хабр Карьере завершилась неделя мобильной разработки. Карьерная неделя — это что-то вроде дня открытых дверей, который длится всю неделю. В гонке за специалистами участвовали четыре компании: Мегафон [1], Домклик [2], Билайн [3] и Авито [4].
В конце недели специалисты могли задать свои вопросы представителям компаний-работодателей. Мы выбрали самые интересные из тех, что не успели обсудить на круглом столе, и отправили спикерам.
Поговорили о работе мобильных разработчиков в текущих условиях, обучении, трудоустройстве, стажировках, технологиях и о многом другом.
Руководитель разработки юнита Performance, Avito
Ведущий разработчик, билайн
Head of mobile, Домклик
Руководитель Android-разработки, Мегафон
Тимур: Опыт работы в top IT-компаниях, образование, опыт работы на backend / соседней мобильной платформе, как часто «прыгает».
Петр: На опыт, стек технологий, реальный уровень знаний, умение решать практические задачи.
Александр Лесников: Стаж работы, стэк применяемых технологий, с чем работал, какие достижения, где учился программировать, если джун или стажер.
Александр Соболь: Указать опыт работы, проекты в которых участвовал, роли которые выполнял. Можно дополнить стеком технологий, который хорошо знаешь. Именно хорошо знаешь, а не попробовал/прочитал мануал. На собеседовании обязательно глубоко копнут.
Тимур: Есть на avito github [5]. Если коротко, то мы смотрим не только на экспертность и инженерные навыки, но и на самостоятельность, способность вести большие проекты, инициативность, самонаведение, бизнес-экспертизу, обучение других сотрудников и прочие soft skills.
Петр: Система грейдов недавно прошла пилот для веб-фронтов, сейчас внедряется для системных аналитиков и до конца года должна быть раскатана на все остальные роли.
Александр Лесников: Да, есть. Каждый сотрудник понимает возможности роста как вертикально, так и горизонтально — в смежные направления.
Александр Соболь: Мы находимся в процессе формирования карты горизонтального и вертикального роста сотрудников внутри подразделения, а также связанной с ней системы обучения необходимым для каждой позиции компетенциям.
Мы хотим, чтобы наши сотрудники постоянно росли и развивались, а платим мы, не исходя из того, сколько обучающих курсов ты прошел, а исходя из результатов твоей работы.
Тимур: В целом это приветствуется, но рабочие задачи в основном не будут способствовать освоению соседних зон, если только на то нет бизнес-необходимости.
Пример: нужно зарезилить фичу, один бэкендер уволился, второй заболел, третий в одиночку всё сделать не может. Очень круто, если в такой ситуации мобильщик сможет подхватить какие-то базовые бэкендовые задачи. Но в обычной ситуации считается более эффективным, если мобильщик делает свои задачи. Однако почти всегда от мобильных разработчиков ожидается, что они понимают протоколы взаимодействия с бэкендом и проектируют апи, с которым им будет удобно работать.
Петр: Стоит иметь понимание как минимум. Развитие в эти сферы в любом случае будет плюсом и повысит привлекательность на рынке труда.
Александр Лесников: Если есть желание, то можно, но мы не принуждаем. т.к. мы используем кроссплатформенные решения, ребята из iOS иногда делают тривиальные задачи на Kotlin, но нет необходимости понимать, как оно работает, при устройстве на работу.
Александр Соболь: Вот чтобы прямо углубленно изучать, думаю не стоит, без практики навык быстро забудется. А вот чтобы говорить на одном языке с девопсами и бэкендерами — стоит изучить основы клиент-серверного взаимодействия и попробовать развернуть свой кластер kubernetes (или что у вас в компании используется), запустить на нем простое приложение и попробовать самому поадминить его. Я думаю, этот минимум будет полезен любому разработчику.
Тимур: Насколько я знаю, с трудоустройством иностранцев есть трудности, если быть чисто белой компанией. Может быть, поэтому, а может быть, потому, что сильные иностранцы сами не очень к нам хотят, такие примеры среди мобильной разработки я в Авито не припомню, а вот у top management’а ситуация обратная.
Петр: Хотели бы всё увидеть: и мотивацию, и hard skills, и soft.
В билайне существует направление BeeInterns, в рамках которого функционируют школы как для сотрудников, так и для всех желающих, кто хочет освоить новую IT-специальность. Целевая аудитория школ — студенты, а также желающие расти в сфере IT. Обязательное условие — пройти вступительные испытания в формате тестирования, либо в формате решения кейсов. Все лекции обычно читают эксперты билайна, на протяжении всей программы учеников поддерживают наставники — действующие эксперты компании.
Александр Лесников: У нас работают иностранные сотрудники, к ним требования такие же, как и к остальным кандидатам, единственное условие — сотрудник должен работать с территории РФ.
Александр Соболь: К сожалению, нет.
Тимур: Бывает 6 на 12. Part-time, я думаю, возможен ограниченное время, если вы заканчиваете учебу или типа того, но целевая картинка — классическая пятидневка.
Александр Лесников: Не рассматриваем. У нас только full time.
Александр Соболь: Не рассматриваем.
Тимур: Я думаю, все понимают, что нужно изучать хайповые библиотеки для декларативного описания интерфейса (Compose, SwiftUI), но далеко не во всех компаниях уже готовы их внедрять. В общем и целом мобильный стэк +- одинаковый у всех, если говорить про крупную разработку. А вот для стартапов есть разные решения для кроссплатформы или hot reload’а, но по моему опыту, когда этот стартап покупается какой-то крупной компанией, всё приходится переписывать на нативщину.
Вообще сейчас становится всё более популярным backend driven ui — когда вы с бэкенда управляете не только контентом, но и стилем его отображения, поведением приложения и тд. Это нужно, чтобы шипить изменения в приложения мгновенно (как на фронтенде) и не ждать ревью в магазине приложений. Однако industry standard решения, насколько мне известно, сейчас не существует, и все используют внутренние наработки. Кое-что опенсорсится, но скорее для хайпа.
Петр: В Swift — UIKit, RxSwift, SwiftUI, Combine и т.д.
Александр Лесников: Самое главное —понимать основы языка, на котором предстоит работать и знать стандартные SD, которые предоставлены из коробки.
Александр Соболь: Фундаментальные. Фреймворки часто меняются, пару лет назад в android был Rx, сейчас —корутины и Flow, эти знания устаревают. Все эти фреймворки построены на технологиях, разработанных десятки лет назад, кардинально нового ничего не появляется. Если освоить базу, не составит труда перейти с фреймворка «А» на фреймворк «Б». Да и из гайдов сможешь почерпнуть гораздо больше.
Тимур: Нормально. Но нужно подстраиваться под московский часовой пояс и приезжать хотя бы иногда на встречи с командой, стратсессии и тд. Это решается индивидуально в каждой команде.
Петр: В билайне удалённая работа появилась еще в 2016 году. У нас в команде работают люди из разных городов. В целом, всё зависит от отдела и руководителя, но у нас, например, может быть 100% удалёнка.
Александр Лесников: Удаленно работаем только с территории РФ.
Александр Соболь: Наша компания поддерживает три формата работы: офис (есть во многих крупных городах), гибрид и полностью удаленный.
Тимур: Нет, не планирует. Офис рассматривается скорее как возможность для команд организоваться вместе вживую. Как приятный бонус.
Петр: Не планирует.
Александр Лесников: Все работают так, как им комфортно.
Тимур: Вы приходите, вам назначают ментора, дают первичные задачи, озвучивают цели на испытательный срок и дают здоровенный такой чеклист с кучей полезных материалов и обучений.
Александр Лесников: Есть отдельная страничка, на которой описано, как первый раз собрать проект и запустить, а также вся основная информация, которая требуется для работы в нашей команде. Также каждому сотруднику-новичку прикрепляется Бадди, помогающий освоиться в компании.
Тимур: Потный вопрос. Смотря что такое интересная задача. У каждого это понимание разнится. Кто-то хочет писать кодяку круглыми сутками. Кто-то кайфует от свободы выбора и продумывания, чем он будет заниматься в следующем квартале. Кому-то хочется рулить другими инженерами и отвечать не только за себя, но и за итоговый результат поставки фичи. Кто-то любит общаться с инженерами и учить их чему-то новому. В любом случае, всё всегда приедается. Кто-то любит сложные задачи, когда нужно принять важное и сложное решение, не имея в руках достаточной информации, линии аргументации и кого-то, кто может посоветовать правильный ответ. Пальцем в небо я бы сказал, что рутины примерно 30%, хотя доказать это не смогу.
Александр Лесников: Рутины не так много, так как постоянно новые задачи.
Тимур: Следить за новостями в нашем паблике в ВК [6] и подать заявку, когда будет открыт набор.
Петр: Оставить заявку на сайте.
Александр Лесников: Пройти собеседование на стажера.
Александр Соболь: На данный момент все команды укомплектованы, следите за обновлениями на сайте.
Тимур: Крепкий по хардам и бодрый, активный мидл. Любим тех, кто не просто исполнитель, но и драйвер, вдохновитель — это если говорить про команду платформенной разработки.
Петр: SOLID, UIKIt, Архитектурные паттерны, проводить Code Review. Умение воспринимать критику, слушать наставления, учиться по Code Review.
Александр Лесников: Стажеру главное — понимать основы свифта/котлина и ios/andriod SDK, дальше всё смотрится индивидуально.
Тимур: В платформу джуном устроиться практически нереально. Придется прокачиваться.
Петр: Заниматься домашними проектами, набирать опыт, смотреть обучающие материалы, ходить на собеседования.
Александр Лесников: Учиться и искать предложения, они всегда есть.
Тимур: На стажировку можно! Обычно на стажировку приходят студенты. 80% стажеров остается после стажировки.
Петр: Можно.
Александр Лесников: Да.
Тимур: В IT, мне кажется, у половины людей не IT-образование. Так что всё возможно. И, может быть во мне говорит любящий нативщину скептик, но, имхо, лучше развиваться в сторону общепринятых стэков, т.к. так будет проще трудоустроиться на рынке.
Петр: Да, может.
Александр Лесников: Конечно.
Александр Соболь: Может, если сам получил необходимые знания. Чтобы писать хорошие приложения, необходимо знать платформу, под которую пишешь приложения. Поэтому нужно учить и Adnroid, и iOs.
Тимур: Мне кажется, для mvp и быстрой проверки гипотез кросс-платформа вполне себе ничего. Но когда компании придется решать проблемы масштабирования, ей проще будет идти классическим путем. Хотя кроссплатформа тоже бывает «на постоянку». Взять те же браузеры или карты — ядро там на каких-нибудь плюсах.
Александр Лесников: Мы используем кроссплатформенные решения только для реализации бизнес-логики, отображаем все нативно.
Александр Соболь: Тенденция есть, но не такая, что все ломанулись переписывать на флаттер. Кросс-платформа хороша в одних случаях, в других — натив, это инструменты разработки, и при старте проекта необходимо тщательно подходить к их выбору.
Тимур: Я думаю, декларативные, реактивные и прочие новомодные фреймворки скоро перевесят классические, т.к. молодые умы учат уже только свежачок, и компаниям в будущем будет всё труднее искать кадры на старый стек технологий.
Петр: SwiftUI, Combine, новые фрэймворки Apple.
Александр Соболь: Надо следить за техно-гигантами, они задают эти тренды, остальные компании подстраиваются под условия рынка.
Тимур: Ой, я такой себе веб-разработчик, не обидеть бы тру-фронтендеров, респект им и уважуха, но мне кажется, что ключевое отличие в архитектурных паттернах. Плюс на фронтенде, по моим ощущениям, чуть больше надо заморачиваться на тему информационной безопасности и перформанса. В целом фронтенд, на мой взгляд, посложнее за счет того, что это тру-кроссплатформа, плюс он появился намного раньше, поэтому больше оброс разными шокирующими мобильщиков приколами типа транспиляции.
Петр: Разные платформы, разные ОС, разные языки.
Александр Лесников: Невозможностью релизить мобильное приложение каждую секунду.
Тимур: Крутых ребят на рынке немного: они либо хорошо сидят в своих компаниях, либо уехали за границу, либо, такое ощущение, что выходят на рынок, задирают зп и идут работать в финтех.
Александр Лесников: Ничего не поменялось.
Тимур: Только начали ресерч. Может быть, через год.
Петр: С этим команда не торопится, так как SwiftUI всё еще сырой, есть ограничение по минимальной iOS, большой багаж наработок по UIKit, в т.ч. дизайн система. Всему свое время.
Александр Лесников: Как только появится такая необходимость.
Тимур: Переход всегда рассматривается, т.к. за этим будущее, но пока открытых вопросов слишком много и всегда есть что-то более ценное в моменте, поэтому мы не спешим. Если бы у нас было всё очень плохо, и текущая архитектура дико мешала бы масштабировать приложение, то я думаю, что мы бы действовали активней, а пока просто наблюдаем.
Петр: Когда-то рассматривается, учитывается — см. выше.
Александр Лесников: Возможности переходить рассматриваются, но перед тем как перейти, смотрим, что нам это даст и насколько проблематично и трудозатратно это будет происходить.
Тимур: Трудно оценить уровень покрытия тестами, но у меня сложилось впечатление, что продуктовые команды довольно старательно пишут UI тесты, чтобы экономить на регрессе, а Unit тесты пишут реже, потому что они не всегда подходят.
Александр Лесников: у нас невозможно в прод отправить изменения, которые не покрыты тестами.
Тимур: Как-то меньше про него слышу в последнее время, подозрительно.
Список книг, ссылок, статей, подкастов, курсов, всего остального — что обязательно нужно прочитать мобильному разработчику.
Э. Гамма «Приемы Объектно-ориентированного программирования»;
С. Макконел «Чистый код»;
Э. Танненбаум «Современные операционные системы».
Автор: Хабр Карьера
Источник [7]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/upravlenie-personalom/379896
Ссылки в тексте:
[1] Мегафон: https://career.habr.com/companies/megafon?utm_source=mob_2022_news_megafon
[2] Домклик: https://career.habr.com/companies/domclick?utm_source=mob_2022_news_domclick
[3] Билайн: https://career.habr.com/companies/beeline?utm_source=mob_2022_news_beeline
[4] Авито: https://career.habr.com/companies/avito?utm_source=mob_2022_news_avito
[5] avito github: https://github.com/avito-tech/playbook/blob/master/developer-profile.md
[6] паблике в ВК: https://vk.com/avitotech
[7] Источник: https://habr.com/ru/post/694786/?utm_source=habrahabr&utm_medium=rss&utm_campaign=694786
Нажмите здесь для печати.