6 причин недовольства профессией программиста


Содержание

suhorukov.com

Что первое приходит вам в голову, когда вы узнаете о человеке, что он IT-шник, программист или разработчик? Он прилично зарабатывает, работает в иностранной компании, разбирается в компьютерах. А как на самом деле обстоят дела у специалистов? Сегодня поговорим о плюсах и минусах профессии программиста.

Плюсы

Высокий доход

Вряд ли кто-то будет спорить с тем фактом, что IT-отрасль сегодня предлагает наиболее высокий уровень зарплат. Причем, это общемировая тенденция. Например в США медианная зарплата разработчика на С# составляет $60-100 тыс в год (без учета бонусов) в зависимости от уровня позиции.

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

Более того, ряд IT-компаний предлагают своим сотрудникам льготные условия по кредитованию строительства жилья, что очень актуально для молодых специалистов.

Свободный график

Пропускной режим, работа с 9 до 18, строго регламентированный приход и уход с рабочего места – все это не про современные высокотехнологичные компании. Офис большинства IT-компаний представляет собой целый комплекс по созданию приятной для работы атмосферы, комфорта и лояльного отношения к сотрудникам. График работы чаще всего не фиксированный и позволяет варьировать время появления в офисе с 9 до 14 часов. Основное требование – выполнение поставленных задач в срок.

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

Московский офис компании Google – фото the-village.ru

Отдельная интеллектуальная каста

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

Также программист по умолчанию считается человеком высокоинтеллектуальным и образованным. Это именно те люди, с которыми можно обсудить последнюю книжку Хокинга, свежие новости об адронном коллайдере и вечную тему «Android против iOS».

Перспектива работать в крупной иностранной компании

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

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

Профессия будущего

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

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

Трудности профессии

Подходит далеко не всем

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

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

Невозможно получить результат с первого раза

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

«Первый блин комом» – это история не про программистов. У них все блины комом – от первого до последнего. Именно здесь вам пригодится усидчивость, настойчивость и недюжинное терпение, чтобы довести свой продукт до рабочего состояния.

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

Непоседам здесь не место

В этом, как ни странно, есть и свои плюсы. Дело в том, что большинство IT-компаний стараются сделать рабочее место для своих сотрудников наиболее комфортным. А это и игровые зоны прямо в офисе, комнаты отдыха и релаксации, современное оборудование для работы и много других «плюшек», о которых обычному офисному работнику остаётся только мечтать.

Нельзя останавливаться в развитии

Помните фразу из знаменитой «Алисы в Зазеркалья»: «Здесь, знаешь ли, приходится бежать со всех ног, чтобы только остаться на том же месте, а чтобы попасть в другое место нужно бежать вдвое быстрее». Она целиком и полностью описывает ситуацию в IT-отрасли. Учитывая, что это наиболее быстро растущая и развивающаяся отрасль вы постоянно должны будете учиться чему-то новому.

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

К слову, этот минус легко трансформируется в плюс, если вы будете постоянно учиться чему-то новому, оттачивать свои навыки. За таким активным и постоянно растущим сотрудником IT-компании нередко сами устраивают «охоту».

Высокий уровень владения английским

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

Подведем итоги

Плюсы профессии программист:

Отдельная интеллектуальная каста;

Перспектива работать в крупной иностранной компании;

Трудности профессии программист:

Подходит далеко не всем;

Невозможно получить результат с первого раза;

Непоседам не подходит;

Нельзя останавливаться в развитии;

Высокий уровень владения английским;

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

Подписка

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

Высокомерие программистов как отпечаток профессии

Основатель центра развития высокотехнологичных проектов IT House Александр Мелещенко в своей колонке рассуждает про то, откуда берётся «фирменное высокомерие» айтишников и почему оно мешает их карьере.

Однажды я поехал на встречу в одну ИТ-компанию. В комнату переговоров пришли люди самого разного возвраста и статуса: замдиректора, начальник отдела, руководители проектов, пара разработчиков. Бросилось в глаза, что состоявшиеся айтишники, которым уже лет за 40, — на удивление доброжелательные и приятные в общении люди, желающие помочь. А вот молодые программисты посидели за столом, похмыкали и, не взяв визитки, ушли.

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

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

  • Топ-менеджеры: «Это такое поколение».
  • Обыватели: «Им просто много платят».
  • Студенты: «Их захвалили учителя».
  • Гуманитарии: «Эта такая каста…».
  • Программисты: «Много в иных го***ца…».
  • Моя точка зрения: «Проблема односторонности».

Конечно, все люди разные — за время учёбы и работы в ИТ я встретил очень много замечательных, интересных, открытых парней и девушек. Но в некоторых причинах «среднестатистического высокомерия» мы всё же попробуем разобраться.

«Это такое поколение». Дети лихих 90-х

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

«Им просто много платят». Трудные времена отрезвляют

Зарплата айтишника вполне позволяет ему путешествовать по миру или посещать в Минске различные заведения по улице Зыбицкой. Он видит там таких же айтишников, как и он сам, — так постепенно формируется самомнение (самооценка?).

Чисто денежный фактор становится верным, когда на рынке «программистократия» и любой студент айтишного факультета, поставив галочку «Я ищу работу», получает несколько предложений о трудоустройстве в тот же день. Бывали случаи, когда программисты с 3-го курса на собеседовании заказывали четырёхзначную зарплату и, закинув нога за ногу, первый же вопрос задавали про соцпакет.

