что нужно знать ios разработчик

Что нужно знать и уметь, чтобы работать iOS-разработчиком

что нужно знать ios разработчик. Смотреть фото что нужно знать ios разработчик. Смотреть картинку что нужно знать ios разработчик. Картинка про что нужно знать ios разработчик. Фото что нужно знать ios разработчик

что нужно знать ios разработчик. Смотреть фото что нужно знать ios разработчик. Смотреть картинку что нужно знать ios разработчик. Картинка про что нужно знать ios разработчик. Фото что нужно знать ios разработчик

Операционные системы для iPhone выходят одна за другой, и пока ничто не говорит о том, что в обозримом будущем этот процесс остановится. Сообщество всегда нуждается в свежей крови, но проблема в одном: учиться придётся самостоятельно. Часы — главный ресурс разработчика, и мне пришлось потратить очень много часов на поиск и чтение правильных статей и книг. Чтобы вы не шли моей сложной дорогой, я собрал здесь всё самое важное, что может понадобиться при разработке под iOS для начинающих: требования, публикации и бесперебойные источники актуальной информации и полезных знаний.

Что нужно знать и чем уметь пользоваться

С чего начать разработку

Чтобы начать, вам понадобятся:

или Swift?

Материал для старта на английском

После прочтения стартового курса от Apple и просмотра Стэнфордских курсов нужно закрепить полученные знания:

Куда пойти учиться на iOS-программиста?

Если вы располагаете несколькими десятками тысяч рублей, будет разумно закончить курс онлайн-университета Skillbox «Профессия iOS-разработчик». Этот вариант хорош тем, что в самом начале пути у вас будет опытный наставник, который научит сразу делать правильно и сэкономит вам массу времени. К тому же, успешным выпускникам Skillbox гарантирует трудоустройство в одну из студий мобильной разработки, а это идеальный вариант развития карьеры для начинающего кодера.

Стоит яростно следить за

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

Источник

Кто такой iOS-разработчик?

что нужно знать ios разработчик. Смотреть фото что нужно знать ios разработчик. Смотреть картинку что нужно знать ios разработчик. Картинка про что нужно знать ios разработчик. Фото что нужно знать ios разработчик

iOS-разработчик создает и поддерживает мобильные приложения на iOS. Ее адептам нравятся прозрачность ОС, подробные гайдлайны и ограниченное количество гаджетов — не приходится адаптировать интерфейс под каждый смартфон. Вместе с iOS-разработчиком Алексеем Усановым разобрались, что нужно, чтобы освоить профессию, какими компетенциями и качествами надо обладать и сложно ли начать, если нет технического образования.

🤖 Читайте до конца: рассказываем, правда ли, что у Apple очень строгие гайды.

Что делает iOS-разработчик?

iOS-разработчик создает приложения для устройств Apple. Это не только iPhone, но и iPad, Apple Watch и другие гаджеты, входящие в экосистему. Он не только пишет код и работает над интерфейсом, но и занимается поддержкой приложения, адаптацией его под разные модели устройств, тестированием и исправлением багов.

Где он нужен?

iOS-разработчики востребованы везде — от игр и развлекательных приложений до банков и e-commerce. А пандемия и повсеместный переход компаний в онлайн показали, что в ближайшие годы спрос на мобильную разработку будет только расти. За первые три квартала 2020 года мобильный трафик вырос почти на 50% по сравнению с тем же периодом в 2019 году. Также в 2020 году в AppStore было доступно 4,38 млн приложений (на 10,3% больше, чем в 2019 году).

Сколько получает iOS-разработчик?

По данным HeadHunter, по состоянию на начало марта 2021 года на сайте открыто около 3 тыс. вакансий для iOS-разработчиков.

Начинающий iOS-разработчик c хорошим портфолио может зарабатывать от 80 тыс. рублей, мидл — в районе 150 тыс. рублей, синьор и тимлид — от 200 тыс. рублей.

Основные задачи:

Что ему нужно знать?

Для разработки на iOS, помимо техники от Apple, понадобится знание языков Objective-C и Swift.

Objective-C — язык более архаичный, а Swift современнее и проще. Но хотя сейчас большинство приложений для Apple и пишутся на Swift, есть и те, что написаны на Objective-C, поэтому все еще важно знать оба языка.

Не беда, если у вас нет мака, — можно потренироваться в Swift на виртуальной машине. Правда, для того чтобы собрать полноценное приложение, все-таки потребуется купить технику Apple.

Помимо этого нужно:

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

Разработчик также должен знать правила сотрудничества с AppStore и в целом досконально изучить официальную документацию Apple.

iOS-разработчик с нуля

Получите перспективную профессию: освойте с нуля программирование на Swift, мобильную разработку и UX/UI для iOS. Дополнительная скидка 5% по промокоду BLOG.

Какие нужны софт-скилы?

Рассказывает Алексей Усанов:

Общаться с коллегами и решать конфликты: «Софт-скилы — это важная вещь. Ты можешь быть подкованным и умным, но если не можешь найти общий язык с командой, то грош цена твоим знаниям и умениям. Бывает, что приходит молодой, активный и веселый разработчик. Он все знает и умеет, очень талантливый. Но он может работать только один, не умеет найти общий язык с командой. Поэтому он будет решать только свои узкие задачи и не сможет расти дальше».

Корректно указывать другим на ошибки: «Часто люди думают: “Зачем мне лезть?” Но есть и те, кто, наоборот, слишком резко говорит об ошибках других — это тоже нехорошо».

Ловить дзен и спокойно принимать критику: «Если ты молодец и умеешь общаться — здорово, но это не значит, что твой коллега тоже будет тактичен и корректен. Нужно уметь принимать такие вещи, это не должно мешать работе», — говорит Алексей.

Плюсы и минусы профессии

Плюсы:

что нужно знать ios разработчик. Смотреть фото что нужно знать ios разработчик. Смотреть картинку что нужно знать ios разработчик. Картинка про что нужно знать ios разработчик. Фото что нужно знать ios разработчик

Минусы:

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

В каких случаях становятся iOS-разработчиками?

Заблуждения об iOS-разработке

Чем сложнее код, тем лучше приложение. Зачастую разработчики приложений на iOS считают фреймворки Apple слишком простыми и пытаются создать что-то с нуля, тратя много времени на обдумывание сложной архитектуры и разработку новых концепций. На самом деле не нужно изобретать велосипед. Все фреймворки были созданы опытными разработчиками: они точно знают, что будет работать, а что — нет.

Разработчик на iOS не может переквалифицироваться и разрабатывать приложения для Android. Если у программиста уже есть навык, он вполне может перейти на другую ОС и помимо Swift выучить Java или Kotlin либо заняться кроссплатформенной разработкой.

Как начать?

Если у вас нет компьютера на macOS, то можно попробовать кодить на Swift на виртуалке. Это можно сделать, скачав на официальном сайте языка GNU/Linux (операционные системы на основе ядра Linux и системных библиотек GNU) с установленным Swift (есть официальные пакеты под Ubuntu, CentOS и Amazon Linux). Другой вариант — скачать на GitHub Windows с неофициальным пакетом Swift for Windows. Среду для разработки Apple XCode можно загрузить с официального сайта Apple. Однако, чтобы полноценно собирать приложения, все-таки понадобится техника Apple.

Пошаговый план для новичков:

Можно учиться разработке самостоятельно — для начала пройти вводные бесплатные курсы на Coursera.

Либо можно записаться на курс iOS-разработки SkillFactory и изучить все аспекты от программирования до фреймворков и релиза.

iOS-разработчик с нуля

Получите перспективную профессию: освойте с нуля программирование на Swift, мобильную разработку и UX/UI для iOS. Скидка 5% по промокоду BLOG

Правда ли, что у Apple очень строгие гайды?

Да, интерфейсы на iOS можно создавать только по гайдлайнам, разработанным Apple. В противном случае приложение может не пройти проверку при публикации в AppStore.

