Pull to refresh

Comments 35

Можно пойти на фриланс, предложив себя в качестве раба, но есть огромный риск нарваться на головняк

WAAAT????
Что еще за рабство на фрилансе?
Какой головняк можно получить?
Например, когда заказчик сам не знает чего хочет. Процесс затягивается на непредсказуемое время, требования пляшут, и вот прошло уже 3 года, а вас до сих пор дергают и что-то требуют.

Если вы опытный специалист, то можете отсеять сразу сомнительные проекты. Но не когда вы вчерашний джуниор.
А вчерашнему юниору противопоказано в свободное плавание идти. Это как выходить в море без подготовки, сперва добейся юнгой -> матросом на барже побегай.
Что юниор может предложить заказчику?

В некоторой стране после высшего учебного заведения была производственная практика, где инженеры на_бумаге становились инженерами на_деле. Но полимеры просраны, рыночная экономика, выбираем что лучше, автомобиль или дорога.
Немногие курсы, которые выдают диплом о том, что ты теперь iOS разработчик, на самом деле выпускают абы кого. А эти абы кто считают, что они теперь эксперты. И не дай бог, чтобы они шли в свободное плавание. Так и умирает репутация фриланса и аутсорса.
> Что юниор может предложить заказчику?

Нужный заказчику результат (внезапно). На фрилансе часто не космические корабли запускают.

Сведение проектов и подходящий разработчиков — задача биржи. Рейтинги там всякие придумывать.
Например, когда заказчик сам не знает чего хочет. Процесс затягивается на непредсказуемое время,

ТЗ и почасовая превращает весь геморрой в прибыль.

прошло уже 3 года, а вас до сих пор дергают и что-то требуют.

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

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

Например:
— взяли/не взяли не работу == вступительный экзамен;
— дали прибавку/премию за успешно выполненный проект == зимняя сессия
— стал ИТ директором == получил диплом
— … следующая итерация
очень сомнительно. берут/не берут зачастую совсем не смотря на профессиональные качества, а насколько смог уболтать или насколько хорошее настроение было у рекрутера.
Премия и успешность выполнения проекта тоже вещи перпендикулярные качеству и способностям.
стал ИТ директором — вообще закончил одну карьеру и начал другую, управленческую, это скорее провал в способностях — ибо хорошего специалиста никогда не сделают директором, кто же тогда работать будет?
Исключения бывают, но они редки…
Можно уйти на позицию в другое место, не обязательно расти по вертикали существующей.
— приняли/не приняли — можно и по блату устроится
— сдал/не сдал проект — можно и нахлебником(1 работает 10 зарплату получают)
— Про ИТ директора… крайне сомнительно, что профан с прокачанными soft-skills справится с командой технических спецов, максимум бумажки подписывать и расходники для принтера заказывать.
Такие случаи не рассматриваем :))
Те, кто не рюхают плюсы и изходятся поносом от регистров памяти, идут в iOS програмистэ.

Распечатаю и повешу в офисе.

P.S. Не под тем комментарием =\
Обучение без учителя. Как стать профессионалом, не имея наставника

Хорошая книга, частично заменяет наставника.
Да и зачем усложнять себе жизнь, обучаясь без наставника?

Просто найдите наставника!!!
Обучение без наставника — это не только от его отсутствия, но еще для самостоятельного развития в принципе.
Я тоже занимаюсь самообучнием, если так можно сказать: спрашиваю раз в полгода у знакомого сеньор разработчика о новых тенденциях, какие книги читать, как строить правильное приложение и так далее
А потом всё это в подробностях нахожу в интернете и изучаю
Но всё равно уверен, что будь я в команде с таким сеньором, возможности развития повысятся в разы, правда надо это всё(знания, скилл) уметь брать от старших и применять. Не лениться, как я это люблю делать
срочно разыскивается наставник по iOS/Swift ))
А где вы его найдете в общем случае? И как узнаете, что он хороший?

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

Сам, только сам. Для уровня синьора и выше это вообще типичная картина.
Как вы себе это представляете? В местной газете объявление дать? Если среди коллег нет никого, кто мог бы не то, что стать наставником, но даже разово подсказать что-то — приходится крутиться самостоятельно.
Есть вариант — найти на тематических форумах спецов, к которым можно обращаться в случае чего, но они могут и послать, если уровень вопросов и их частота выходят за рамки приемлемого.
UFO just landed and posted this here

Полагаю, то, что он наследуется от Cell, внезапно.

Однажды наступает такой момент, когда самообразование, чтение статей и посещение специализированных мероприятий уже не приносит удовольствия результата. Такое наступает, когда вы находитесь на верхней границе middle или уже являетесь senior-ом.

Я бы сказал — тогда вы находитесь на нижней границе middle. Не выше
Не в обиду Вас будет сказано, но это так :) Я сам прошел путь ~70% повторяющий Ваш. И тоже у Алексея учился :D
Стартап оправдал себя в итоге? Вы в долине?
С треском провалился.
Кхм, вот я прямо сейчас pre-junior без наставника (очень надеюсь, что временно).
И мне эта статья если честно кажется высосанной из пальца.
Нет, возможно я пока чего-то не понимаю, но основная проблема сейчас не в недостатке информации. Я бы даже сказал, что порой приходится сталкиваться с избытком информации, и проблемой становится уже ее фильтрование. Вот как раз тут то и нужен наставник, чтобы упорядочить весь этот поток, и как минимум расставить приоритеты на изучение.
Другой проблемой для меня представляется отсутствие информации/курсов по workflow. Точнее даже не так, она есть, но ее приходится выуживать по крупицам, вместо того, чтобы оттачивать какой-то навык. И даже если ты посидел, подумал, и решил: «хм, надо написать тестовое приложение, и желательно что-то большее чем todo-лист», то для начала нужно понять, а что это собственно будет за приложение. И вот, ты перевоплощаешься в клиент-менеджера и начинаешь сам у себя собирать требования, потом каким-то образом (магия, не иначе), ты влезаешь в шкуру senior'а и проектируешь приложение, как минимум, чтобы вышел прототип, который бы потом не поплыл, дальше ты чуть-чуть пишешь код (не очень важно по классике или через agile), потом передаешь это самому себе в роли teamlead'а на review, и пытаешься понять: «а точно ты правильно разграничил ответственность классов», «а нельзя ли снизить осведомленность классов друг о друге», ах да, забыл, нужно еще проверить, насколько качественно ты выступил в роли QA перед написанием кода и хорошо ли твой код покрыт тестами.
То есть, я почти уверен, что такой путь имеет место быть, но мне кажется, что обычно junior'у половину из этого просто не доверят по финансовым соображениям, да и времени такое развитие займет очень много. Основной задачей для junior'а мне представляется написание максимально читаемого и в общем случае предельно тривиального кода, чтобы сам процесс написания таких вещей максимально быстро стал автоматизмом. Как только это произойдет, фокус внимания можно будет сместить на более «сложные» области. В этом случае человек будет воспринимать информацию, концепции и модели без того, чтобы буксовать на написании кода, по полчаса проводя в отладчике.
Опять таки, со скидкой на отсутствие у меня опыта, мне кажется, что для junior'а важнее научиться писать хороший код (желательно под уже существующую экосистему). Когда ты пытаешься учиться без наставника, вот честно, в общем объеме потраченного на это времени, написание кода занимает микроскопическую роль. Именно наставник занимается тем, что помогает адаптироваться к той или иной экосистеме. Порой не менее важно услышать что-то вроде: «забей, вот либа, которая решает эту проблему, а тут можно поставить костыль», чтобы не возиться неделю с тем, что либо сделано до тебя, либо никому не важное в принципе.
То есть, лично мне наставник нужен. Очень.
Ну а советы senior'ам… Больше похожи на советы средненьким мидлам, вы уж простите. Что-то мне подсказывает, что дядьки, способные рулить сложными проектами как-нибудь да найдут способ повысить свою квалификацию.
Основной задачей для junior'а мне представляется написание максимально читаемого и в общем случае предельно тривиального кода, чтобы сам процесс написания таких вещей максимально быстро стал автоматизмом.


Близко к реальности, но я бы предостерег от излишнего перфекционизма в угоду чему-то новому. Буксуют в отладчике и мидлы, и сеньеры.

Как бы выразится правильнее — чем больше процесс обучение flexible — тем лучше. Совет автора – ходить по собеседованиям – действительно очень хорош, но и писать приложения для себя, тоже доставляет.

Попробуйте написать itunes клиент, twitter клиент, агрегатор twitter + vk + facebook + habrahabr постов. При этом нужно учитывать, что результат виден всем, а внутренности — только разработчикам. Цель должна быть достигнута, пусть и с отсутствием опыта, не лучшей архитектурой и не совсем чистым кодом. Все приходит, нужно просто ставить задачи все сложнее, и стараться делать их
судя по вашим изречениям — вы явно не совсем новичек в области информационных технологий, уж не нужно скромничать :)
Толковая статья, автору лайк. Так держать
По замечанию насчёт фриланса — согласен с Максимом. Я иногда подрабатываю на фрилансе, так, по мелочам. Заказчики бывают разные, к примеру, на данный момент взял заказ, но, прежде — заказчик мне две недели мозг выносил вопросами, в итоге, заказчик получил бесплатную консультацию по своему проекту. Вот такие вот, бывают хитрые заказчики на фрилансе.
Небольшая ремарка: перед тем (можно и в процессе), как вкатываться вообще куда-либо нужно получить хорошее фундаметальное образование в этой сфере. Вопреки всеобщему мнению в россии есть вполне неплохие вузы. Даже тот же СПбГУ даёт вполне приемлемые знания в моделировании, прикладной математике и системном программировании (если их брать, конечно). А заниматься серьёзными вещами после 10 классов, могут разве что гении, и то не в любой сфере.
1. У меня нет образование программиста, я ПТУ-шник дизайнер
2. Я не тратил свои годы на это, я учил все это в инете
3. Достиг неплохих высот, ну под категорию «заниматься серьезными вещами» я попадаю
4. Я не гений, инфа 100%

В наш век нужно только стремление, информации полно
В наш век нужно только стремление, информации полно

В наш век проблема не в том, что «информации полно», а в том, что её слишком много, она не структурирована и далеко не всегда верифицирована.
При обучении в ВУЗе или с наставником информация подаётся в уже очищенном от мусора виде (иногда даже слишком), а когда учишся самостоятельно — приходится отделять зёрна от плевел постоянно натыкаясь на давно обойдённые сообществом грабли.
Серьёзные вещи это, к примеру, моделирование чёрных дыр, фолдинг белка или проектирование космического телескопа. Ну или более приземлённый пример: программа для вычислений 'Maple'. Можно ещё более прземлённо: 'Photoshop'. Увы, без без знания целого ряда дисциплин он был бы невозможен.
Вмешаюсь в беседу в башу беседу. Моделирование черных дыр — это задача не программиста, а математика. Программирование выступает здесь в качестве прикладной дисциплины.
Вообще, хорошо, что проблемы «как собрать атомный реактор для чайников», пока ещё не существует. ;-)
Классная статья, только сейчас на нее натолкнулся. Как мне все это знакомо :)
Sign up to leave a comment.

Articles