Трудные времена обычно выдёргивают айтишника из-под его уютного колпака, как это произошло в Украине.

В Беларуси всё это тоже аукнулось. Продуктовых компаний у нас не так много, в основном все аутсорсят. А аутсорсинговые компании чувствительны к стабильности портфеля заказов. Те, кто работал на Россию, просели по понятным причинам. Но трудности возникли даже у тех компаний, которые традиционно работали только с Америкой. Новых заказов стало меньше: часть американцев искренне убеждены, что Беларусь — это 51-й штат России, другая часть полагает, что бои под Донецком — это где-то на окраине Минска, уж лучше отдать проект в более спокойный регион. В итоге, если раньше был чёс на программистов, их выхватывали со 2-го курса, то сейчас легко найти неприкаянных студентов 4-го курса вполне престижных специальностей. На рынке впервые появились свободные senior-разработчики.

Поубавится ли высокомерия на этом фоне?

«Их захвалили учителя». Люди из класса «В»

У нас в школе в параллели было три класса: «А» — ребята, которые собирались в хабзу работать руками; «Б» — химико-биологический, для гуманитариев; «В» — физико-математический, куда собирали умников и готовили к олимпиадам. И вот завуч вручает кому-то грамоту при всех: равняйтесь на Петю, он наша гордость! Смотрите, как надо, а вы все лоботрясы!

Почти все люди на «высокомерных» факультетах — из «В» класса. Даже те, кто не из «В», меняются под влиянием лидеров мнений. У нас в команде были люди со средним баллом 10.0. Разумеется, у них формируется ощущение превосходства.

Кстати, в классах «А» и «Б» не любят Петю. А возможно, в особо торжественных случаях даже поджидают его за углом после уроков. Теперь, когда Петя ездит по всему миру и получает в 10 раз больше своих обидчиков, он «берёт компенсацию».

«Эта такая каста…». Таинственные носители сакрального знания

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

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

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

«Проблема односторонности». Социофобия как стоп-кран успешной карьеры

Моя хорошая знакомая, которая занимается рекрутингом в ИТ-компании уже 15 лет, говорит об этом так: «Вы — классные. Действительно умные ребята, интеллектуалы. Но вы очень односторонние».

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

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

Потому что невозможно построить успешную карьеру, не взаимодействуя с людьми. Мне приходилось общаться со многими директорами ИТ-компаний — практически все они исключительно приятные в общении люди. Отчасти поэтому они и там. К слову, где-то половина из них не понимают, что такое программирование, не знают, как работает компьютер и что такое машина Тьюринга. Они закончили Иняз или факультет международных отношений БГУ. Почему так вышло? Они умеют общаться с людьми.

«Чморение» в интернете или сдохшая корова как условие добрососедства

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

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

Отсюда и чувство зависти, не дай бог у соседа корова лучше! Один из моих знакомых работает в хорошей фирме, у него дом в деревне, отличная машина. Так с ним никто на улице не здоровается. «Крутой!».

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

Кто-то из знакомых напишет в ленте «я основал компанию, уже начались первые продажи». Нам будет не так больно, если мы скажем «да из твоей компании ничего не выйдет, технология твоя …, а ты будешь таким же неудачником, как и все!». Или вот подколоть темой «распила» очень любят.

Почему молодые парни иногда ведут себя в интернете как бабушки-наседки? Я понял: это такая форма самозащиты постсоветского общества.

Итого:

  • 6% населения имеют склонность к абстрактному аналитическому мышлению, программирование является для них «естественной» профессией.
  • Если эта склонность сильно выражена, она может затруднять контакты в социальной сфере.
  • Human skills не менее, а может быть, более важны для карьеры, чем tech skills.
  • «Понт» стоит дорого (то же самое, но проще).
  • Стараясь найти свой собственный путь и достигая на нём реальных результатов, мы избавляемся от чувства зависти.
  • Бог в среднем всем даёт одинаково.

*Мнение колумнистов может не совпадать с позицией редакции.

Стоит ли становиться программистом: сложности профессии

Сегодня программист считается модной и престижной профессией. Работа в сфере IT окружена ореолом романтики, опутана легендами об успешных стартапах и больших деньгах. А многочисленные онлайн-курсы предлагают получить знания и начать зарабатывать буквально через 2-3 месяца. Все это привлекает в профессию множество случайных людей. Как итог – разочарование, психологическое выгорание и огромное количество невостребованных кадров низкой квалификации. А все потому, что вся эта романтическая «шелуха» — не более, чем красивая обертка.

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

При этом нужно понимать, что красивые истории о гениальных стартапах, которые за ночь делают разработчика миллионером, давно уже отошли в сферу сказок и легенд. Время талантливых одиночек давно прошло. Сейчас любой программный продукт, за исключением разве что простеньких сайтов на CMS, является плодом командной работы. И высокие зарплаты в этой команде будут у ведущих разработчиков. Остальные зарабатывают на уровне «офисного планктона» и, по сути, мало чем от него отличаются.

Миф первый: научиться можно быстро

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

В реальности есть два пути:

  • Самообразование. В том числе с использованием различных тематических курсов. Обучение обычно занимает около 2-3 лет. При этом максимум внимания нужно уделять практике. Создавайте программы, сайты, различные «приблуды» для себя и друзей. Практикуйтесь – только при наличии портфолио с интересными проектами вы сможете претендовать хотя бы на уровень джуниора.
  • Обучение в ВУЗе. Диплом – дело хорошее. Но и здесь придется дополнительно учиться самому. В процессе учебы вы получите глубокие знания в области математики, алгоритмизации и т.д. В вопросах языков программирования и программных систем даже лучшие ВУЗы безнадежно отстают от жизни.