В Apple очень щепетильны к дизайну. Например, в приложениях на iOS используется динамический размер системного шрифта — пользователю не нужно менять его, это делается автоматически. Также в компании рекомендуют делать дизайн максимально функциональным, избегая лишних «украшений», а также различных градиентов и падающих теней. С одной стороны, строгий гайдлайн ограничивает разработчика. Но с другой — компания постоянно обновляет инструкции и делает их максимально подробными, поэтому новичку будет проще ориентироваться.

Полезные ссылки

Гайд Human Interface Guidelines от Apple о принципах дизайна приложений.

Apple XCode — среда для разработки для iOS.

Cocoadevelopers.club — открытый клуб iOS и OS X разработчиков.

iosdevweekly — еженедельная iOS-рассылка с полезными статьями на тему iOS-разработки.

Школа iОS-разработчиков — видеоуроки на YouTube.

iOS-программирование в Xcode — цикл видеоуроков на YouTube.

Источник

10 навыков и знаний необходимых начинающему iOS разработчику

что нужно знать ios разработчик. Смотреть фото что нужно знать ios разработчик. Смотреть картинку что нужно знать ios разработчик. Картинка про что нужно знать ios разработчик. Фото что нужно знать ios разработчик

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

Ко мне и коллегам на собеседования приходит много кандидатов на открытые у нас вакансии, и я отчетливо вижу у многих новичков отсутствие базовых знаний или просто неуверенное владение ими. Хотя в интернете и много статей, книг и курсов (платных и бесплатных), из которых можно получить необходимые знания, не всегда просто понять, на изучении каких тем стоит сконцентрироваться.

В этой заметке я поделюсь информацией про то, какие навыки и знания я считаю важными для начинающего iOS разработчика, попробую объяснить зачем они нужны и дам ссылки на материалы для их изучения.

Материал адресован в первую очередь тем, кто хочет начать обучение, восполнить пробелы или понять свою готовность работать iOS разработчиком. Буду стараться пояснить все простыми словами.

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

Первые шаги

Абсолютно нормально, если вы при этом поймете или запомните не все темы, зато у вас появится основа — структурированные базовые понимания устройства iOS приложений и конструкций языка Swift. Уделив время этим вещам на старте, вам будет сильно проще добавлять знания по каждой из тем.

1. Auto Layout, Storyboard, верстка из кода

Создание интерфейса приложения на основе макета — базовый навык для iOS программиста. Знать стоит не только основные компоненты, из которых собирается интерфейс (UIView, UILabel, UIButton, UIImageView и т. д.), но и то как их расположить на экране, чтобы добиться желаемого положения и размера на разных по размеру экранах, в том числе при повороте устройства. Для простоты я бы выделил 3 способа создания интерфейса:

Чтобы освоить тему, рекомендую:

что нужно знать ios разработчик. Смотреть фото что нужно знать ios разработчик. Смотреть картинку что нужно знать ios разработчик. Картинка про что нужно знать ios разработчик. Фото что нужно знать ios разработчик

2. Жизненный цикл ViewController

Предположим для простоты, что каждый экран в мобильном приложении — это ViewContoller, а точнее — это наследник класса UIViewContoller. iOS разработчику важно знать, как устроен жизненный цикл экрана, а точнее — какие методы будут выполняться при подготовке, появлении, повороте, уничтожении и других состояниях экрана.

что нужно знать ios разработчик. Смотреть фото что нужно знать ios разработчик. Смотреть картинку что нужно знать ios разработчик. Картинка про что нужно знать ios разработчик. Фото что нужно знать ios разработчик

3. Работа с UITableView и UICollectionView

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

4. Grand Central Dispatch

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

Grand Central Dispatch — одна из важных и довольно непростых тем, которую вам точно стоит знать, если вы собираетесь программировать под iOS.

5. Работа с сетью, получение данных из JSON

Какие из ваших любимых приложений продолжают работать без подключения к Интернету? Думаю, что если откинуть игры, вы увидите, что большая часть приложений работает с данными из сети. Что в этом случае должен уметь начинающий iOS разработчик? Думаю, что создать сетевой запрос, получить и обработать данные. Знаний о URLSession для начала должно хватить. Это самый базовый подход, и я рекомендую в первую очередь освоить применение именно его. Возможно будет не лишним знать о существовании такой популярной библиотеки как Alamofire, но это не должно быть в ущерб URLSession.

Чаще всего данные, которые приходят в приложения по сети, передаются в формате JSON. Нужно уметь эти данные получить и обработать, к примеру, вывести на основе их какой-нибудь список. При этом желательно, чтобы вы умели делать это не только с помощь одной из популярных библиотек, к примеру, SwiftyJSON, но также владели стандартными средствами языка, были знакомы с Codable.

Довольно подробно про работу с URLSession рассказано в статье от Audrey Tam. Материалов по работе с JSON довольно много, можно посмотреть статью Anand Nimje.

Чтобы освоить тему на практике рекомендую сделать приложение с прогнозом погоды, в котором есть поле ввода названия города, создается запрос к API (подойдет OpenWeatherMap), и на основе полученного JSON выводится информация о погоде.

6. Знания Swift

Тут очень поможет прочтение документации. Изучение Swift может занять время, но на выходе вы должны взять с собой и свободно ориентироваться в следующих темах:

Тщательно разберите отличия структур и классов — не только потому что этот вопрос вам зададут на собеседовании с большой вероятностью, просто это нужно будет в работе.

Параллельно с прочтением документации по Swift можно смотреть видео марафон по Swift Алексея Скутаренко. Этот марафон не заменит прочтение документации из-за того, что в нем раскрыты не все темы, а еще он опубликовал 4 года назад, и за это время в Swift произошли небольшие изменения. Алексей проделал грандиозный труд, полезного материала и мыслей там много.

7. Сильные и слабые ссылки, ARC, утечки памяти

Как сделать так, чтобы у приложения не было проблем с нехваткой памяти?
Что такое ссылки, какие бывают типы ссылок? Что именно делает ARC, и как избежать Retain Cycle, и что это вообще такое? Тема не сложная, но крайне важная. Ознакомиться можно, к примеру, в SwiftBook.

8. Протоколы и делегаты

При разработке под iOS вы часто будете встречать делегирование, а точнее передачу отвественности от одного объекта к другому. Для примера классическая задача — таблица с ячейками, в каждой из которых есть кнопка «добавить элемент в избранное». Вы должны уметь создать для этой ситуации протокол, назначить делегат, реализовать у него поддержку протокола.

9. Архитектурные подходы: MVC, MVVM, MVP, VIPER

Для простоты создания и поддержки программных продуктов при разработке их разделяют на отдельные блоки. К примеру, один блок отвечает только за работу с данными, а другой за внешний вид. У такого подхода есть ряд преимуществ, к примеру, вы сможете изменить внешний вид, не трогая логику, или при необходимости сможете поменять источник данных, опять же не меняя остальные части приложения. Очевидно, что эти подходы используются не только в iOS, скажу больше — они пришли сюда из других платформ. Есть несколько устоявшихся подходов к разделению ответсвенности между разными блоками, для работы с iOS я рекомендую хорошо разобраться с MVC и MVVM.

Вместо нормального объяснения разделения отвественности в архитектуре я часто слышу на собеседованиях, что-то вроде «MVC это плохо, потому что это Massive View Controller, а MVVM гораздо лучше».

10. Хранение данных, Core Data

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

Я считаю, что равномерно распределив указанные выше темы и уделяя учебе от 20 часов в неделю, реально даже с нуля освоить всё это за срок в 4-5 месяцев.
С таким багажом знаний можно начинать брать заказы на небольшие приложения или ходить на собеседования. К примеру, при наличии вакансии мы бы человека с таким набором знаний взяли в нашу мобильную команду.

Напишите свое законченное приложение

