Какие вузы учат на программиста. Куда пойти учиться на программиста: мнения представителей сферы IT

Начинающий: 20000 ⃏ в месяц

Опытный: 40000 ⃏ в месяц

Профессионал: 90000 ⃏ в месяц

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

Востребованность профессии

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

Для кого подходит профессия

Необходимые качества программиста:

  • Системное мышление.
  • Аналитический склад ума.
  • Хорошая память.
  • Умение излагать информацию на понятном языке.

Условия труда

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

Карьера

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

Многие программисты открывают собственный бизнес в сфере создания программного обеспечения.

Весьма популярна работа на себя с самостоятельным поиском заказов – фриланс.

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

Обязанности

Должностные обязанности:

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

1 место в мире

Стоимость: 41545$ в год

Лучший университет по информационным технологиям в мире. Находится в пригороде Бостона, штат Массачусетс, США.

Для поступления необходимо сдать тест на знание английского языка TOEFL (не меньше 100 баллов из 120), американский тест SAT (не меньше 1520 баллов из 1600), иметь высокие оценки в школе и, конечно же, быть социально-активным.

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

http://web.mit.edu

8 место в мире

Стоимость: 1310$ в год

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

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

Самый известный выпускник университета - автор теории относительности Альберт Эйнштейн.

9 место в мире

Стоимость: 37500$ в год

Старейший и самый крупных университет Сингапура. Выпускники этого университета становятся востребованными работниками по всему миру.

Университет осуществляет обучение по совместным программам с Йельским и Дьюкским университетами.

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

11 место в мире

Стоимость: 46820$ в год

Входит в топ-3 университетов Канады. Торонто - культурный и финансовый центр страны. Для поступления в этот вуз иностранным студентам надо пройти программу International Foundation Programmе. Она длится один академический год. Требования к поступающим: IELTS 6.0, хорошие оценки в аттестате, характеристика от 2 учителей.

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

17 место в мире

Стоимость: 5858$ в год

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

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

13 место в мире

Стоимость: 38976$ в год

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

Выпускники этого университета очень ценятся в международных компаниях. Только 10 % абитуриентов поступают в университет.

Для поступления нужен сертификат IELTS (7.0+) или TOEFL (94+) и высокие оценки. Срок подачи документов: до 31 мая (начало учебного года в июле), 30 ноября (начало учебного года в феврале).

14 место в мире

Стоимость: 18718$ в год

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

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

48 место в мире

Стоимость: 5000$ в год

Лучший университет в России (МГУ). При университете действуют общеуниверситетские подготовительные курсы, после которых вы сможете с легкостью перевестись на 1 курс.

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

В числе российских IT-компаний, с которыми факультет поддерживает наиболее тесные связи: Mail.Ru Group, Люксофт, Консультант Плюс, IBS, Гарант, АйТи, ДВМ, REDLAB, Ланит, Лаборатория Касперского, ДиалогНаука, Доктор Веб, Софтлайн и другие.

Правила поступления и список вступительнх эксзаменов можно посмотреть .

1 место в Казахстане

стоимость: 776875 тенге (2466$) в год

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

Прием абитуриентов в МУИТ осуществляется по их заявлениям на конкурсной основе в соответствии с баллами сертификата, выданного по результатам единого национального тестирования или комплексного тестирования.

Прием заявлений для участия в комплексном тестировании проводится с 20 июня по 9 июля. Комплексное тестирование проводится с 17 по 23 июля.

2 место в Казахстане

стоимость: 1080000 тенге (3428$) в год

Университет, в котором хотят учиться тысячи казахстанских выпускников, находится в центре Южной столицы Казахстана.

Для поступления в КБТУ необходимо:

1. Сдать Единое Национальное Тестирование или Комплексное Тестирование:

Для специальностей Бизнес школы, Факультета информационных технологий, Научно-образовательного центра математики и кибернетики, Факультета энергетики и нефтегазовой индустрии - не менее 50 баллов;
. для специальностей Международной школы экономики, Казахстанской морской академии - не менее 70 баллов.

2. Пройти диагностическое тестирование по английскому языку в КБТУ при отсутствии сертификата IELTS.

3. Сдать необходимые документы для зачисления. Перечень можно найти .

4. Даты подачи документов:

С момента получения сертификата ЕНТ/КТ по 18 августа - прием документов на платное отделение
. c 1 июня по 20 июня - прием заявлений на участие в комплексном тестировании
. c 17 по 23 июля - комплексное тестирование
. с 23 по 31 июля - прием документов на участие в конкурсе на присуждение государственного образовательного гранта
. c 1 по 8 августа - прием документов для участия в повторном ЕНТ/КТ
. с 19 по 24 августа - повторное ЕНТ/КТ
. c 10 по 28 августа - зачисление в контингент студентов КБТУ.

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

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

А чтобы мотивация не падала и был быстрый результат, мы рекомендуем начинать с Pascal /Delphi XE 7, тут и простой синтаксис и язык созданный для обучения программированию, так и возможность визуальной разработки из готовых компонент с поддержкой создания мобильных приложений с единого исходного кода. Тут самое интересное - это возможность создавать свои мобильные приложения для Android и iOS на любом этапе обучения программированию. А по мере роста уровня программиста всегда можно залезть в исходный код и в рамках той же среды перейти на C ++. Что касается вузов, то набор весьма велик, но разъезжая по стране я обратил внимание, как сильно вырос уровень отдельных региональных вузов. Например кафедра ВТИК в Уфимском Нефтегазовом Университете. МГУ, МГТУ им. Баумана, МИФИ, МАИ, Политехнический Университет в Санкт-Петербурге, СПбГУ.

Повысить Понизить

Начинать надо с кружков программирования или робототехники. Важно понять, действительно ли вы хотите стать разработчиком, или это импульсивное и ложное желание. Что касается вузов, то я советую ориентироваться на «сарафанное радио», на форумы в Интернете и мнения друзей. Также стоит сходить на дни открытых дверей, но все-таки иметь в голове ту мысль, что не всегда то, что говорят на таких мероприятиях - чистая правда. Что касается языка, то здесь нет универсального совета. На мой взгляд, выбор языка не важен, настоящий программист может овладеть новым для него языком очень быстро. Хотя, если есть возможность, то начните с C/С++.

Повысить Понизить

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

При наличии желания изучить программирование не очень сложно. А вот что с этим умением делать, вопрос гораздо сложнее. Поэтому вопрос должен стоять так: чем я хочу заниматься всю свою жизнь (или заметную её часть - 5–6 лет), и как в этом мне может помочь программирование.

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

Повысить Понизить

Начать лучше всего с образования. Для основного образования лучшими вузами в России можно назвать МГТУ им. Э. Н. Баумана, МГУ, МИФИ, МФТИ в Москве, Политехнический и ГТИ в Санкт-Петербурге, НГТУ в Новосибирске. Также всегда полезно заняться самообразованием: начинающие программисты имеют массу возможностей учиться в Интернете бесплатно; самые популярные сайты: microsoftvirtualacademy.com , coursera.org , lektorium.tv , universarium.org . Кроме того, для развития карьеры важным может стать участие в олимпиадах и соревнованиях по спортивному программированию, например: Russian Code Cup, Google Code Jam, Facebook Hacker Cup, Яндекс.Алгоритм, ACM International Collegiate Programming Contest.

Языки: Swift для iOS, Java для Android, Ruby для веб-разработки.

Повысить Понизить

, руководитель направления образовательных программ СКБ Контур, партнёр международной олимпиады «IT-Планета»

Выучить язык и научиться программировать - разные вещи, и в целом не важно, с какого языка начинать. Хотя, приятнее и легче начинать с высокоуровневых, например, Python, C#, Java. Хороший программист должен знать несколько языков и уметь изучать новые. Вопрос про материалы скорее актуален для студентов с минимальными навыками программиста, поэтому гораздо важнее вопросы «С чего начать?» и «Какой вуз выбрать?».

Всем начинающим программистам очень повезло: научиться программировать можно играя, и таких продуктов очень много. Нам в Контуре больше всего нравятся coderussia.ru , codemonkey.co.il , codingame.com .

С выбором вуза всё гораздо сложнее. Нет списка вузов, упорядоченного по крутости преподавания ИТ-дисциплин, поэтому всегда есть шанс не угадать 🙂