А дальше нужно морально готовиться к постоянному повышению квалификации. Сфера IT развивается стремительно. Появляются новые языки программирования и модернизируются существующие, постоянно выходят новые версии программных инструментов.

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

Миф второй: программировать может каждый

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

Настоящий программист должен совмещать в себе:

  • Творческую натуру. Что бы там ни говорили, программирование – это творчество. Вам ставят задачу с точки зрения пользователя, т.е. описывают желаемый результат. А как это реализовать максимально эффективно, с использованием минимума ресурсов, еще и совместить все это с существующими системами и «хотелками» заказчика – решать вам. Порой приходится совмещать несовместимое. И здесь нужен творческий подход.
  • Аналитический склад ума. Программа – это всегда логика. От программиста потребуется умение структурировать информацию, создавать сложные алгоритмы, прорабатывать кластеризацию и многое другое. Тут важны четкая последовательность, внимательность к мелочам, возможно, даже некоторое занудство. Любая небрежность в коде может привести к критическим ошибкам в будущем.
  • Стрессоустойчивость и умение работать в команде. Время одиночек-интровертов в программировании ушло. Сейчас важно находить общий язык с заказчиками, руководителем проекта, коллегами. И хорошо, если ваш проект-менеджер – специалист в сфере IT, вы хотя бы будете говорить на одном языке. А если он из числа управленцев, то придется по многу раз пояснять очевидные для вас вещи из серии «почему это невозможно» или «почему тут только так, а не иначе».

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

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

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

Цукерберг рекомендует:  Ключевые фразы - Семантическое ядро сайта-какие данные снимать.

Другие в силу особенностей характера разочаровываются в работе. Им не хватает движения и перемен. Они уже решили задачу «в принципе», а дальше становится скучно. В этом случае лучше уйти из профессии как можно быстрее. Нет смысла оставаться еще одним «плохим программистом» без каких-либо перспектив. А лучше хорошо подумать заранее о том, готовы ли вы ко всем особенностям работы, в том числе, к монотонному «вылавливанию блох» (мелких ошибок), написанию документации и раздражающим противоречивым требованиям руководства.

Миф три: элитарность профессии

Особое, иногда даже восторженное отношение к айтишнкам – удел обывателей, начитавшихся тех самых «историй успеха». Возможно, вами будет очень гордиться мама. Будут смотреть «снизу вверх» менее успешные друзья. Очень может быть, что вы начнете намного быстрее ровесников, занятых в других сферах, получать приличный доход. А когда вы достигнете уровня senior, вам будут завидовать коллеги в профессиональных сообществах. На этом, собственно, вся «элитарность» заканчивается.

Разговоры о «новой нации» или «особой касте избранных», столь любимые на тусовках программистов, в реальности – не более, чем самолюбование.

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

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

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

Вас привлекает такая перспектива? Вы готовы тратить месяцы и годы на реализацию очередной ERP или CRM системы просто потому, что сам процесс доставляет удовольствие? Что ж. Вы – действительно настоящий программист. А это, как говорят, больше диагноз, чем профессия.

6 причин, по которым вы нанимаете неподходящих сотрудников

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

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

Вот шесть причин, по которым работодатели нанимают неподходящего кандидата:

1. Они неверно оценивают ситуацию в целом

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

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

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

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

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

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

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

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

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

3. Они слишком расхваливают свой бизнес

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

Хорошие кандидаты наверняка узнали всю необходимую информацию заранее и имеют представление о вашей компании.

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

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

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

4. Они инстинктивно нанимают друзей и членов семьи

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

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

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

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

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

5. Они игнорируют то, что подсказывает им интуиция

Формальную и последовательную процедуру подбора кадров способны заменить лишь советы интуиции.

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

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

Позвольте опыту и интуиции помочь вам принять правильное решение.

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

Определите качества, которые вы хотели бы видеть в своих сотрудниках, а затем придумайте свой собственный способ проверить наличие или отсутствие этих качеств в кандидате.

6. Они слишком рискуют

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

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

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

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

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

Рискуйте осознанно. Именно такие риски и ведут к найму самых лучших сотрудников.

Учитель, медсестра, программист: самые депрессивные профессии

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

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

10. Продавец-консультант

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

9. Бухгалтер

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

8. Программист

Мы живем в эпоху персональных компьютеров, «умных» телефонов и поиска Google. А теперь представим себе, что вы сидите в офисе и работаете, но вдруг что-то идет не так. К кому вы обратитесь? Вполне вероятно, к системному администратору. Постоянные переработки — норма для программистов. Равно как и нездоровое питание, сидячая работа и в большинстве случаев изоляция от окружающих людей, что также не идет на пользу психическому здоровью.

7. Персональный ассистент

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

6. Учитель

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

5. Художник/писатель/журналист

Эти творческие специальности часто предполагают нерегулярную заработную плату, необходимость работать на «дедлайн» и долгие часы изоляции, что, вкупе с низкой способностью к самоконтролю некоторых людей, может привести к перепадам настроения, а впоследствии и депрессии. При этом исследования показывают, что именно в среде творческих людей высок риск биполярного аффективного расстройства (БАР) — заболевания, проявляющегося в виде маниакальных, депрессивных или смешанных состояний.

4. Врач/медсестра

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

3. Социальный работник

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