Я уверен, что iOS разработчику стоит иметь своё приложение. Речь идет про законченное приложение, которое решает какую-то нужную задачу или проблему (ничего страшного, если решает только для автора приложения). В процессе написания своего приложения вы столкнетесь с творческими задачами поиска подходящих решений, это не только позволит лучше закрепить теоретические знания, но и доставит вам удовольствие.

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

Источник

Советы для тех, кто решил стать iOS-разработчиком

что нужно знать ios разработчик. Смотреть фото что нужно знать ios разработчик. Смотреть картинку что нужно знать ios разработчик. Картинка про что нужно знать ios разработчик. Фото что нужно знать ios разработчик

Очень давно меня просили написать эту статью, но то ли мне микрофон мешал, то ли просто звезды не сошлись.

Коротко обо мне: мне 43, я Женщина и iOS-разработчик. Сейчас у меня одна из самых востребованных специальностей на рынке, поиск работы составляет в среднем от 2 дней до 2 недель.

Тем, кто случайно натолкнулся на эту статью и все еще раздумывает, сменить ли ему профессию или род деятельности, отвечу: если Вы не попробуете, то никогда и не узнаете — сможете изменить свою жизнь, или нет. Заранее бояться ошибиться — пустая трата времени.

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

Определение направления

В 2014 году компания, в которой я проработала 7 лет, закрылась (сотрудникам Ланка привет!). И передо мной встал выбор: искать работу или подумать о том, кем я на самом деле хочу работать.
При закрытии руководство компании поступило по отношению ко всем своим сотрудникам очень лояльно, и мы получили при увольнении деньги, с учетом скакнувшего тогда курса очень даже приличные (мне хватило прожить на них 8 месяцев).

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

На сайте hh.ru натолкнулась на рекламу: стань программистом и получи «сто миллионов» зарплату уже через полгода! Я решила проверить рынок и была приятно удивлена, что средняя зарплата программиста выше зарплаты хорошего закупщика со знанием английского в 2-3 раза. Ух ты! (подумала тогда я): работаешь в офисе, занимаешься логическими задачами. Может, вспомнить институтскую молодость и начать программировать?

Пошла на один общеизвестный ресурс, о котором, по этическим соображениям к читателям, не буду сообщать, и прошла там бесплатный курс по основам программирования. Курс пролетел, даже не заметила! Все задачи были легкими (сказалась институтская база), и я окончательно поняла, что ближайшей моей целью будет: переквалифицироваться в программиста! (для понимающих небольшое отступление: знания английского у меня были нулевые, т.к. в школе и ВУЗе учила французский).

Курсы

Цель поставлена, теперь надо было определиться — какой из множества направлений в программировании имеет смысл освоить? Нашла друга — программиста (java), он мне порекомендовал податься в Мобильную разработку, т.к. ниша достаточно новая, быстро развивается, и разработчиков с каждым годом будет все больше и больше не хватать. (Альберт, если ты это читаешь, очередной тебе привет и огромная благодарность за совет!).

Ну что ж, цель поставлена, пора действовать! Заплатила за онлайн курсы (рассчитанные на 6 месяцев + 2 месяца стажировка), тогда стоимость курсов составляла порядка 40к рублей (если что, то сейчас в два раза дороже). Подождала старта своей группы и плюхнулась со всего разбега в этот океан новых знаний.

Было очень страшно рисковать, т.к. на курсе все были сильно моложе меня (от 18 до 30 лет), а девушек практически не было (отсеялись после первых уроков).

Небольшое отступление: здесь и ниже все цены будут указаны для Москвы. Как дела с зарплатами и ценами в другом регионе, я подсказать не смогу.

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

Теперь же по порядку: онлайн-обучение на мобильного разработчика включало в себя 2 курса по ios-разработке, основы Java и 2 курса по Андроид-разработке + любой подарочный курс, какой мне понравится. Занятия (онлайн) начинались вечером около 20-00, чтобы все работающие успели к этому времени вернуться домой.

