Кому подойдет профессия программист? Совет на заметку

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


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

Приоритеты

При выборе работы я определил для себя следующие приоритеты.

  1. Размер получаемого денежного дохода. Все просто.
  2. Комфорт рабочего пространства. Это то, насколько может быть удобно или неудобно то, что вас окружает на работе: удаленность от дома, люди в кабинете, производительность рабочего компьютера, погода у рабочего места, камера наблюдения вам в монитор, ваш монитор стороной к проходу, отношение с руководством, штрафы за опоздание и тому подобное.
  3. Возможность вашего профессионального развития. Сюда входит получаемый вами опыт на работе. Это изучение новых для вас технологий, оттачивание ранее изученного, приобретение новых полезных вам навыков. Все, что делает вас опытнее в профессиональном плане.

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


Некоторые стесняются произнести вслух, но, деньги - первый и главный фактор выбора места работы. Если вы хорошо получаете, то вам не придется подрабатывать и перерабатывать, а значит, у вас будет больше времени, чтобы наслаждаться жизнью. Моя точка зрения такая: если вы программист с опытом работы более 3 лет, и вы чувствуете, что хотели бы получать больше, начните этого добиваться, не откладывая на потом. Скорее всего, нет у вас никаких оснований не получать больше, если есть возможность.

Как повысить себе зарплату

Существует мнение, что можно просто попросить этого у вашего руководства. Может и сработать. Но я предлагаю для начала выяснить, сколько вам готовы платить другие работодатели. Если у вас нет готовых предложений работы, то нужно начать искать вакансии самостоятельно. Рассматривайте те варианты, которые соотносятся с вашим опытом и окладом, выше вашего текущего. Будьте готовы делать тестовые задания, проходить Skype-интервью или очные собеседования. Рассматривайте это как потенциальную прибыль, не отгораживайтесь своим самомнением.


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


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


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


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


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


Если у вас нет идей, как набраться решимости попросить себе повышения зарплаты, то я предлагаю вам следующее. Начинайте для себя делать акцент на всех недостатках текущего места работы: как вам не нравится, что в обед постоянно кто-то греет рыбу, что кондиционер работает прямо над вашей спиной, как вас бесит штраф за опоздание на рабочее место на одну минуту, как вы устали от реализации фич, которые на самом деле никому не нужны, как вам надоел текущий стек используемых технологий, как вы давно уже не изучали что-то новое. Но самое главное, представьте, что вы могли бы получать +X% денег, но не получаете их из-за вашего работодателя. Нравится вам, что работодатель оставляет ваши деньги себе? Нет? Вот идите и поговорите с ним об этом. Только не нужно ходить по работе обиженным, кое-как делать свою работу, надеясь, что руководитель это заметит и сам что-нибудь предложит. Это непрофессионально.


Если руководитель отказывает в повышении и отпускает вас, значит, пора уходить. Как часто можно просить повышения? До тех пор, пока вы получаете предложения, значительно лучше вашей текущей ситуации. Но не пытайтесь обмануть, у вас должно быть действительное предложение работы после прохождения всех интервью.

Сверхурочная работа

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

Домашние проекты

Распространено мнение, которое выглядит примерно так: «Я и так весь день программирую, у меня не остается сил, чтобы приходить домой и разрабатывать pet-project или коммитить в open source». Я понимаю, что не все большие любители программировать ради процесса, и для них вышеупомянутое мнение справедливо. Но для некоторых предположу причину в том, что они просто не пробовали программировать что-нибудь интересное для себя. Возможно, просто не придумали, что интересного можно создать, а, возможно, даже не пробовали подумать.



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

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

Какими именно способами они могут реализовать наработанный опыт?

Горизонтальная карьера в должности программиста-исполнителя

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

Его вряд ли обидят при распределении фонда оплаты труда. Он станет достойным кандидатом на место в какой-нибудь более солидной компании, вплоть до организаций международного уровня.

Совет на заметку:

Быть в IT универсалом нереально. Чтобы быстро продвигаться по горизонтали, выберите конкретное направление (базы данных, C++, java и др.) и попытайтесь стать в нём лучшим.

Продвижение в качестве эксперта

Достигнув определённого уровня, вы поймёте, что готовы делиться опытом. На этом этапе перед вами открывается новая перспектива — самореализация в роли консультанта.

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

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

Управленческая работа

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

Вам поручат планировать и контролировать работу других специалистов.

По сути, вы будете начальником. Следовательно, развивайте в себе лидерские качества , учитесь мотивировать людей.

Собственный стартап

Ещё один вариант карьеры — пожалуй, самый сложный — воплощение в жизнь собственного проекта (допустим, запуск какого-нибудь оригинального платного сервиса).

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

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

Возможно, вы, прочитав статью, начнёте подыскивать вакансию. Воспользуйтесь , опубликованными в нашем каталоге.


Оглядываясь вкруг себя, я размышляю о том, что не так уж часто, мне кажется, люди остаются программистами много-много лет. Чаще всего постепенно переходят в менеджеры, на протяжении нескольких лет, поначалу еще продолжая писать код, но потом все больше и больше начальственные обязанности занимают все время. Часто уходят в Product Management. Некоторые, реже, в маркетинг. Многие уходят в мир стартапов и становятся сами себе бизнесменами - даже если они продолжают писать код, это уже работа на себя. Обратное передвижение, из других профессий в программисты, почти никогда не случается в середине карьеры, только в начале (из математиков, физиков, инженеров, просто кого угодно еще, если есть склонность к этому делу).

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

Мне 37, и если не считать несколько подростковых подработок, я зарабатываю на жизнь программированием чуть более 20 лет. Большую часть этого времени - в компаниях, где я сам себе не хозяин. До сих пор я сознательно противился подводному течению, которое влечет программистов в менеджмент, по двум причинам. Мне кажется, что мне это меньше нравится, и мне кажется, что у меня это не очень хорошо получится. До сих пор я не жалел об этом решении. Но что я буду делать еще через 20 лет, предполагая, что буду жив, относительно здоров, и все еще буду работать? Многое еще может измениться; но если я не буду специально стараться и трепыхаться, закон инерции жизни говорит, что и в 57 лет буду нажимать на клавиши и вводить ключевые слова в текстовом редакторе в какой-то компании. Будут ли хорошие, интересные возможности и проекты для 57-летнего меня в индустрии, какой она станет через 20 лет? Сейчас в нашей индустрии, повторюсь, программисты за 50 есть, но их довольно мало...

Недавняя дискуссия в HN ("What happens to older developers?") подстегнула мои мысли по этому поводу, и, хоть не дала конкретного ответа, предложила много возможных. Верхний комментарий там хорошо подытоживает разные варианты развития, которые я описал в выше: идти в менеджеры, оставаться программистом и углублять свое мастерство, идти в бизнесмены-стартаписты, уходить в совсем другую профессию. Есть в комментариях там немало таких, как я, предпочитающих пока что при всех равных зарабатывать ключевыми словами в редакторе. Те из них, кому за 50, пишут чаще, что коль скоро сохраняют технические знания и идут в ногу со временем, не затрудняются найти работу - хоть это в основном американские мнения, в других странах может быть по-другому. Но неясно, сколько таких осталось из тех, кто хотели того же, но обнаружили, что им трудно поменять место работы в пожилом возрасте, или что им трудно принять тот факт, что все сверстники обошли их по иерархическим лестницам, или что просто надоело.

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

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

С чего начать

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

Если с вами ничего из вышеперечисленного не произошло, значит, у вас есть выбор из четырёх вариантов:

  • Самообразование . Этот вариант можно использовать как самостоятельно, так и в паре с другими методами. В интернете полно , и приложений , которые помогают изучать различные языки программирования и технологии. Но это самый тяжёлый путь для начинающих.
  • Университет . Если вы оканчиваете школу и хотите быть программистом, тогда идите в университет. Если не за знаниями, тогда за корочкой. Она может послужить бонусом при устройстве на работу. Хотя и какие-то знания вы тоже получите. Но не забывайте заниматься и самообучением. К выбору вуза стоит подойти очень ответственно. Внимательно изучите программы обучения и выбирайте лучшие технические вузы.
  • Ментор . Будет очень неплохо, если вы найдёте человека, который согласится помочь вам и направит вас в правильную сторону. Он подскажет подходящие книги и ресурсы, проверит ваш код, даст полезные советы. Кстати, мы уже писали о , где вы сможете найти ментора. Наставника можно искать среди знакомых программистов, на IT-тусовках и конференциях, на онлайн-форумах и так далее.
  • Специализированные практические курсы . Попробуйте поискать в своём городе курсы, где вас обучат какому-нибудь языку программирования или технологии. Я был приятно удивлён количеством таких курсов в Киеве, в том числе бесплатных и с последующим трудоустройством.

Какой язык, технологию и направление выбрать

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

  • Наличие на рынке вакансий . Конечная цель этого пути - найти работу программистом. А это будет трудно сделать, если на рынке вакансий никто не будет искать разработчиков на вашем языке программирования. Проверьте сайты с вакансиями, посмотрите, кого больше ищут, выпишите десяток языков. И переходите к следующему критерию.
  • Низкий уровень вхождения . Если вам придётся потратить длительное время на изучение языка, это может отбить у вас охоту к программированию вообще. Почитайте о тех языках, которые вы выбрали выше. Просмотрите литературу, которую нужно будет прочитать, чтобы изучить эти языки. И выберите те, о которых пишут, что они лёгкие, или которые вам показались лёгкими. Такими языками могут оказаться PHP, Ruby, Python.
  • Кайф от процесса . Если вам не нравится писать код на выбранном языке, вы не будете получать удовольствия от этого процесса, от работы и от жизни. А оно вам надо? Делайте правильный выбор.

Также вам придётся определиться с направлением программирования. Мобильное, десктопное, игры, веб, низкоуровневое программирование и так далее. Самые популярные и относительно лёгкие отрасли - разработка под веб, мобильные и десктопные клиенты. Под каждое направление может подходить один язык и совсем не подходить другой. То есть при выборе языка программирования также стоит отталкиваться и от этого фактора.

В любом случае изучите веб-технологии. Это язык разметки HTML, стили CSS и , который позволит сделать вашу страницу динамической. На следующем этапе изучите серверный язык (Python, PHP, Ruby и другие) и подходящие для него веб-фреймворки. Изучите базы данных: практически в каждой вакансии программиста это упоминается.

Как получить начальный опыт

Без опыта вы не получите работу. Без работы вы не получите опыт. Замкнутый круг реальной жизни. Но ничего страшного, мы из него выберемся.

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

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

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

Ещё одним неплохим вариантом для получения реального опыта является open source. Таким проектам всегда нужны новые люди, пусть даже и новички. Вы можете поискать в проекте баги или посмотреть в баг-трекере и предложить методы их решения. Найти такие проекты легко на GitHub или . Не стесняйтесь задавать там вопросы.

Четвёртый вариант получения опыта - помощь знакомым программистам. Попросите их передать вам маленькие и несложные задания. Если что-то не будет получаться, у вас всегда будет к кому обратиться. И при этом вы будете участвовать в реальном проекте.

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

Почему стоит выбрать Python

Давайте немного подробнее поговорим о выборе первого языка программирования. Первый язык должен быть простым и популярным на рынке. Таким языком является Python . Я очень советую выбрать именно его в качестве первого языка программирования.

Код программы на Python читабелен. Вам даже не нужно быть программистом, чтобы в общих чертах понять, что происходит в программе. Из-за несложного синтаксиса Python вам понадобится меньше времени для написания программы, чем, например, на Java. Огромная база библиотек, которая сэкономит вам кучу сил, нервов и времени. Python является высокоуровневым языком. А значит, вам не нужно особо думать о ячейках памяти и о том, что там разместить. Python - язык широкого назначения. И он такой простой, что даже дети могут его выучить.

