Хочу поделиться своими мыслями на тему "Стоит ли становиться программистом".

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

Итак, объектом исследования будут являться "компьютерщики", "IT-шники" и прочая "живность" около компьютерного мира.

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

Итак попробуем сформировать модель, как упрощенный объект, описывающий реально существующие группы субъектов.

Программер, программист, разработчик программного обеспечения  -  магmage. Конечно же это всего лишь аналогия, но, как мне кажется, наиболее близкая. Программисту нужен хороший интеллект (intelligence).  Он определяет, например, сколько языков может выучить программист, насколько сложные "заклинания-технологии" он сможет осилить.   "Программерская магия" бывает разная. Например, это может быть "стихия" windows или unix,  это могут быть различные языки на которых можно творить - c, java, c#, php, asm и т.д.  Сила программера - это долгое и упорное обучение.  Начинать за программера сложно, если интеллектуальные способности средние и нет возможности устроиться в отряд/группу к сильным программистам чтобы набраться экспы. Тогда придется браться за любые задачи, за которые платят хоть какие-то деньги. Многие в это время бросают проходить дальше за программера и начинают идти за другие классы.

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

После того как уровень программера увеличивается, жизнь его меняется.  Например, средне-прокаченный программер в востребованном сегменте может получать 50-80 тыров в DefaultCity, что соответствует показателю зп для админов выше среднего.  По мере прокачивания, программист в итоге может стать АрхиТектором, техдиром или  CTO (это у буржуев - Chief technical officer), а если повезёт, стать внеуровневым персонажем как Билл Гейтс, Сергей Брин, Стивен Возняк, Ричард Мэттью Столлман и др.

Админ. Админская магия отличается от программерской. На мой взгляд, админ ближе к пристам (жрецам, клирикам, шаманам).  Главная фишка админов - способность всё чинить.  Крутые админы могут резуректить потерянные данные, воскрешать умершие системы. Часто админы бывают фанатично преданны какому-то определенному "неперсонифицированному богу" - Linux, FreeBSD (иногда бывает что и  Windows).  У некоторых админов есть большой набор различных "магических артефактов" - профессиональных сертификатов, которые в некоторой степени имеют большую значимость, чем у программеров. Например, CISCO-вские сертификаты у сотрудников организации дают возможность участвовать  в цисковских партнерских программах, что в итоге может дать неплохие скидки той компании, в которой работает цискарь с правильным сертификатом.  Вот такие амулеты. Апофеоз карьеры админа - IT директор.

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

Хакер,  взломщик. Здесь мы обратим свое внимание к темной стороне. Сюда я бы отнес программеров, которые пишут вирусы и другое зловредное ПО. Это темные маги,  варлоки  (warlock).  По сути, это обычные программеры, которые углубились в изучение демонических технологий - взлом, уничтожение данных и распространение вредоносного кода. Многие из них становятся похожими на некромантов - в их подчинении целые полчища зомби-компьютеров, которых они могут вызывать и использовать по своему требованию.

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

Белый хакер.  Ethical hacker, white hat, специалист по информационной безопасности.  Это Паладин - рыцарь без страха и упрёка. Под специалистами по ИБ я имею ввиду тех, кто может провести тесты на проникновения, выявить уязвимость в разрабатываемом модуле, обезопасить сеть от вирусов и т.д., а не тех, кто сидит и тупо проверяет переписку сотрудников, логи посещаемых сайтов или занимается обычной слежкой за персоналом. В этом нет ничего рыцарского.

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

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

Теперь можно приступить к выводам - "быть или не быть программистом?..."

Плюсы

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

Минусы

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

Итог

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