Я для себя определила, что хочу заниматься именно Андроид-разработкой, т.к. ни одного яблочного устройства у меня не было, да и я относилась к тем людям, кто постоянно троллил владельцев гаджетов apple за их необдуманную трату денег (кто бы тогда мог представить, что через три года у меня будет два iPhone и macBook pro).

Я несколько разочаровалась из-за того, что обучение стартовало именно с изучения iOS. Однако, поскольку iOS изучался на языке objectiveC, мне в этом смысле было даже проще, т.к. синтаксис очень схож с родным институтским C/C++. Самая большая сложность на курсе возникла из-за отсутствия mac-а. У меня был очень крутой ноутбук на Windows (16gb, i7, SSD256), поэтому, перелопатив форумы, нашла, как можно установить виртуальную машину и под ней уже разрабатывать на iOS. Сказать, что виртуалка тормозила — это мягко сказано! Кроме того, собирать проекты приходилось на симуляторе, т.к. у меня ни аккаунта разработчика не было, ни устройства, на котором разрабатывать, да и подключить устройство для сборки на виртуальной машине — то еще удовольствие. Покупать б/у телефон я не рискнула, да и бюджет у меня был жестко распланирован ровно на 8 месяцев.

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

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

Но… так получилось, что мне очень повезло с преподавателем iOS. (Lowtrack, в очередной раз, огромная Вам благодарность за помощь и терпение!). Он очень ответственно подходил ко всем урокам, готовился заранее, каждый урок длился не 1 час, а 3+ часа, т.к. за 1 час сложно было раскрыть все темы, объяснить начинающим, как пользоваться XCode. Но самое замечательное то, что если я чего-то не понимала, Lowtrack всегда был на связи и в любой день (рабочий или выходной) давал по скайпу все разъяснения, объяснял ошибки, разжевывал весь непонятный для меня материал.

Небольшое отступление: я надолго запомню, как он мне на примере офисного шкафа и рабочего стола объяснял, что такое ООП, что такое классы, объекты, методы.

Поскольку, я знала, что мой уровень в программировании далек от того, который имелся у молодых ребят после ВУЗа, я занималась целыми днями по 14 часов. Забывала обедать, ужинать. Иногда ДЗ делала не только днем, но и ночью. Сбила себе режим так, что ложилась в 6 утра, в 12 просыпалась и опять за учебу. В общем, чтобы все успевать наравне со всеми, выкладывалась на 300%.

На курсах Lowtrack посоветовал мне пойти изучать английский (хотя бы получить базовый уровень), пришлось раскошелиться и еще 25к вложить в начальные 3-х месячные курсы английского.

Поиск стажировки

Через 3 месяца курсы iOS закончились, и я осознала для себя, что влюбилась в iOS-разработку. Позже, когда я уже приступила к изучению Андроида, я поняла, что хочу заниматься именно iOS. Да и преподавание Андроида было ниже плинтуса: не смотря на то, что преподаватель на курсах был лучшим из лучших, он совсем не уделял нам времени, скидывал уже заранее заготовленные методички по теории, 90% занятий уходило на разбор чужих домашних заданий, причем моя работа так ни разу и не была просмотрена. В общем, на этих курсах я поняла, что зря трачу время, пора искать стажировку.

На онлайн-обучении мне обещали обязательную стажировку 2 месяца. Я начала их дергать по этому поводу, и мне предоставили контакты фирм, которые набирают джуниоров на стажировку после этих курсов. Как оказалось, стажировка — это замануха. На самом деле никто ее тебе не организует, только даст контакты компаний, где твое резюме, возможно, посмотрят. Контакты онлайн-ресурса на стажировки у них были красиво оформлены на отдельной странице. Результат: из 5 компаний только 2 рассмотрели мое резюме, и я тут же получила отказ (да и что тут удивляться, когда там висели вакансии таких компаний как redmadrobot), остальные компании даже не удосужились посмотреть мое резюме. На hh также ни одной вакансии для джуниоров не было. Я начинала паниковать, т.к. прошло уже 5 месяцев с начала курсов, и время уже поджимает.

