Три пути развития карьеры программиста. Карьерный путь программиста: от стажера до ИТ-директора

Детские товары 29.06.2020
Детские товары

Книга “Карьера программиста” основана на опыте практического участия автора во множестве собеседований, проводимых лучшими компаниями. Это квинтэссенция сотен интервью со множеством кандидатов, результат ответов на тысячи вопросов, задаваемых кандидатами и интервьюерами в ведущих мировых корпорациях. Из тысяч возможных задач и вопросов в книгу были отобраны 189 наиболее интересных и значимых.
Шестое издание этого мирового бестселлера поможет вам наилучшим образом подготовиться к собеседованию при приеме на работу программистом или руководителем в крупную IT-организацию или перспективный стартап. Основную часть книги составляют ответы на технические вопросы и задания, которые обычно получают соискатели на собеседовании в таких компаниях, как Google, Microsoft, Apple, Amazon и других. Рассмотрены типичные ошибки, которые допускают кандидаты, а также эффективные методики поготовки к собеседованию. Используя материал этой книги, вы с легкостью подготовитесь к устройству на работу в Google, Microsoft или любую другую

Понравилась статья или книга? Поделись с друзями:

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

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


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

Приоритеты

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

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

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


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

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

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


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


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


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


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


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


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


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

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

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

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

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



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

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

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

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

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

Стажер (Junior Developer)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Многие школьники, окончив свою «alma mater», стоят перед выбором профессии, а кто-то, уже имея образование, по специальности просто не хочет работать. Сейчас, в современное время, когда развиты технологии и так широко используются различные гаджеты, очень востребована профессия программист. Поэтому перед тем как идти учиться на «короля компьютеров» или проходить дополнительные курсы, нужно разобраться, что за дело, какие плюсы и минусы оно имеет.

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

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

Особенности обучения

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

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

Работа IT-техника может иметь несколько направлений:

  1. Прикладной техник. Специалист занимается программным обеспечением, его разработкой и усовершенствованием для удобства работы в организациях. Обычно это специалисты программы 1C, техники занимаются настройками, описаниями функций и доработкой под требования конкретной фирмы.
  2. Системное направление. Работники занимаются разработкой и описанием баз данных, интерфейсов. Также они являются администраторами социальных сетей.
  3. Специалист ТП (технической поддержки). Незаменимые работники, помогают устранить неполадки и ошибки в сжатые сроки.
  4. Тестировщик. Они, в частности, занимаются доработкой и тестированием уже готовых программ.

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

Каким должен быть программист?

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

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

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

Положительные стороны и недостатки профессии

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

Но все же существуют следующие минусы профессии программист:

  1. Высокая конкуренция. Лучшие места забирают те, кто знает свою профессию на «отлично».
  2. Нужна усидчивость и кропотливость. Не каждый человек сможет сидеть несколько часов подряд над разработкой программы или решением алгоритма.
  3. Нужно много учиться и постоянно обновлять свою базу знаний, поскольку мир технологий не стоит на месте, и чтобы быть первым в своём деле, нужно постоянно развиваться.

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

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

Где найти работу?

IT-техник в целом – многогранная профессия. Несмотря на то, что по статистике на 1 рабочее место приходится 15 работников, всё же реально получить своё место под солнцем. Всё зависит от навыков и целеустремлённости каждого, ведь если сидеть и ничего не делать – навряд ли удастся получить высокую должность.

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

Если выбор пал на компанию, то первым делом необходимо написать резюме. В нем следует указать:

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

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

Если был выбрано «свободное плавание», то тут нужно также постараться. Главным преимуществом фрилансеров является то, что в большинстве случаев работодатели не требуют документов, а также свобода в выборе работы. Самостоятельно можно искать проекты, ТЗ и выполнять в любое для себя удобное место. Но все же есть и минус – такая работа нестабильна и не даёт гарантий. Какой путь выбрать – решает каждый.

Зарплата программистов

Как уже говорилось, программист – весьма прибыльная профессия. Однако всё же многих интересует вопрос, сколько зарабатывают программисты? Заработная плата зависит от уровня специалиста, а также от того, где он работает. В больших городах специалисты работают в хороших фирмах, и для каждого находится своё место. Что касается более маленьких городов, тут зарплаты меньше, но соответствуют уровню жизни.

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

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



Рекомендуем почитать

Наверх