Чаще всего хорошо преподают в больших вузах и университетах. Если в вашем городе есть вуз, в названии которого есть слова «государственный», «национальный», «федеральный», то в первую очередь стоит присмотреться к нему. Затем узнайте, есть ли в вашем городе крупные ИТ-компании или филиалы таких компаний, с какими вузами у них партнёрские отношения: такие компании почти всегда появляются рядом с сильными университетами очень редко появляются там, где нет качественной подготовки кадров (например, в Екатеринбурге кроме головного офиса Контура ещё есть 4 крупных офиса разработки, около 50 средних и гора маленьких).

Ещё один важный фактор - участие вуза и проведение на его территории ИТ-соревнований, например по спортивному программированию, информационной безопасности (в быту ACM, CTF), различных соревнованиях по робототехнике. Найти такую информацию про конкретный вуз иногда не так тривиально, но поискать можно среди архивов ICPC ACM на icpc.baylor.edu или ructf.org .

Кстати, мы совместно с УрФУ организуем QCTF - формат для начинающих, в него могут играть и школьники, подробно можно прочитать вот здесь: qctf.ru .

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

Повысить Понизить

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

Повысить Понизить

Для освоения программирования лучше всего, на мой взгляд, подходят процедурные языки высокого уровня, «скрывающие» от программиста детали реализации базовых операций и позволяющие сосредоточиться на алгоритмах. Когда-то это был Pascal, сейчас он немного отошёл в сторону, хотя есть и очень хорошие современные реализации, ориентированные на обучение программированию - например, система «PascalABC.Net» . Другой вариант - Python, также хорошо структурированный язык, позволяющий сосредоточиться на освоении основных принципов программирования. Python обладает также дополнительным преимуществом - это интерпретируемый язык, т.е. даёт начинающему программисту возможность быстрее освоиться с языком и «пощупать» ту или иную конструкцию. Изучив основы программирования, стоит плотнее ознакомиться с «классическими» объектно-ориентированными языками, и тут варианты - либо C#, либо Java.

После освоения такого базового «джентельменского набора» наступает следующий этап профессионального развития. На этом этапе вопрос «на чём программировать» сменяется вопросом «какие задачи решать». Т.е. язык программирования из объекта изучения превращается в инструмент для решения задач. На первый план выходит предметная область (системное программирование, веб-разработка, автоматизация бизнес-процессов, обработка данных и т.п.), и уже исходя из интересующего вас направления следует выбирать и изучаемые языки, технологии (например - C, C++, PHP, 1С, SQL).

Что касается материалов для обучения, то наилучшим форматом являются обучающие курсы - либо очные (при непосредственном контакте с преподавателем), либо интернет-курсы. Сейчас активно развиваются интернет-ресурсы, предлагающие бесплатные (и платные тоже) курсы, включающие видео-материалы, тесты, практические задания, часто с возможностью обратной связи от преподавателя. Например, ресурс coursera.org или российский intuit.ru . Часто вендоры (разработчики программных инструментов) также предлагают обучающие курсы по своим продуктам. Например, фирма 1С предоставляет бесплатный комплект для освоения системы «1С:Предприятие», включающий как программные средства, так и учебные материалы.

Повысить Понизить

Увы, но с вузами сейчас ситуация непростая. Многие мои знакомые, работающие в системе высшего образования открыто говорят о том, что система высшего образования в России не функционирует. Об этом можно, конечно, спорить и приводить массу аргументов как за, так и против. В то же время сейчас мне трудно рекомендовать или не рекомендовать даже свою «альма-матер» СПбГЭТУ (ЛЭТИ). Ключевые вузы, которые в той или иной мере могут готовить программистов - это ЛЭТИ, ИТМО и «Политех». Но я бы хотел подчеркнуть, что главное, что дает любой ВУЗ будущему инженеру - это навык самостоятельного обучения, в противоположность школе, где весь необходимый материал преподносится «на блюдечке».

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

  • Вы, скорее всего, захотите начать работать по специальности уже на 2-м или 3-м курсе, поэтому стоит обратить внимание на языки программирования, актуальные прямо сейчас: C#, Java, Ruby. Дальнейшее развитие технологий и ваши личные предпочтения помогут вам определиться с тем, на какой платформе и языке продолжать работать. Самое главное - помните, что нет «хороших» и «плохих» языков. В каждой области существует свой набор инструментов и технологий.
  • Вуз может дать сносные знания по глобальным концепциям, например ООП, но не даст вам хорошей базы по конкретному языку; полагайтесь на себя, свой, пусть и небольшой опыт и постоянно расширяйте свой кругозор
  • «Вписывайтесь» во все известные сообщества - это ничего не стоит, как с точки зрения, так и времени, но дает вам колоссальный источник знаний и опыта.

Повысить Понизить

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

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

Что я имею в виду: на выходе после вуза имеем ребят которые ходят по компаниям и просят 60–90к в месяц и потихоньку разочаровываются в индустрии потому что больше 30к за их опыт никто не даёт. И начинается медленный, планомерный рост со стажировок в веб-студиях. Отсюда вопрос: а действительно ли вам нужен вуз?

Начинайте писать свои pet-projects. Берите идеи и пишите, пишите и еще раз пишите. Ваша основная задача писать код, много кода, забейте на качество - просто пишите, пишите и пишите. На определенном моменте у вас «щелкнет» и вы в остальном сами во всём разберетесь. Для начала, конечно, определитесь куда вам, в веб: PHP, Python, Golang (это не для выбора, это все три вместе), мобайл: Java, Objective-C, Swift, C#, геймдев: C++, Java, Lua.

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

Повысить Понизить

, преподаватель GeekBrains, эксперт PHP, специалист по MySQL, Postgres, некоторым NoSQL решениям, JS + JQuery, Yii

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

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

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

О выборе первого языка советовать сложнее. Обычно этот выбор происходит спонтанно. Но можно достаточно точно сказать, что веб-программирование не потеряет актуальности в ближайшие 5–10 лет, поэтому можно порекомендовать PHP. Тем более, что его часто называют «Си для чайников» 🙂

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

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

Холивар на тему того, какой язык выбрать первым для обучения программистов не утихает: кто-то называет Pascal, кто-то С, кто-то Ruby или даже Haskell, и каждая сторона приводит свои аргументы. Правда в том, что язык - это лишь инструмент, который профессионал каждый раз должен выбирать сообразно задачам проекта. Понимание алгоритмов позволит изучить любой новый язык в течение нескольких дней. Для тех, кто только делает первые шаги рекомендую воспользоваться образовательными онлайн-ресурсами типа Сodecademy , для тех, кто хочет не просто кодить, а понимать, как организовать процесс, рекомендую прочесть книгу, без преувеличений, повлиявшую на умы поколений и актуальную до сих пор - «Мифический человеко-месяц ». Выбирая вуз, стоит обратить внимание на то, насколько его программа соответствует международным стандартам (посмотрите

Евгений Фатеев , преподаватель GeekBrains, профессиональный программист, приверженец The Ruby/Rails Way

Как и в любой другой сфере, обучение программированию прежде всего основывается на личном интересе и желании учиться - это основа любого дела. Разумеется, нужна хорошая техническая база, которую логичней всего получить в вузе. Можно отметить 4 вуза, где качество обучения не оставляет сомнений: МГУ (например, факультет ВМК), МГТУ им. Баумана (ИУ-5..ИУ-8), МИФИ (Кибернетики и информационной безопасности), МИЭМ НИУ ВШЭ (Факультет компьютерных наук).

Что касается выбора языка, здесь важно учитывать несколько моментов. Во-первых, язык не должен быть слишком сложным и «тяжёлым» в отношении синтаксиса. Он должен быть востребован и реализовывать самые современные подходы в программировании. Например, Python, Ruby или JavaScript станут хорошим выбором. Относительно книг и материалов, здесь лучше начать с самого начала, то есть с Теории Информации. Есть потрясающая книга на эту тему: Бауэр Ф. Л., Гооз Г. «Информатика» в 2-х томах. Также полезно будет изучить любой учебник по Информатике. Далее - общение на форумах, чтение статей в блогах, понимание основ устройства ПК и принципов программирования. Из литературы по языку, для Ruby можно порекомендовать книгу с жирафом (Майкл Фитцджеральд «Изучаем Ruby»), для JavaScript (Дэвид Сойер Макфарланд «JavaScript. Подробное руководство»).

Подводя итог, можно составить коротко такой маршрут:

  1. Теория информации;
  2. Устройство и архитектура ПК;
  3. Выбранный язык программирования.

Наконец, необходимо постоянно помнить о том, что программирование - это способ рассказать машине о наших мечтах. Иными словами, нужно постоянно практиковаться и решать самые разные задачи из всевозможных областей на языке, который вы изучаете. Спросите себя: а как написать программу для решения квадратного уравнения, выбора случайного файла с музыкальной композицией, обратиться по сети к сервису Яндекса и узнать правильность написания слова? А затем сделайте это. Наблюдайте, исследуйте, пишите код, и всё обязательно получится! 🙂

Повысить Понизить

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

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

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

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


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

Название профессии произошло от древнегреческого πρό и γραμμα (пред и запись соответственно). Другими словами, если переводить название профессии программиста буквально, то мы получим "предписание", из чего становится понятно, что этот специалист предписывает как должно быть. Несмотря на то что профессия молодая, первую программу решения уравнения Бернулли в 1843 году написала Ада Лавлейс, между прочим, дочь знаменитого поэта Джорджа Байрона, графиня и математик. Ей и присвоено почетное звание «первый программист», хотя профессия преимущественно мужская. Сегодня программисты известны во всем мире и часто занимают на страницах прессы не меньшее место, чем, скажем, звезды кино. Кто не знает имена Стива Джобса, Майкла Цукерберга, Сергея Брина, Евгения Касперского или одного из самых богатых людей мира Билла Гейтса?

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

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

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

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

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


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

  • способность к самообучению;
  • терпеливость;
  • выдержка;
  • коммуникабельность;
  • инициативность;
  • самостоятельность;
  • креативность;
  • ответственность;
  • упорство.

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

Преимущества профессии программиста

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

Второе несомненное преимущество - высокая оплата труда. Даже начинающий программист может рассчитывать на зарплату около 30-40 тысяч рублей. Если же говорить о зарплате высококвалифицированного программиста, то яркий пример таких именитых программистов, как Павел Дуров и Илья Сегалович свидетельствует о том, что доход специалистов в сфере IT может исчисляться миллионами (если не миллиардами).

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

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

Недостатки профессии программиста


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

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

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

Где можно получить профессию программиста?

Российский институт профессионального образования "ИПО" - проводит набор учащихся на получение Обучение в ИПО - это удобное и быстрое получение дистанционного образования. 200+ курсов обучения. 8000+ выпускников из 200 городов. Сжатые сроки оформления документов и обучение экстерном, беспроцентная рассрочка от института и индивидуальные скидки. Обращайтесь!

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

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

  • Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики;
  • Московский государственный технологический университет им. Баумана;
  • Санкт-Петербургский государственный политехнический университет;
  • Московский физико-технический институт (МФТИ);
  • Московский государственный университет имени М.В. Ломоносова.

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

Здесь уже все как на обычных производствах: высокие инженерные или исследовательские должности без высшего образования недостижимы. А начать карьеру простого разработчика (и в процессе «дорасти» до сильного спеца) можно сразу после школы или колледжа.

А вот стартануть в data science без профильного образования будет сложнее. Нужно знать предметную область, а она по сложности соответствует высшему образованию.

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

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

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

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

Дмитрий Уткин, техлид направления Machine Learning, группа компаний Neti

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

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

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

И, кстати, можно пройти открытые курсы от ведущих мировых вузов – MIT, например. Много интересного можно найти на Coursera.

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

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

Евгений Лопатин, директор департамента разработки «Инфосистемы Джет»

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

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

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

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

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

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

Денис Коровкин, генеральный директор WebProfy (Kokoc Group)

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

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

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

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

С точки зрения обучения, мне нравится Британская высшая школа дизайна. Среди профильных ресурсов можно обратить внимание на Udemy, у них большая база англоязычных курсов. Слышал много хороших отзывов о Школе разработки интерфейсов от «Яндекса». Есть курсы, которые у всех на слуху, вроде HTML Academy или GeekBrains, но это больше заслуга маркетинга.

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

Практический опыт - лучшее обучение. Чем больше шишек набито, чем больше решений найдено, тем эффективнее человек будет работать.

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

Евгений Салтыков, руководитель проектов департамента корпоративных систем ЛАНИТ

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

Мы не отдаем предпочтения выпускникам конкретных вузов, но складывается статистика в пользу МГТУ им. Баумана, МФТИ и МАИ (факультетов математики и информатики).

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

Что касается вопроса, где получить профильное образование, то я рекомендую вузы, указанные мной ранее, а также популярные у молодежи МИФИ, МИРЭА, МИСИС.

Андрей Коваленко, сооснователь и CTO Voximplant

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

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

Так куда пойти учиться? Есть топ технических вузов страны, тут я ничего нового не скажу. Это МГТУ имени Баумана, Университет связи, МИСиС, МАИ, МЭИ и МИФИ. Также к этому списку относят мехмат МГУ, хотя он больше заточен под фундаментальную науку.

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

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

Однако образование - это еще не все. Для программиста важна усидчивость и внимательность.

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

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

Константин Ян, сооснователь, технический директор платежного сервиса CloudPayments

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

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

Высшее образование понадобится для того, чтобы расти в профессиональном смысле дальше.

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

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

Вадим Мельников, технический директор сервиса путешествий «Туту.ру»

Не буду категорично утверждать, что без высшего образования никак нельзя устроиться программистом и успешно работать. Но все же закончить вуз крайне желательно, причем именно технический. Я рекомендую идти учиться в МГУ им. М. В. Ломоносова, МФТИ, Бауманку, НГУ, СПбГУ.

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

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

Но есть и другая ситуация. Представим, у нас есть разработчик с 10-летним опытом, но он не учился в техническом вузе. Возьму ли я его на работу? Да не вопрос!

Решение в пользу «брать» или «не брать» основывается на множестве параметров. Недостаточно просто прийти и принести диплом. Диплом - это не гарантия трудоустройства.

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

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

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

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

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

Сергей Шаров, CEO и сооснователь в ASOdesk.com

Мы с партнером по бизнесу закончили московский Физтех, факультет инноваций и высоких технологий. Кроме того, однозначно можем рекомендовать Университет ИТМО - кузницу победителей международных олимпиад, ВМК МГУ, НГУ, МГТУ им. Баумана, ВШЭ.

Для более детального изучения можно посмотреть мировые и локальные рейтинги, например, Times Higher Education по предмету «Computer Science» - особенно это актуально тем, кто ищет образование за рубежом.

Конкретные курсы я не смогу посоветовать, но, по мнению нашего CTO, все слишком зависит от направления и начального уровня программирования. Можно посмотреть то, что на слуху - Coursera, Code Academy, GeekBrains от Mail.ru и курсы от «Академии Яндекса».

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

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

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

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

Анна Айрапетова, глава разработки p2b-платформы Penenza.ru

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

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

У меня есть, помимо образования, и общие рекомендации ко всем разработчикам.

33% успеха - это профессиональные навыки, то есть знание технологий и языков программирования. Сейчас очень многие смотрят в сторону open source-технологий, поэтому востребованы специалисты, пишущие на Python, GoLang, Java и имеющие опыт работы с базами данных Postgres, MongoDB, Redis, интерфейсами обмена данными KAFKA.

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

И, конечно, опыт!

Евгений Кот, Frontend Team Lead, Wrike

Если говорить про Санкт-Петербург, то сильными вузами считаются ИТМО, Политех, ЛЭТИ. Про курсы сказать труднее, их сейчас немало. Что касается фронтенд и экспертных сообществ, рекомендую сходить на несколько локальных митапов.

Там можно познакомиться с экспертами и научиться многим вещам. Например, NodeSchool, PiterJS, PiterCSS, Spb-Frontend, а также наши регулярные митапы Wrike Tech Club.

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

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

Однако в интернете представлены огромные базы материалов по всем предметам (например, та же Coursera) и зачастую их можно найти бесплатно. И вместо того чтобы тратить пять лет на изучение не совсем профильных предметов (я с ужасом вспоминаю философию и ОБЖ), можно концентрированно получать именно те знания, которые точно пригодятся на практике.

Во Wrike мы, прежде всего, смотрим на навыки и самого кандидата, а не на то, что именно он закончил.

Давно уже не существует такого понятия, как просто «айтишники», которые умели бы делать все на свете. Они остались вместе со свитерами, дискетами и ZX-Spectrum где-то в далеком прошлом.

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

Если у фронтенда идет упор на визуальную составляющую (User Experience), то, например, у бэкенд-разработчика задачи лежат совершенно в другой плоскости. Но если попробовать составить портрет среднего программиста, то он обладет этими качествами:

  • Способность быстро усваивать информацию и развиваться профессионально. В нашей отрасли нельзя один раз что-то запомнить и потом пользоваться полученными знаниями до скончания века. Моргнешь, и все. То, что ты когда-то знал и умел, уже становится неактуально.
  • Способность строить сложные системы и просчитывать последствия решений на много шагов вперед. Это как со строительством дома: если фундамент плохой, то чердак не устоит. Но в отличие от дома программисту приходится учитывать тот факт, что заказчик может захотеть маленький гараж, причем в сжатые сроки. А потом передумать и решить, что все же хочет шикарный особняк. Если ты делаешь какой-то программный продукт, то приходится просчитывать план действий на месяц, полгода и год вперед.
  • Усидчивость. Для того чтобы усвоить много информации или придумать что-то непростое, приходится подолгу сидеть на одном месте и медитировать над клавиатурой и монитором. Я бы вообще сказал, что программисту полезно уметь мечтать. Как писатель думает: «На герое была коричневая потертая шляпа», а затем рождается целая история. Программист из одного предложения бизнеса должен развернуть целый мир. Хотя порой все сводится к шляпе.
  • Интерес к своему делу. Профессия у нас творческая, из-под палки много не накодишь. Ну, то есть можно, конечно, но разве это жизнь...
  • Позитивное отношение. Это совет не только к программистам, но к профессии в целом. О нас ходят разные легенды, что программисты, мол, асоциальны и угрюмы. Это не так, будьте веселее!

Артем Кротов, cтарший архитектор приложений в «Райффайзенбанке»


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

Большое количество базовых курсов можно найти на «ИНТУИТ», Coursera, GeekBrains, курсы разного уровня есть в HackerU, которые предлагают также последующее трудоустройство.

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

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

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

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

Здесь, кроме профессиональных характеристик, обретают важность так называемые soft-skills: общительность, презентационные навыки, эмпатия. Сегодня программист не работает в одиночку - в компаниях разработка обычно ведется в командах, и результат во многом зависит от слаженности их работы.

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

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

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

Инга Герасименко, HR-директор «БАРС Груп»

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

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

Но это не повод не идти в вуз. В Казани можно пойти учиться в КФУ, КХТИ хорошо готовит аналитиков, программистов - слабовато, но тем не менее. И еще не стоит упускать из внимания Техникум связи. Отличное заведение, для того чтобы прокачаться в современных языках программирования.

Поэтому, в любом случае, нужно подрабатывать, начиная со второго курса. Можно устроиться на полставки или работать стажером. Это обеспечит хороший бэкграунд к выпуску. Кроме того, необходимо развиваться самостоятельно. Есть хорошие онлайн-курсы, например: JavaRush, Otus, Ulearn.me, «ИНТУИТ», Microsoft Virtual Academy.

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

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

Допустим, если это back-язык программирования, то к нему обязательно нужно изучать JavaScript. Кроме того, необходимо знать базы данных, иметь навыки в аналитике.

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

Юрий Минкин, руководитель департамента разработки беспилотных транспортных средств Cognitive Technologies

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

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

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

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

Знание английского приветствуется, как и знание других европейских и азиатских языков.

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

Как показывает практика, в наибольшей степени наши ожидания как работодателя, оправдывают выпускники МГУ, МФТИ, НИТУ МИСиС, МИФИ, Бауманки, а также ИТМО и СПбТУ.