Мне пришлось заняться поиском стажировки самостоятельно. Те золотые горы, что мне обещали на hh.ru в рекламе, я не обнаружила. Много гуглила и натолкнулась на сообщение в vk, что в команду Conditional (название специально изменено) постоянно набираются стажеры ios и Андроид. Написала им в группе. Что самое удивительное, быстро получила ответ. Мне и ребятам, с которыми я вместе закончила курсы ios (таких было еще 3, а брали только 1), дали тестовое задание. Я его выполнила (подозреваю, код у меня был очень смешной и некрасивый). Мне дали еще одно задание, чтобы я не изобретала велосипеды, а свое тествое задание сделала с определенным фреймворком. Переделала! И дальше оставалось только ждать ответа… Ждали ответа мы долго (порядка 3 недель). Через 3 недели я не выдержала ожидания и съязвила в чатике, что, наверное, тестовое задание — это и было нашей стажировкой. После этой фразы из Conditional со мной связались и позвали на собеседование в Зеленоград.

На собеседовании мне дали простенькую задачку, что-то связанное с сортировкой. Я честно говоря, не знала синтаксис, поэтому загуглила, а саму сортировку худо-бедно изобрела. Уж не знаю, видел ли руководитель мои мучения (наверняка видел), сказал только, что логика интересная, но можно было сделать попроще.

Потом задал несколько задач на логику. И сообщил, что я им подхожу.

Стажировка и первая работа

Через 6 месяцев после старта курсов я получила долгожданную стажировку! Но радоваться я перестала сразу, как только мне объявили, что стажировка неоплачиваемая, и если я стажировку пройду успешно, то тогда, возможно, меня возьмут на работу. Т.е. я 3 месяца каждый день приезжаю в компанию, учусь/работаю, а за это мне не платят ни копейки! Взгрустнулось немного, т.к. те ребята, которых не позвали на эту стажировку, всё же нашли себе оплачиваемую работу, правда у них уже был опыт программирования на других языках. Я решила, что не нужно завидовать, а ухватиться за этот шанс. Конечно, я очень рисковала! Денег у меня было запланировано только на 8 месяцев, а поскольку еще ушли деньги на курсы английского, вообще только на 7, поэтому даже пришлось немного влезть в долги.

что нужно знать ios разработчик. Смотреть фото что нужно знать ios разработчик. Смотреть картинку что нужно знать ios разработчик. Картинка про что нужно знать ios разработчик. Фото что нужно знать ios разработчик

К концу стажировки я осознала, насколько знания, которые даются на курсах, отличаются от реального опыта! Если брать в процентном соотношении, то те знания, что я получила на курсах — это примерно 10% от всех знаний, что я получила на стажировке.

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

На стажировке нам, таким же джуниорам, как и я (по 5 человек на каждой платформе), доверили писать реальный проект! Это было очень интересно!

Поскольку в этой компании такой большой проект был организован впервые, везде и всюду в проекте наблюдался хаос. Каждый стажер писал кто во что горазд. Толком ревью не было, т.к. не успевал у нас один руководитель уследить за всеми, обучить всех, еще и архитектуру продумать. Но зато мы все получили незабываемый опыт, при работе над этим проектом. (Отдельная благодарность: Mehdzor, руководителю Мобильной разработки, за полученные знания, за терпение и за понимание).

Стажировка закончилась. По завершении стажировки мне предложили не густо, не пусто — зп в 45к (это, конечно, не такая зарплата, которую мне бы хотелось, т.к. работая менеджером я бы смогла получать около 60к), но я так уже сработалась с этими ребятами, что мне не хотелось расставаться. Компания серая, все платили наличными в конверте, по трудовой мы даже не числились. Ни дня стажировки мне не сократили, хотя обещали, что если я себя хорошо покажу, то срок уменьшится. Как оказалось, это только обещания… испытательный срок у всех коллег был одинаковым, т.к. это дополнительная мотивация для стажеров для улучшения работы!

Через полгода к нам в компанию на стажировку взяли еще 2 девочек.

И тут началась травля: мне постоянно указывали на прогресс этих двух девочек-студенток, на их отличную теоретическую базу, на схватывание на лету (кстати, одна из них стажировку так и не прошла). Было очень обидно! Кроме того, мне тогда приходилось параллельно заниматься менеджерской работой на новом проекте, и времени на разработку оставалось мало (80% времени я уделяла не разработке, а менеджерским обязанностям). Чем дальше, тем было в компании хуже. Набрали много студентов-стажеров, появились задержки в зарплатах. А осенью начали сокращать людей, т.к. проектов больше не было.

Да, обидно, грустно, но, видно, пришло время двигаться дальше.

К сожалению, последнюю зп мне так и не выплатили. Думаю, эти деньги легли черным пятном на их карму. Проекты у них больше не появились, и компания закрылась.

Однако все, кто ушел, смогли быстро найти хорошую работу на зп от 80+, даже с опытом от 6 месяцев, в таких компаниях как Сбертех, Альфабанк, Тинькофф.

Очередной совет начинающим: да, найти работу джуниорам очень сложно, и возможно, вы потратите не один месяц, однако старайтесь все же найти белую зарплату и желательно, чтобы был куратор (т.е. либо стажировка с дальнейшим рабочим местом, либо джуниором в уже сложившийся коллектив).

Например, у меня коллега (Саша, помаши рукой маме!), который со мной работает (джуниор), искал работу после курсов 2 месяца. Прошел 8 собеседований. Из них только 2 приглашения. Средняя ЗП на рынке для джуниора порядка 60-80к. Если вариант со стажировкой, то за стажировку могут платить около 30-50к, что, согласитесь, лучше, чем работать в H&M или курьером.

Низкая квалификация разработчиков в маленьких компаниях

Меня же немного поштормило. Hr-ы, когда видят мой возраст, скептически относятся к моему резюме (и я их, наверное, даже понимаю), поэтому такого количества предложений, как молодые ребята, я не получала.

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

Моей главной ошибкой при устройстве в эту компанию было: на собеседовании я не поинтересовалась, кто будет тимлидом и как организован процесс обучения джуниоров. Позже оказалось, что тимлида не было вообще, и им пытались сделать меня, повесив обязанности без повышения в зарплате, т.к. по уровню я только джуниор.

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

Проработав 2 месяца, я решила уйти, т.к. не было грамотного тимлида в компании, мало работы, запрещали проводить рефакторинг, а поддерживать такой код нереально.

Потом мне опять пришлось искать работу и не один раз…

Ситуация на рынке и серые зарплаты

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

что нужно знать ios разработчик. Смотреть фото что нужно знать ios разработчик. Смотреть картинку что нужно знать ios разработчик. Картинка про что нужно знать ios разработчик. Фото что нужно знать ios разработчик

Вот с такой же ситуацией я тоже столкнулась: решила рискнуть и пошла опять на серую зарплату, т.к. на этот проект позвали бывшие коллеги. Хороший коллектив и адекватный тимлид для многих имеет большое значение. Для меня тоже это сыграло большую роль, и пришлось за это поплатиться. Проект был закрыт, зарплаты за последние 1.5 месяца не выплатили. Предложили компенсировать оборудованием с рабочего места.

Итоги

Подвожу итог всему изложенному:

Всем желаю удачи в достижении поставленных целей!

P.S. HR-ам: Нет, я не занимаюсь поиском работы. Да, у меня есть хорошая высокооплачиваемая работа с белой зарплатой на интересном проекте, менять я ее не планирую. Точно не рассматриваю варианты релокации в СПБ, Н-Новгород, Калининград, Казань или Севастополь.
Рассмотрю только вариант переезда в Израиль (нет, еврейских корней нет, английский на уровне intermediate, еще знаю русский и украинский. Просто мне нравится море, страна и еврейское мировоззрение).

P.P.S.: Выйду замуж за еврея, желательно с фамилией Абрамович или Ротенберг (шутка)

Спасибо за то, что дочитали до конца!

Благодарю Lowtrack, за помощь в написании статьи.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *