Об ИТ из Канады

Блог Михаила Флёнова - программист, блогер, автор нескольких скандальных книг какими-то глазами...
Как стать программистом? - Статья : блог Михаила Флёнова

Как стать программистом?

Работа программиста разнообразна и все зависит от того, что именно программировать. Настраивать 1С это попса, а вот писать свои базы данных – это совсем другая песня в стиле Rammstein :). Программирование графики и игр может быть полезным и интересным, а исправление ошибок в чужом коде это уже напоминает прием у врача-проктолога. Работа программера напоминает страшную историю. Это страшилка, которой можно пугать людей, и я сейчас расскажу ее тебе.

Задачи программиста

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

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

Обучение программисту

Главный вопрос – куда идти учится на программиста. Если ты житель Москвы, то тут институтов достаточно много и высшее образование никогда не помешает. Но если из глубинки, то в большинстве случаев учеба будет пустой тратой времени. Лучше поступить на вечернее отделение какого-нибудь института или закончить курсы. Одновременно можно попытаться найти работу, пусть невысоко оплачиваемую, но зато не требующую опыта.

Я из Ростова-на-Дону и у нас много институтов, но туда не идут преподавать профессионалы, потому что в учебных заведениях платят меньше, чем уборщице в коммерческой фирме. Да и с техникой проблемы, поэтому учить будут технологиям на основе DOS и Windows 95.

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

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

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

Что учить?

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

Остальные языки (Visual Basic, Java) в России практически не прижились и их изучение (на наш взгляд) – пустая трата времени. По крайней мере работу найди будет сложно.

Достаточно изучить язык программирования?

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

Если работа связана с графикой, то тут придется изучить графические пакеты (3DS Max, Photoshop и т.д.) и хоть немного уметь рисовать. Когда время поджимает, то нет времени ждать художника, когда он подкорректирует текстуру или скелет 3D объекта.

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

Сколько платят программисту?

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

В Москве хороший программист с приличным опытом работы может получить зряплату в размере $800-1200. Если опыта нет и знания пока на уровне простейшей математики, то тут зарплата уменьшается до $200-$600.

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

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

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

Первые дни работы

Представим, что ты получил заветное рабочее место и вышел на свой первый рабочий день. Чем же ты будешь заниматься? Первое время никто и никогда не доверит писать реальный софт. Если в компании большой проект, то максимум, на что можно рассчитывать – вылавливание багов. Когда багги простые, то это еще терпимо, но когда код написан коряво, и надо переделать мегабайт исходников, то тут уже готов плюнуть даже на $1000 и пойти куда-нибудь дворником. Исправление багов самое неблагодарное дело и после 8 часов такого труда глаза краснеют как у быка, потому что от напряденного созерцания монитора в глазах лопаются кровяные сосуды.

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

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

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

8 часов и ни капли дальше

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

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

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

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

Мне чаще всего приходилось болтать с теми, кому уже за 40, а в этом возрасте у 99% дам ошибка в ДНК. Ну а про IBM совместимость вообще говорить нечего. Они иногда такие корки выдают, что моя коллекция ламоразмов сразу начинает разбухать и лопаться от переполнения.

На одном из предприятий мне довелось поработать программером на производстве. Администраторы на фирме занимались офисными задачами, устанавливали там парус, следили за сеткой и компами, а я отвечал за производство (сбор информации с производственного оборудования). Админы быстро съехали, мол, производство не их задача и мне пришлось самому собирать компьютеры, устанавливать Win200 Server, MS SQL Server, писать программу и ставить все это в цех. Обслуживание тоже ложилось на мои плечи, поэтому в таких случаях получаешь весь набор недостатков профессии админа + программиста.

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

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

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

Программисты больше не боги

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

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

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

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

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

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

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

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

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

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

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

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

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

Итого

Требования к программисту достаточно большие, но и зарплата достаточно высокая. В моем же городе оплата низкая и даже все мои знания и заслуги дают зарплату максимум в $400. Для меня больше нет ничего интересного в работе программиста (перерос), поэтому я высунул зонтик и пошел работать администратором за те же деньги. Работаю пол года и никаких проблем, а в перерывах программирую для себя, но надеюсь найти хорошую и высокооплачиваемую работу.


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

О блоге

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

Внимание!

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

Обратная связь

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

Пишите мне