Справедливости ради стоит упомянуть и о других языках программирования. Java может стать неплохим выбором для новичка. Этот язык популярнее, чем Python, но и немного сложнее. Зато инструменты для разработки гораздо лучше проработаны. Стоит только сравнить Eclipse и IDLE. После Java вам будет проще перейти к работе с низкоуровневыми языками программирования.

PHP - ещё один очень популярный язык. И, мне кажется, он даже проще, чем Python. Очень легко найти себе ментора или решение какой-нибудь проблемы на форуме. Всё потому, что в мире существует огромное количество PHP-программистов разного уровня. В PHP нет нормального импорта, есть множество вариантов решения одной и той же задачи. А это усложняет обучение. И PHP заточен исключительно под веб.

Языки C и C# очень сложны для новичка. Ruby - хороший выбор в качестве второго языка, но не первого. JavaScript - очень простой язык, но ничему хорошему он вас не научит. А задача первого языка программирования всё-таки научить вас чему-то правильному, задать какую-то логику.

Важен ли английский язык

Важен! Не знаете? Учите. Знаете? Совершенствуйте. Учитесь читать, писать, слушать и говорить на английском. Делайте упор на техническую литературу. Слушайте англоязычные подкасты. Читайте англоязычные учебники по программированию.

Что нужно знать, кроме языка программирования

Конечно же, кроме языка программирования и английского, нужно знать что-то ещё. А вот что - зависит от направления, которое вы выберете. Веб-программист обязан знать HTML, CSS, JavaScript. Десктоп-программист учит API операционной системы и различные фреймворки. Разработчик мобильных приложений учит фреймворки Android, iOS или Windows Phone.

Всем нужно выучить алгоритмы. Попробуйте пройти курс на Coursera или найти подходящую для себя книгу по алгоритмам. Кроме этого, нужно знать одну из баз данных, паттерны программирования, структуры данных. Стоит также познакомиться с репозиториями кода. Хотя бы с одним. Обязательно знание систем версионного контроля. Выбирайте Git, он самый популярный. Вам нужно знать инструменты, с которыми вы работаете, операционную систему и среду разработки. И главный навык программиста - уметь гуглить. Без этого вы не проживёте.

Последние шаги

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

Подумайте о карьере. Фото: кимберлитовая трубка Удачная, Якутия.

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

Часто возможность карьерного роста HR-менеджеры указывают одним из пунктов при приеме на работу молодого специалиста, причем для большинства крупных ИТ-компаний перспективы профессионального развития разработчика прописываются буквально по пунктам. Такой план отражает основные факторы, которые должны повысить эффективность работы сотрудника для последующего перехода на более высокую позицию.

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

Стажер (Junior Developer)

Большинство программистов начинают свою карьеру именно с этой первой ступени. Среди основных требований при приеме на работу:

Высшее или неоконченное техническое образование.
Владение основами языков программирования.

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

Разработчик программного обеспечения (Developer)

К моменту перехода на эту должность программист должен как минимум:

Обладать дипломом специалиста (лучше технической специальности, но не обязательно).
Знать все о программной инженерии.
Владеть несколькими языками программирования.
Иметь представление о системах управления базами данных, web-сервисах, ОС.

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

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

Ведущий разработчик (Senior Developer)

Требования к претенденту дополнительно включают:

Опыт работы в крупной профильной компании, от 2-х лет.
Участие в коммерческих корпоративных проектах.

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

Руководитель отдела разработки (Team Leader)

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

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

Менеджер проекта (Project Manager)

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

Двигаться дальше - в нескольких направлениях: перейти в другой, более интересный и масштабный проект, развиваться как директор по разработке или стать ИТ-директором. Выбранный путь во многом зависит от интересов специалиста и той области, в которой он стремится себя проявить.