2. Официант

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

1. Няня/сиделка

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

12 признаков плохого программиста – выявляем непрофессионала

Ведущий разработчик Kokoc.com

Rusbase и Kokoc Group продолжают разоблачать дилетантов в digital. На этот раз «под раздачу» попали программисты и разработчики, которые занимаются сайтом компании и его интеграцией со сторонними системами.

О том, как определить, что программист – непрофессионал, рассказывает Алексей Рузин, ведущий разработчик Kokoc.com (Kokoc Group).

Речь о программисте-универсале

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

Мы будем говорить о требованиях к единственному программисту, отвечающему за небольшой интернет-магазин (30-3000 карточек товаров, 1-10 заказов в сутки). Этот специалист должен быть универсалом, то есть одинаково знаком и с бэкендом – разработка на стороне сервера, и с фронтендом – разработка на стороне браузера пользователя).

1. Минимальные требования

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

Если компания собирается разрабатывать сайта с «нуля», то программист должен знать:

  • один из распространенных языков: PHP/Python/Ruby/C#;
  • одну из СУБД: MySQL/PostrgreSQL/MSSQL/Oracle/MongoDB;
  • одну из распространенных систем управления сайтами (CMS): Bitrix, UMI, Drupal, ShoppingCart, WordPress;
  • обладать навыками администрирования Linux и web-серверов, например, одного из Nginx/Apache/IIS или иметь опыт размещения веб-серверов в Cloud-платформах AWS, Google Cloud, Azure.

Отсутствие этих навыков не говорит о том, что он дилетант. Он вам просто не подходит.

2. Заочное знакомство

Признаки слабого программиста можно выявить еще до собеседования по резюме, изучив портфолио. Если программист указал свои работы (сайты), то стоит открыть их в Google Chrome, зайти в раздел меню браузера «Дополнительные инструменты», выбрать пункт «Инструменты разработчика» и открыть вкладку «Console».

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

Отсутствие портфолио или отказ его продемонстрировать – верный признак неопытного разработчика.

3. Плавали, не знаем

Естественно, большое значение имеет практический опыт работы. Если на собеседовании в ответ на вопросы о прошлых разработках, кандидат «плавает» и не может объяснить собственные действия, стоит насторожиться.

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

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

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

4. Птичий язык

Еще один важный момент – способность кандидата разговаривать на «человеческом» языке. Хороший специалист сможет объяснить свою работу простыми словами. Но если соискатель разговаривает исключительно терминами, ему будет сложно взаимодействовать с коллегами и владельцем компании.

Как проверить: попросите рассказать о какой-то ошибке, за которую ему «влетело» от руководства. Например, на сайте 2 недели не работала форма «обратной связи». Представьте, что это ваш сайт.

Уточните в чем была суть ошибки, как он о ней узнал, как нашел причину и устранил ошибку. Если соискатель будет рассказывать «заумными терминами» — попросите разъяснить. Если вы все еще не удовлетворены объяснением, сработаться с ним будет сложно.

5. «ОпенСорс»

Многие специалисты публикуют собственные разработки на сайте GitHub (или BitBucket). Если у программиста несколько публичных проектов и тем более их отметили или скопировали (fork) другие пользователи – это существенный плюс. Большое количество копирований говорит о высоком уровне профессионализма.

Программист уровня Dan Abramov будет искать крупную компанию, уровня Facebook (он сейчас там работает), однако если ваш кандидат имеет проекты с ненулевыми отметками и «зеленая область» тоже заполнена – отлично! Смело зовите его на собеседование.

Как проверить: попросить соискателя прислать ссылку на аккаунт в GitHub (BitBucket) и перечислить проекты, которыми он гордится. Обратить внимание на «возраст аккаунта», количество проектов и число копирований кода другими пользователями.

6. Старый багаж


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

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

Как проверить: спросить, какие инструменты или технологии кандидат узнал за последние год-два и как они помогли ему в работе.

7. Цены с потолка

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

На простые задачи типа «замена цвета кнопки» или «создание карты сайта» стоит ожидать быстрые ответы – «дело 5 минут» или «справлюсь за 2 часа» соответственно.

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

Как проверить: спросить у кандидата, сколько времени ему понадобится, чтобы заменить цвет кнопки «Купить» в интернет-магазине и сделать карту сайта (site map).

8. Ручная работа

Есть шутка, что хороший программист – ленивый программист, но в ней есть доля правды. Грамотные специалисты пишут код так, чтобы минимизировать не только усилия тех, кто потом работает с программой, но и собственные. Они стараются использовать чужой готовый код (OpenSource) и в этом нет ничего плохого.

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

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

9. Лишние близнецы

Дубли кода – верный признак неопытного программиста.

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

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

Как проверить: спросить кандидата, дублирует ли он код. Не дилетант скажет «да, бывает», но объяснит это нерациональными расходами времени на избавление от дублей. Если ответ «нет», то программист врет, мало писал или перфекционист — любое из этих объяснений — плохой вариант.

Цукерберг рекомендует:  1С Битрикс - система для успешной веб-разработки

10. Резать по живому

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

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

Как проверить: спросить кандидата, как он обновлял сайт на предыдущем месте работы.

11. Доверяет, но не проверяет

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

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

Важно, чтобы программист проверял не только работоспособность сайта, но и тестировал его на ошибки, которые могут совершать пользователи. Так, при разработке формы обратной связи нужно проверить не только ее корректную отправку, но и ответ сайта при ошибочном заполнении полей. Например, проверить, чтобы при случайном вводе номера телефона в поле «Email», пользователю выводилось указание ошибки.

Как проверить: если есть сомнения в программисте, протестировать сайт самостоятельно. Допустим, после интеграции сайта с платежными системами, попробовать оплатить заказ, например, через «Яндекс.Деньги». Все должно пройти гладко.

12. Улыбаемся и машем

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

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

Как проверить: попросить программиста рассказать, как он узнавал об ошибках на предыдущих проектах.

Минусы работы программистом

(Прошу не пинать за источник статьи из Украины, уж очень текст хорош)

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

2. Здоровье. Роман в очках, Василий в линзах — недавно потерял 0.5 зрения и теперь у него -7. Сидишь 8 часов, выжигаешь глаза монитором, постоянно какие-то боли, головокружения, постоянно охота набухаться (пагубная привычка, обусловленная жизнью в IT), а еще геморрой и боли в спине от постоянного сидения на стуле и в пробках.

3. Пробки. Работа в IT в России (по крайней мере в московском регионе) подразумевает исключительно центр Москвы. В периферии работы по IT нет вообще, от силы может быть 1-2 вакансии. И если кто-нибудь скажет «Так ты иди во фриланс», то ответ будет — какой в пизду фриланс? Зайди на фриланс-биржу, там конкуренция огромная, и что — полдня бегать за клиентом, чтоб получить 500 рублей за правку какого-нибудь кода? Да ну нахуй. Не зря придумали разделение труда — один менеджер, другой исполнитель, третий ещё кто-то. А тут на фрилансе вам предлагают быть как этот… жнец и на дуде игрец. Чтоб поднимать бабло на фрилансе, надо этим заниматься неизвестно по сколько часов в день, не спать, не жрать, не срать, и все равно это будет почти не реально, если только ты не узконаправленный спец. Но как показывает практика, узкоспецифическая хуйня имеет очень маленький спрос. Поэтому за месяц вы максимум заработаете 20-30К рублей. Поднять 100-200К рублей с фриланса практически нереально.

4. Сложность. Мало кто из начинающих программистов понимает с чем им придется столкнуться. К примеру, мы работаем в телекоммуникационной компании в системе предприятий, и там логика — ебанись какая. Потому что на системе завязано все — финансы, логистика, техническая сторона. Когда вы разрабатываете для себя бложик, гостевую книгу или CMSочку — это одно. Когда вы копаетесь в кишках системы, которую писали лет 10, с очень серьезной бизнес-логикой — это другое. Вот сейчас мне дали задачу поправить оплату. Я открываю код — и я вообще не знаю как я там буду что-либо исправлять, потому что там черт ногу сломит, настолько всё запутано.

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

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

7. Один в поле не воин. Нас могут спросить — «почему вы ничего не изобрели?», например Линукс. Но время психов-одиночек прошло лет 20 назад, сейчас эра сообществ. Написано уже очень много, но некоторые, особенно начинающие программисты, говорят «Вот я сделаю свой проект, который будет приносить мне дохуя денег», не понимая, что эти мечты бесполезны. Сейчас все ведущие проекты разрабатываются целыми бизнесами, штатами программистов. Поэтому не нужно даже пытаться что-то там писать с мыслью «О, ща забабахаю свою CMS и озолочусь», у вас не хватит на это ни жизненных сил, ни времени. Поэтому даже думать об этом не стоит. Вы со своими проектами не выбьетесь уже никогда.

Ломаем стереотипы: 46 мифов о программировании

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

Оглавление

  1. Общие мифы о программировании (15).
  2. Мифы об обучении программированию (12).
  3. Мифы об ограничениях (3).
  4. Мифы о возможностях программистов (2).
  5. Мифы об инструментах разработчика (8).
  6. Мифы о карьере программиста (6).

Общие мифы о программировании

1. Надо быть очень умным

Это самый распространенный миф, который удерживает новичков от написания своих программ. Многие люди считают себя недостаточно умными, чтобы стать программистами. Да и самих программистов нередко наделяют способностями не то роботов, не то гениев. Однако, научиться программировать не так сложно, как кажется на первый взгляд. А программисты — это обычные люди, которые испытывают страсть к созданию компьютерных программ, игр и приложений. Чтобы писать код не нужно быть гением: достаточно иметь мотивацию, интерес и дисциплину. Если вы открыты для нового и готовы применять приобретенные навыки на практике, то программирование станет для вас не только полезным опытом, но и приятным времяпровождением. Конечно, есть по-настоящему сложные задачи, которые способны решить только люди с очень большим опытом, но это скорее исключение, а не правило.

2. Нужно хорошо знать математику

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

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

3. Программирование не для творческих людей

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

4. Программирование для “ботаников”

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

Многие люди опасаются, что станут такими же, если начнут программировать. Особенно этот страх распространен среди женщин, которым трудно найти образец для подражания в технических областях. Однако, мужчина-“ботаник” — это стереотип. Программисты не обязательно ведут затворнический образ жизни: они бывают общительны и часто имеют увлечения, не связанные с программированием. Среди них есть музыканты, танцоры и спортсмены, так что нет оснований полагать, что программисты чем-то отличаются от работников других профессий.

Программист Вячеслав Бахмутов после занятий тайским боксом. Разработчик в Dropbox. Ранее работал в Яндексе.

5. Нужно иметь особый талант

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

6. Программирование – это скучно

