Я – программист

Я – программист

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

Содержание
Читайте также
Профгид
Профессия «Профессия программист»

Когда знакомлюсь с людьми и говорю им,  кем  я работаю, они удивляются. Говорят: не похож ты на программиста. Бытует особое мнение о том, как выглядит человек нашего труда.  Это обязательно должен быть замкнутый «ботаник», витающий где-то далеко на своей волне, у него бледно-болезненный вид, немытые волосы и очки. Мой  жизненный опыт показывает  — мы, программисты, — увлеченные делом люди, но не зацикленные на нем.  Хотя, исключения, конечно, бывают...

ПрофГид меня попросил написать статью о нас, программистах.

Расскажу о том, чем мы занимаемся на самом деле.

  • Хотите стать профориентологом всего за 2 месяца?
    Получите полезную профессию, помогающую людям. Курс Эльмиры Давыдовой.

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

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

Один так и говорит: «Хочу, как дядя Вова, — сидеть дома, ничего не делать и получать деньги». Пожалуй, со стороны так всё и выглядит: сидит «дядя Вова» на даче в кресле, и что-то там делает на ноутбуке. Посмотришь на экран, а он то чатится с кем-то, то почту проверяет. Утром на работу не спешит, да и вообще садится, когда захочет, а то и на баньку прервется.

Как выглядит карьера программиста в моем случае?

Мне тридцать восемь лет, из них двадцать два года компьютеры —  моё самое большое увлечение. Впервые, как и многие мои сверстники, я сел за клавиатуру в предпоследнем классе школы. В то время дома их ни у кого не было. Помню, с каким трепетом я впервые прикоснулся к клавишам, пока учительница  говорила про «алгоритм включения и выключения». Мы этот алгоритм записывали в тетрадь: «стол, клавиатура, дисплей... дисплей, клавиатура, стол». О! Это была массивная, металлическая клавиатура и здоровенный текстовый дисплей с зелеными буквами. При включении на экране появилась надпись по-русски «Жду:». Я попробовал что-то ввести, — выдалась ошибка. Я исправляю ввод, компьютер это проглатывает, и снова пишет «Жду:». Не знаю почему, но меня это очень раззадорило — компьютер понял меня!!! Захотелось писать и писать дальше.

С нетерпением я ждал уроков информатики, но они были так редки: один раз в неделю 40 минут! Довольно быстро я уже писал программки вне школьной программы. Ха! Кстати, первая программа, которую я написал, — тест на профориентацию. Привет, заказчик статьи! Это был обычный тест, напечатанный в каком-то журнале с вопросами и вариантами ответов. По сумме баллов выдавались рекомендации. Потом были еще персональные задания — и для школы полезно, и мне интересно.

Мне повезло с учителем информатики. Галина Григорьевна, низкий вам поклон за то, что не дали остыть моему интересу! Чтобы увеличить время работы за компьютерами, я записался на курсы информатики при ДКиТ ВАЗа. К сожалению, курсы длились только месяц, а в кружок после окончания меня не взяли — программа, которую я написал при «выпуске» не впечатлила преподавателей. Это меня по-хорошему разозлило — захотел доказать самому себе, что они ошиблись! Стал ходить в компьютерный класс при педагогическом институте. Но перенять опыт там было не у кого — туда ребята в основном приходили, чтобы поиграть, даже лаборанты увлеченно во что-то играли.

В общем, к окончанию школы я точно знал, куда пойти учиться, — на программиста! В нашем городе (Тольятти) негде было этому учиться, и я оказался в Самаре, в политехническом (ныне СамГТУ) на факультете автоматики и вычислительной техники, специальность 2202 «Автоматизированные системы обработки информации и управления». Это престижный был факультет и группа (проходной бал 10 из 10). К сожалению, в нашей группе было много «случайных» людей — отличников, которые просто пришли к нам из-за престижа. Однако несколько единомышленников у меня все-таки нашлось, но главное —  была атмосфера!

Первый компьютер у меня появился дома на втором курсе, это был  ZX-Spectrum. Подключался он к телевизору, программы загружались с бытового магнитофона. На нём я мало программировал — больше играл. Загружать-выгружать программы было долго и неудобно, я и не нашел для себя интересной области для написания программ. Примерно через год мне стало неинтересно и ужасно жаль потраченного времени на игры. С тех пор я практически не играю.

