Сегодня специалистов готовят по широкому спектру программистских специальностей:
«Прикладная математика и информатика», «Фундаментальная информатика и информационные технологии», «Математическое обеспечение и администрирование информационных систем», «Программирование в компьютерных системах», «Информатика и вычислительная техника», «Прикладная информатика», «Информационная безопасность» и другие.
Сегодня практически в каждом университете или институте, где есть «кибернетический» факультет или хотя бы факультет математики, можно найти одну из перечисленных специальностей.
Понятно, что основным экзаменом для учебы в вузе по этой специальности является математика.
Вместе с тем, существует и другой путь в профессию: получение дополнительного образования и даже самообразование.
Мой отец говорил мне в семидесятых годах, возможно, повторяя слова кого-то из основоположников кибернетики: «Образованный человек должен знать хотя бы один язык программирования». Слова пророческие, они означают, что программирование должен знать и неспециалист. Хотя бы для того, чтобы общаться с программистами, которые порой представляются нам «инопланетянами», которые на понимают нас, но и мы не постигаем их языка.
Программистами становятся также люди, обладающие близкими специальностями: физики, инженеры, финансовые специалисты. Нередко они оканчивают специализированные курсы, а чаще всего, занимаются самообразованием, самостоятельно постигая программирование. Как правило, они озадачены решением своих научных или практических проблем, требующих создания программ. И нередко они и сами разрабатывают для себя такие программы. Создав программу для себя, они доводят ее до коммерчески значимого образца, выходят на рынок программных продуктов и становятся профессионалами.
Как строится карьера в этой профессии?
Есть программисты, которые работают в организациях - там они перемещаются по карьерному конвейеру малой скоростью, ведь он очень короток. Впрочем, как правило, программистом движет не высокая должность, а интересные задачи. В основном от высокой должности они ожидают возможность ставить задачи другим программистам при разработке комплексных проектов.
Другой класс программистов - самостоятельные специалисты. Некоторые из них получили известность, и для них - это вершина карьеры. Такие программисты, словно художники или писатели, создают оригинальные и сильные продукты, которые приносят им славу.
Лет тридцать назад основатель компании Microsoft Билл Гейтс предложил миру идею и даже чертеж карманного устройства, который заменит телефон, паспорт, кошелек и прочее. Тогда мир еще не был готов ее реализовать. Сегодня мы видим ее воплощение. Но что важнее: устройство или программа, управляющая им? Он же как-то сказал про конкурента, сделавшего очередной компьютер, примерно следующее: «Ну сделал он очередную коробочку. А кто напишет для нее программу, чтобы она заработала?».
Любой человек должен уметь менять пеленки, планировать вторжения, резать свиней, конструировать здания, управлять кораблями, писать сонеты, вести бухгалтерию, возводить стены, вправлять кости, облегчать смерть, исполнять приказы, отдавать приказы, сотрудничать, действовать самостоятельно, решать уравнения, анализировать новые проблемы, вносить удобрения, программировать компьютеры, вкусно готовить, хорошо сражаться, достойно умирать. Специализация - удел насекомых.
Роберт А. Хайнлайн
Писать про IT-профессии довольно сложно, ведь они сейчас в каждой сфере. Почти в любой профессии что-то связано с IT. Дело, которым человек решил заниматься в жизни, должно быть значимым и нужным другим людям, приносить реальную практическую пользу. Можно сколько угодно внутренне самосовершенствоваться и утверждать, будто самое важное - это твой богатый внутренний мир, но, на самом деле, всё, что происходит в сознании человека, не имеет никакого смысла и значения, если не дает реальных ощутимых практических плодов, влияющих на жизнь и развитие общества в целом. Объективно, человек - это его работа, это конечный результат прилагаемых усилий. Всё остальное - только почва, из которой такой плод - результат - может вырасти. Люди, не сумевшие вовремя этого осознать, обрекают себя на то, чтобы долгое время, если не навсегда, оставаться аутсайдерами, способными только ныть, жаловаться и недоумевать, почему общество их отвергает?!
Глава 2
Что касается плюсов. Самое первое, что хотелось бы отметить, работа творческая, и творить можно все, что придет в голову тебе или заказчику. Одновременно это работа, обладающая исключительной социальной ценностью. Ведь мало кто сегодня представляет свою жизнь без компьютера, я не имею в виду только конкретно ПК. Компьютеризировано буквально всё - от микроволновой печи и прочих бытовых приборов, которыми пользуется любая домохозяйка, до смартфона и автомобиля. Да что автомобиль?! А космический корабль; а роботы-хирурги, помогающие врачам оперировать на самых сложных участках?! И с каждым годом будет появляться всё больше подобных устройств, в то время как примитивные вещи уйдут в прошлое. Так кто же такой программист? Это специалист, задача которого - научить компьютер необходимым каждому навыкам. Если же мы собираемся кого-то (или что-то) чему-то обучать, то обязаны говорить на одном языке со своим учеником, не важно, одушевленным или неодушевленным и быть способным объяснить ему нашу задачу. Мало того, от программиста требуется еще и знать профессии и сферы деятельности, в которых используется компьютер! И сделать так, чтобы машина и специалист в той или иной области смогли понять друг друга и «договориться». Интересно? Еще как! Вот вам и применение для моей экстраверсивности, желания и умения общаться не только с машинами, но и с людьми. И более всего я хочу сама общаться с заказчиками, а не поручать это «бизнес-информатикам». Ведь многих моих коллег безумно раздражает отношение к нам, специалистам IT, как к каким-то магам, когда в результате решения элементарной, с нашей точки зрения, задачи, на нас смотрят круглыми глазами, в которых читается: «О, белый человек, ты принес нам огонь!» - а ты, собственно, просто чиркнул зажигалкой. Недавно меня попросили написать программу для одной типографии - калькулятор. Я месяц отработала помощником в типографии. Провела много времени, общаясь с сотрудниками. Начала писать программу, но поняла, что владею инструментом недостаточно хорошо, пока что, набираюсь опыта, а так же знаний в области типографского дела. Это вам как пример того, что нужно знать и область применения программы, хотя бы поверхностно. Второй плюс. Постоянное самосовершенствование, непрерывное движение вперед. Эта наука на месте не стоит, постоянно развивается и преобразовывается, появляется все новая и новая информация, так что необходимо изо дня в день держать руку на пульсе времени, не отставать. Но при этом, мало просто оставаться на плаву, требуется еще и что-то изменять, дополнять, искать и находить неожиданные ходы и решения, придумывать то, что в дальнейшем будут изучать твои коллеги. Третий плюс профессии. Профессия актуальная и высокооплачиваемая. Если зайти на всевозможные сайты по поиску работы, можно увидеть, что в сфере программирования масса вакансий. Основные - специалисты по 1C-бухгалтерии, разработка веб-сайтов, программирование на языках Си (Си шарп чаще всего), а так же язык Java. При этом средняя оплата за проект, который можно выполнить в короткие сроки - 50 000 руб. Все зависит лишь от ответственности и способности сотрудника. За границей деятельность таких специалистов оцениваются еще дороже, а язык один и тот же. Следующий плюс. Есть все шансы стать инди-разработчиком. То есть, полностью работать на себя, без необходимости зависеть от кого бы то ни было и выставлять исключительно свои проекты. Девиз инди-программистов - «Do It Yourself» - сделай это сам. Пятое достоинство: возможность профессионального роста. Нет определенной планке я могу достичь любого уровня, здесь все зависит только от меня, от того, насколько любопытной и трудолюбивой я буду. Пусть многие говорят: «Если ты посвятил жизнь программированию, то кем-то выше, чем программистом ты не станешь!», хочу оспорить: человек может стать кем угодно, многие профессионалы и знаменитые личности раскрывались в довольно взрослом возрасте. А программист? У него исключительная возможность: ведь создавая программы в разных областях - мы начинаем разбираться в этих областях, что дает нам шанс понять, чего мы хотим, и хотим ли чего-то другого? Прочитала недавно один пост про неравенство: «Физик-ядерщик всегда может стать маляром, а маляр никогда не станет физиком-ядерщиком». Я считаю, что программист - это и повар, и маляр, и физик-ядерщик, и танцор, и видеооператор. Ведь сколько сайтов создано, неужели вы думаете, что их писали просто программисты? В каждый вложена душа, очень тяжело написать сайт «Тортики своими руками», никогда не сделав тортик своими руками или хотя бы немного не понимая о чем речь. Когда пишешь программу, сайт, хочешь - не хочешь, а в «тортиках» разберешься. И это не только мое мнение: «Да, программист не должен знать все. Для написания программы для перевода не нужно знат