Впечатление от занятия чем-либо зависит от отношения к делу. Люди, увлеченные программированием не считают его скучным, иначе зачем бы они им занимались? Это касается любого занятия: человек сам определяет, что ему скучно, а что интересно. В свою очередь сфера создания программного обеспечения дает человеку выбор области, в которой он хочет работать: программист может писать мобильные приложения, создавать сайты и веб-приложения, а может писать ПО для космических машин, самолетов и автомобилей. Навыки программирования позволяют работать в самых разнообразных отраслях: от сельского хозяйства до ракетостроения. Пользователями ваших программ может быть как узкий круг специалистов, так и многомиллионная аудитория людей по всему миру. Разве это может быть скучно?

7. Вы перестанете общаться с людьми

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

8. Нужно много запоминать

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

Подсказки в IDE PyCharm от JetBrains

9. Нужно знать все алгоритмы

Алгоритмы — основа программирования. Некоторые из них простые, другие для понимания требуют особых знаний. Тем не менее вы не должны знать их наизусть. Когда я учился программированию, я мог записать алгоритм сортировки 5-6 способами и указать различия, преимущества и недостатки каждого. Сегодня я вспомню от силы 2-3 названия алгоритмов сортировки, не говоря уже о реализации, но это не значит, что я стал хуже программировать: без практики материал быстро забывается.

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

10. Мне не хватит усидчивости, чтобы писать столько кода

Профессиональные программы содержат десятки тысяч строк кода, что пугает начинающих программистов. Тем не менее для написания программ разработчики используют одни и те же языковые конструкции. Это как в иностранном языке: для понимания 80% происходящего, достаточно знать 2000 слов (а не 50 000, которые есть в языке). Комбинируя различные слова и фразы, вы сможете разговаривать с любым человеком. В программировании похожий принцип, поэтому программы, будучи составленными из одного множества управляющих конструкций, могут решать широкий класс задач.

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

11. Программирование – это не серьезно

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

12. Мне нужен мощный компьютер

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

Гилфойл и его 7 мониторов. Комедийный сериал «Кремниевая долина».

13. Компьютерный код слишком сложный для понимания

На первый взгляд, компьютерные программы кажутся слишком сложными и непонятными. Ок, тогда взгляните на китайские иероглифы. Неподготовленный человек увидит в них лишь набор каракуль, тем не менее, около 1,3 млрд жителей планеты могут спокойно читать, писать и понимать китайское письмо. Компьютерный код гораздо проще иероглифов или других естественных языков. Его не нужно произносить или понимать на слух, а набор базовых инструкций составляет 50-100 для одного языка программирования.

14. Я создал веб-сайт, значит, я программист

На самом деле, нет. Создание сайтов зачастую не требует знания ни HTML и CSS, ни основ программирования вообще. Профессиональные веб-разработчики владеют множеством технологий и языков программирования. Вопреки слоганам веб-курсов, получить такие знания не удастся за один месяц, не говоря уже о прочих мифических сроках. HTML, CSS, PHP, JavaScript, клиентская оптимизация, базы данных, клиент-серверная технология, SQL, Apache, системы контроля версий — это лишь небольшая часть технологий, с которыми веб-разработчики сталкиваются ежедневно. Однако, не нужно пугаться: стоит только приложить к этому усилия. Свой первый сайт я создал в 2002 году на HTML и CSS, когда учился в 11 классе. И это было захватывающе. Если и вы имеете азарт к созданию красивых и удобных веб-сайтов, то статья о цвете в веб-разработке поможет сделать это занятие более интересным.

15. Программисты все пишут с нуля

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

Мифы об обучении программированию

16. Обучение заканчивается после прохождения курсов

Учеба не заканчивается после освоения языка. К тому же, выучить базовый синтаксис языка не так сложно, сложно научиться применять его на практике. Обучение никогда не останавливается: если вы прекратите учиться, то через некоторое время вы потеряете полученный навык. Чтобы не допустить этого, знания изученного материала полезно подкреплять практическими занятиями. Как и при изучении иностранных языков, долгие перерывы в обучении могут так же негативно сказаться на результате обучения.

17. Чтобы стать программистом, нужно закончить университет или техникум

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

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

18. Сначала нужно выучить весь синтаксис

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

19. Я смогу научиться программированию, посмотрев несколько уроков

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

20. Стать программистом легко

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

21. Это слишком долго

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

22. Я никогда не догоню крутых программистов

Новички часто задают вопрос: «Как можно сравняться с людьми, которые программируют много лет?» Не так сложно. IT-индустрия постоянно растет, и знания опытных программистов быстро устаревают. Им приходится постоянно учиться и совершенствоваться, чтобы быть конкурентоспособными. Поэтому после того, как вы освоите базовые навыки, вы будете примерно на одном уровне с опытным разработчиками. Более того, вы будете даже в более выгодном положении, особенно если дело касается новых технологий. Программисты будут до конца держаться за проверенные временем и знакомые им технологии, пока она полностью не изживет себя. Вы же можете освоить любую область, которая только набирает популярность. Используйте отсутствие опыта как преимущество.

23. Есть лучший курс или сайт для обучения программированию

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

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

Стать миллионером — отличная цель. И программирование сможет помочь, но не стоит обольщаться. Билл Гейтс, Марк Цукерберг, Павел Дуров или Сергей Брин — все они не стали миллиардерами за один день. Им потребовались годы учебы и упорного труда. Если вы ожидаете через 2 недели обучения написать свою MMORPG, крутой сайт и мобильное приложение, то вынужден вас разочаровать: так это не работает. Программирование не место для быстрых и легких денег. Тем не менее программирование открывает огромные возможности как для карьерного роста, так и в создании собственного бизнеса.

Цукерберг рекомендует:  Хостинг - Порекомендуйте бесплатный хостинг

25. Начинать лучше со сложных языков

Когда вы приходите в первый класс, никому в голову не придет сразу начинать с интегралов, даже умножение вы изучите только во втором классе. Так же и с программированием: хотите сохранить мотивацию и быстрей получить результат — начинайте с простых языков, как Python. Как только вы освоите основы программирования, вы легко перейдете на более сложные технологии и языки программирования вроде C++ или Objective-C.

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

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

27. Чтобы стать программистом, необходимо тратить 30 минут в день

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

«На пике своего обучения я проводил за компьютером по 16 часов в день. Для этого приходилось прогуливать институт и на время забросить спорт. Но это того стоило», — Никита Шультайс

Мифы об ограничениях

28. Я слишком стар для программирования

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

29. Он слишком молод для программирования

Часто родители используют возраст ребенка как сдерживающий фактор для начала обучения программированию. Конечно, существует разница в модели обучения детей и взрослых, но сам по себе возраст не должен быть помехой для начала занятий программированием, как он не является помехой, чтобы отдать своего ребенка на хоккей или гимнастику. Уже с 8-9 лет дети отлично понимают базовые концепции программирования и создают свои первые программы, например на языке Scratch. Кстати, о языках и средах программирования для детей вы можете узнать здесь поподробнее.

Школа детского программирования на Scratch

30. Женщинам не место в программировании

Конечно, мужчин-разработчиков гораздо больше, чем женщин, но это не означает, что женщины не могут или не должны программировать, особенно при наличии интереса. Есть много успешных женщин-разработчиков. Интересный факт: первым программистом в мире была как раз женщина — Ада Лавлейс. А Марисса Майер одной из первых присоединилась к команде программистов Google. Однако, многих женщин не привлекает программирование, как мужчин не привлекает парфюмерная промышленность. Тем не менее это связно не со сложностью профессии, а, скорее, с социально-экономическим давлением и личными интересами женщин. Нет никаких объективных причин женщине не становиться программистом. У мужчин и женщин варианты и пути развития карьеры одинаковы.

Мифы о возможностях программистов

31. Все программисты — хакеры

Иногда программистов сравнивают с хакерами, причем в негативном значении этого слова. Хакеры-нарушители пытаются получить несанкционированный доступ к ресурсам, в то время как рядовые программисты выступают за сохранность данных. Само по себе занятие программированием не делает вас хакером в смысле “специалиста по взлому”.

32. Все программисты обязаны уметь чинить технику

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

Мифы об инструментах разработчика

33. Один язык лучше, чем другие

Программисты любят хвалить язык, на котором программируют. Часто можно услышать о том, что тот или иной язык лучше остальных. Но правда в том, что каждый язык служит определенной цели, и нельзя однозначно сказать, что один язык лучше другого. Это все равно что спросить какой язык лучше: итальянский или французский? Зависит от страны, в которой вы находитесь. Тем не менее есть языки, которые лучше подходят для начинающих — например Python. Но вы можете начать и с Java, C# или даже C++. Некоторые языки лучше подходят для математических расчетов, для управления ресурсами компьютера. Исходя из этого, пользу конкретного языка программирования можно определить лишь в рамках определенной задачи. И часто задачи требуют знания нескольких языков. Поэтому языки работают вместе, а не друг против друга.

34. Все языки программирования одинаковые

Часто считают, что все языки программирования — это лишь вариации решения одной и той же задачи. Но это не всегда так. Разные языки программирования используются для решения разных задач. Python хорош для обучения, создания сайтов и обработки данных, JavaScript используется для создания динамических веб-сайтов, на C++ пишут сложный софт, для которого важна производительность, PHP — самый популярный язык для разработки сайтов, на Swift создают приложения под iPhone. Как видите, разные языки подходят для решения разных задач, и профессиональные программисты часто владеют сразу несколькими из них.

35. Крутые инструменты тормозят процесс обучения

Программисты пишут классные и полезные программы не только для других, но и для себя. Одной из таких программ может являться конкретная IDE, интегрированная среда разработки, которая предоставляет пользователю (программисту) удобный интерфейс для работы с кодом. Они сами завершают синтаксические конструкции, а также помогают отслеживать ошибки и опечатки. Может сложиться впечатление, что эти программы пишут код за вас, но это не так. То, что вы управляете автомобилем с усилителем руля, не означает, что автомобиль сам поворачивает. Так и с редактором кода: он лишь помогает, а основную работу делает программист. Иногда профессиональные программисты будут пытаться склонить вас к использованию “жестких” редакторов, вроде блокнота или даже Vim. Однако, использование блокнота или Vim не сделает из вас хорошего разработчика, так же как и использование IDE не сделает из вас плохого программиста.

36. Нужно изучать молодые языки

Python появился в 1991 году, а С++ в 1983, но это не значит, что они устарели, и нужно изучать новые или модные языки. Языки программирования постоянно обновляются, в них добавляют новые синтаксические конструкции, расширяются библиотеки. Это как автомобили: первый Mercedes создали более 100 лет назад, но новые модели выпускают каждый год. Изучайте тот язык, который будет решать поставленные задачи. Хотите начать программировать, то посмотрите на Python; хотите делать сайты — то PHP или JavaScript; интересует мобильная разработка — Swift (iPhone) или Java (Android).

37. Настоящие программисты пишут на C++

А настоящие водители пользуются только механикой и раз в неделю перебирают двигатель автомобиля в гараже. «Элитные» программисты считают некоторые языки программирования отстойными. Например, долгое время так относились к PHP, а сейчас то же самое говорят JavaScript при попытке использовать его на стороне сервера. Тем не менее PHP мощный и популярный язык, на котором был написан Facebook, Вконтакте и миллионы других сайтов. Нет крутых или отстойных языков, есть языки, которые решают конкретные задачи. Всё остальное — это вкусовщина и предубеждения. Выбор языка программирования не должен навешивать на программиста ярлык “недокодера” или какой-либо другой.

38. Я программист, так как освоил HTML И СSS

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

39. Веб-программист не напишет ничего серьезного

Посмотрите на Facebook, Вконтакте и тысячи других сайтов. Их создали веб-разработчики.

Веб-разработчик и предприниматель Марк Цукерберг. Создал самую популярную в мире социальную сеть.

40. Чтобы стать профессионалом, достаточно освоить один язык

Профессиональные программисты владеют несколькими языками и множеством вспомогательных технологий. Ведь программирование это не только написание программ (кодирование), это и социальные навыки, и умение писать документацию и тесты, и навык разделения крупной задачи на мелкие, и многое другое. Даже чтобы разработать небольшой сайт, необходимо знать HTML, CSS, JavaScript, PHP или другой серверный язык. С одной стороны, огорчает, что профессионалу мало знать один язык. С другой стороны, после освоение одного языка другие языки изучаются значительно быстрее.

Мифы о карьере программистов

41. Я быстро смогу заработать много денег

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

42. Я еще не скоро начну зарабатывать

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

43. Я быстро найду работу, так как на программистов большой спрос

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

44. Работодатель сам меня найдет

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

45. Все программы уже написаны

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

46. Навыки программирования нужны только программистам

Навыки программирования полезны не только разработчикам программ, но и специалистам в других областях: биологам, политологам, экономистам, статистам, физикам. Освоив основы программирования и несколько популярных библиотек, они могут расширить свои возможности в обработке информации и автоматизации рутинных задач. Так, известный SEO-специалист Алексей Трудов освоил основы PHP и JQuery и начал писать небольшие скрипты для автоматизации своей работы.

Главный барьер программиста

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

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

Казалось бы, через столько лет программистов должны подготовить достаточно. Но нет.

Сейчас на рынка та же самая дичайшая нехватка программистов. Почему?

Парадокс IT-выпускников

Когда я работал доцентом ВУЗа и преподавал программирование, то я знал одну простую вещь. Есть группа студентов. Обычно 20 человек.

В конце семестра на экзаменах по программированию большинство получат четверки и пятерки. То есть формально они курс освоили.

Но устроятся на работу программистами из них только два-три. На отличные должности. Один мой студент за пару лет дошел до оклада 100 000 руб. Я его спросил:

— Как это тебе удалось?

— Кадров нет. Вакансии висят, но никого нет.

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

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

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

И это на фоне дикой нехватки программистов. Как можно объяснить это явление?

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

Строгая приемка

Это связано с тем, что компьютер предъявляет чрезвычайно строгие требования к программе. Программа должна быть на 100% верной.

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

Во всех профессиях есть некоторый люфт. Не обязательно сделать все идеально. Достаточно сделать приемлемо.

И только у программиста требование: все или ничего.

Отсюда — важное следствие. Львиную долю работы программиста составляет не написание программы, а ее отладка. Отладка программы — это поиск и устранение ошибок.

И этот процесс совсем не так прост с психологической точки зрения.

Вечная отладка

Любой новичок в программировании готов исправить пару ошибок в программе. Но он совершенно психологически не готов к грустной шутке программистов:

Каждая последняя обнаруженная ошибка в программе является предпоследней.

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

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

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

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

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

Но ничего с собой поделать не может. Отладка его выводит из себя.

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

  • Компилятор выдает ошибку.
  • Программа не работает.
  • На экране ничего не выводится.

При этом в тех скриншотах, которые они присылают, ошибки примерно такого рода:

При этом компилятор ясно пишет, в чем ошибка:

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

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

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

Программист-сыщик

У профессиональных программистов совершенно другое отношение к ошибкам. Для них — это скорее интрига.

Они похожи на Шерлока Холмса, который расследовал преступления, потому что это доставляло ему удовольствие.

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

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

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

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

Поэтому дефицит программистов будет всегда.

11 причин оставить программирование своим хобби, но не делать его профессией

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

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

Итак, вот что вам придется делать, если вы будете профессиональным IT-специалистом.

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

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

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

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

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

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

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

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

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

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

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

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

  • Любить свою работу. Время от времени вы будете вскакивать ночью с постели, чтобы записать приснившийся вам кусок кода или начинать «кодить» сразу после пробуждения. Программирование требует постоянной увлеченности своим делом. Для того чтобы добиться успехов на поприще программирования, вы должны будете полюбить каждый проект, в котором принимаете участие, и даже свое рабочее место. Сами подумайте, разве можно без любви вынести все, о чем сказано выше? Вы готовы ко всему этому?! Тогда вперед, без страха и сомнений!
  • Добавить комментарий Отменить ответ

    Для отправки комментария вам необходимо авторизоваться.

    Понравилась статья? Поделиться с друзьями:
    Все языки программирования для начинающих