К третьему курсу мои родители (спасибо им!) пожертвовали отпускными и планами постройки дачного дома — приобрели мне настоящий персональный компьютер: «Электроника ЕС-1840»! Это было очень круто по тем временам. Компьютер представлял собой два больших металлических и жутко тяжелых блока и небольшой черно-белый текстовый монитор. Работало это чудо на аналоге процессора Intel-8086, 640 килобайт оперативной памяти, 2 дисковода для 5ти дюймовых дискет повышенной емкости (720 килобайт!) и самый шик — в нем даже был жесткий диск, с потрясающим на то время объемом — 40 мегабайт!

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

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

Читайте также
Профгид
Кем были первые программисты?

Два последних курса института я писал чисто для себя, проект на языке низкого уровня «Ассемблер» — информационную систему. Программка, которая вызывалась по нажатию горячих клавиш из любой другой программы и в которой можно было почитать справочную информацию. Она и стала впоследствии моим дипломным проектом. Параллельно поработал на ВАЗе, на «практике». Не понравилось. Да, техника отличная, но коллектив... Никому ничего не надо, мной никто толком не занимался. Я сидел себе и писал свою программку на большом мониторе. Жаль, что тогда интернет был в диковинку: можно было бы и разбогатеть, ведь  программа затыкала за пояс по всем параметрам аналог Norton Guides от крутой программной фирмы Peter Norton Computing. Самооценка моя постепенно росла.

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

Были и еще проекты. Самый крупный — электронный каталог запчастей для АвтоВАЗа. Это интересная работа: мы общались с людьми, подготавливающими бумажные каталоги. Узнали много о тонкостях производства автомобилей на ВАЗе, общались с переводчиками (каталог был многоязычный) и придумали, как все это воплотить в программу.

Потом была  Москва. Мы писали информационную систему для нефтяной компании «ЮКОС». Было очень интересно — большие красивые офисы, совещания с солидными людьми, посиделки в ресторанах. Работать было интересно, но жить в Москве некомфортно. В принципе, я почти привык. Но... Слишком много людей, везде. Меня увлек интернет. И когда мои коллеги с предыдущей работы, в шутку, наверное, предложили мне вернуться в родной город, чтобы писать программы для зарубежных заказчиков, я взял и согласился. Заработок обещал быть не меньшим, и это… дома!

Мы сняли офис, начали работать. Около года работали, потом с заказами стало плохо. У основного заказчика случился форс-мажор, а мелких мы растеряли, чтобы «не отвлекаться на глупости». По кредиту надо было платить, за аренду тоже. Наши заработки рухнули. С тяжелым чувством распродали мы технику, часть разобрали в счет зарплаты и разошлись кто куда. Кто-то остался работать на дому, кто-то устроился в организации.

С тех пор, вот уже 8 лет, я работаю из дома. Я фрилансер, работаю по контракту. Зарегистрировал ИП, есть расчетный счет в банке. Расходы на интернет и бухгалтера (раз в год для сдачи отчетности), 6% налогов с выручки и налоги в пенсионный — вот все мои расходы. За годы работы у меня сложился круг постоянных клиентов. У меня интересная работа и неплохой доход.

Чем мне нравится эта профессия

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

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

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

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

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

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

Как выглядит работа программиста

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

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

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

Читайте также
Профгид
7 причин стать программистом

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

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

Во-вторых, должен уметь и желать  постоянно учиться, осваивать вещи с нуля. Вы можете чего-то не знать, но должны уметь найти нужную вам информацию. Самый главный помощник программиста — Google :) В общем, если вам не нравится учиться, профессия программиста не для вас!

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

Мне нравится анекдот про программиста:

«Ложась спать, программист ставит у кровати два стакана. Один с водой, другой — без.

Стакан с водой — на случай, если захочется пить. А без воды — на случай если пить не захочется».

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

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

Какие знания нужны, с чего начать

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

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

Что касается языка программирования, можно начинать с любого, где есть полноценная поддержка ООП (объектно-ориентированного программирования). Я бы порекомендовал язык «Питон» (Python). Это довольно взрослый язык, по нему есть масса информации, отличных книг, в том числе переведенных на русский язык. Кстати, у Профгида есть тест "Какой курс Python для начинающих выбрать?".

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

Очень полезно почитать о методиках разработки программного обеспечения — как построить процесс разработки таким образом, чтобы выполнить работу в срок и качественно. Методики тестирования программного обеспечения — также весьма и весьма полезное чтение. В настоящее время популярна парадигма «разработки через тестирование».

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

Куда пойти учиться

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

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

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

Может, не стоит учиться вообще

Зачем учиться? Ведь есть примеры успешных людей  нашей профессии, бросивших  учебу и ставших миллиардерами.

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

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

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

Всем удачи!

Владимир Мамзиков

Читайте также
Профгид
На какого программиста учиться?
1 комментарий
Оценка: