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

В помощь тем кто хочет начать разработку приложений для iOS

Разработчик, кто он?

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

  • Заказчик
  • Менеджер
  • Архитектор, старший разработчик
  • Разработчики
  • Дизайнер

Роли можно расписать более подробно – все зависит от сложности проекта и от наличия или отсутствия человеческих ресурсов.
Как это все работает. У заказчика появляется идея, он хочет ее воплотить жизнь. Возможно, он еще сам толком не представляет, чего хочет и может выговорить менеджеру только несколько слов. К примеру «iphone» и«карта моих ресторанов». После чего, задача менеджера составить с заказчиком максимально подробную спецификацию приложения. В спецификацию должна входить вся информация от поддерживаемых версиях операционной системы до зарисовок экранов. Вот пример зарисовок(wireframes, mockups) вместе с оценкой.
image

Архитектор или старший разработчик — это опытный человек, который знает как выстроить архитектуру приложение в соответствии с принципами ООП, MVC(паттерн модель-вью-контроллер), как сделать код приложения гибким, красивым и удобно поддерживаемым. Он смотрит на спецификацию, рисует архитектуру и раздает задания разработчикам. С дизайнером, чаще всего, общается менеджер, предоставляя ему зарисовки и концепт. Это очень общее представление о том как происходит разработка ПО, поэтому я советую вам так же познакомиться с наиболее распростроненным итеративным подходом [1] к разработке.

Tips and tricks


1) Необходимо понимать свои слабые и сильные качества, стремиться развить слабые. Вроде простая вещь, но мы про это часто забываем.

2) Для разработчика очень важно быть сосредоточенным на той задаче, которая перед ним стоит. По началу бывает очень сложно переварить много информации за раз и вам надо будет постоянно пересматривать код, который вы написали, либо пример код, который вы нашли. И чем лучше вы будете концентрироваться на этом, тем быстрее вы сможете понять схему работы. Это как непонимать всех метафор в стихотворении и перечитывая его снова и снова углубляться в смысл. Если вы не усидчивы и работа вызывает у вас сопротивление, то я рекомендую вам посмотреть лекцию известного бизнес тренера Герасичева [2], информация достаточно интересная, главное вспоминать о ней во время.

3) Два года назад меня уволили из одной конторы в которой мы занимались программной поддержкой пользователей и администрацией баз данных ERP системы MS Axapta для концерна Unimilk. Работа была гипер-ответственная, смены длились по 12 часов с 7:00 до 19:00 или с 19:00 до 7:00 3-4 смены в неделю. Не будем вдаваться в подробности, но могу сказать одно – я не зарекомендовал себя как профессионал. Это очень важно. Если даже вы работаете там где вам не нравиться и проявляете себя как профессионал, то вы однозначно преуспеете в том деле, которые вы любите. Если же вы не профессионал сейчас, то не факт, что вы будете им в будущем. Профессионализм — это навык, который необходимо развивать, с его помощью вы сможете быть конкурентоспособным и уверенным в себе человеком.

Где можно работать

Не хочу устраивать холивар на тему офис vs фриланс, просто приведу свой взгляд на этот вопрос.

Работа в компании

Плюсы:

  • Официальное трудоустройство
  • Не надо думать о тратах на девайсы и компьютер
  • Возможно, хороший коллектив
  • Проще самоорганизоваться
  • Крупные проекты, возможно интересные
  • Оплачиваемый отпуск
  • Другие плюшки, которыми богаты хорошие компании
  • Работа в команде

Минусы:

  • Нельзя выбрать проекты, выбирать свой рейт(доллар в час), в общем меньше свободы
  • Бывает что в крупных компаниях работа очень скучная
  • Работать нужно по 30-40 часов в неделю
  • Комфортно вам будет работать или нет зависит от того, насколько хорошо менеджер простроит все процессы

Общая информация:
Вакансий для iOS разработчиков открыто много. В большинстве мест требуются люди с хорошим опытом. З/п для iOS профессионалов в Москве и Питере – 80-120 тр, в регионах 30-50 тр. Для начинающих з/п на порядок меньше. Я бы посоветовал всем начинающим идти в компанию набираться опыта. Очень много дает непосредственное общение с хорошими программистами и обучиться определенному стилю и методологии разработки ПО возможно только в команде под руководством опытных разработчиков. Мне повезло и я работал в команде будучи фрилансером, но такую позицию найти практически невозможно.

Работа фрилансером

Плюсы:
Сам себе хозяин:

  • Работаешь дома (есть так же варианты работы в ко-воркинг центрах или на съемных квартирах)
  • Сам просчитываешь сколько тебе работать часов в день
  • Определяешь сколько ты берешь денег за свой час работы
  • Выбираешь проекты и заказчика

Развиваешься во всех областях:

  • Продажи
  • Самопрезентация
  • Управление временем и прочий самоменеджмент
  • Учишься учиться самостоятельно, становишься проактивным
  • Учишься брать на себя ответственность

Минусы:

  • Работая в одного теряется социализация – потом сложнее будет работать с людьми, не говоря уже о том чтобы стать руководителем
  • Нет оплачиваемых отпусков и стабильного дохода

Общая информация:
Средний рейт по России примерно $20 в час. Я начал делать коммерческие проекты после 3х месяцев самостоятельного изучения языка и мой рейт был $10 в час. Фриланс не для всех, нужно понимать какой стиль работы тебе необходим. В принципе все зависит от нас, и даже если мы работаем в удобном офисе с бассейном, бесплатными печеньками и кофе, то мы тоже можем «развиваться во все областях», но, как показывает практика, и объясняет психология, это сделать сложнее, если человек находиться в зоне комфорта. Не знаю кто это сказал, но работает всегда:
«Если хочешь иметь то, чего никогда не имел, придется сделать то, чего никогда не делал.»
image
Ну и конечно нельзя неупомянуть, что самая популярная платформа на которой можно найти много заказов на разработку программ для iOS odesk.com [3].
Здесь [4] можно посмотреть всю статистику об iPhone разработке

Статистика весьма заманчивая:

iPhone Summary Stats on oDesk
All iPhone Developers 10,424
All iPhone Jobs Posted 21,306
Currently Open iPhone Jobs 2,131
oDesk Tested iPhone Developers 1,216
New iPhone Jobs per Month 1,149

Спасибо! Если есть какие-нибудь вопросы, замечания буду рад вступить с вами в дисскуссию в комментариях.

Автор: danilNik


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/ios-development/12167

Ссылки в тексте:

[1] итеративным подходом: http://ru.wikipedia.org/wiki/%D0%98%D1%82%D0%B5%D1%80%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D0%B0%D1%8F_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0

[2] лекцию известного бизнес тренера Герасичева: http://www.youtube.com/watch?v=AdNzkxk15Tg

[3] odesk.com: http://odesk.com

[4] Здесь: https://www.odesk.com/trends/iPhone