Кем можно работать, учась на программиста?
Оценить 7 комментариев
brainick: мне искренне больно видеть у вас потребность хамить другим людям. Хотя частично я даже могу это понять — когда вокруг одни дебилы, которые ничего из себя не представляют, трудно удержаться от желания поставить их на место, или хотя бы оскорбить.
Но принять такую позицию я не могу. Нельзя жить в мире, где все вокруг — дебилы. Я верю, что в реальности мир вокруг вас добрее и интереснее.
Американцы назвали диск «Blu-ray» не потому, что они тупые и не знают, как пишется слово «Blue». В современном английском языке есть явление, с середины прошлого века ставшее нормой — т.н. «divergent spelling», авторское искажение написания. В русском есть похожее понятие — эрратив. Вышеупомянутую замену «c» на «k» можно увидеть, например, у половины названий в среде KDE. Это не значит, что все участники KDE SC необразованные и «правильно написать не могут». Просто иногда нужно найти в себе силы чтобы выйти из комфортной клетки своего фарисейства, расширять кругозор. Ведь пока ты всё знаешь — ты ничему не научишься.
Возьмём типичный пример безвкусной русской эстрады — Ирину Салтыкову. Свою карьеру она начинала в лихие девяностые — время, когда никто в России не мог быть уверен в своём будущем. Попробуйте предположить, как она спонсировала свои выступления — нашла ли богатенького папика, как это говорят «насосала» или т.п. А потом почитайте историю её жизни — с чего она начинала, кем работала, откуда на самом деле брала деньги для записи первого альбома. Это конечно не развалит, но, может быть, хоть немного пошатнёт мрачные стены тюрьмы из предубеждений.
Профессия программист
Как стать программистом
Говорят, что в мире есть 10 видов людей. Те, кто понимает двоичный код… и те, кто не понимает.
Юмор программистов
Программист – это специалист, создающий исходный код для программы. Такой программой может быть операционная система компьютера, видеоигра, web или мобильное приложение и даже алгоритм работы микроволновки. Программный код пишется на специальном языке программирования. Он состоит из обычных слов и некоторых специальных символов. Сегодня насчитывается несколько сотен языков программирования, но самые распространенные из них – Java, Python, PHP, C#, JavaScript, C, С++, Objective-C, Swift. Какой язык программирования выбрать, программист решает сам в зависимости от конкретной задачи (сделать игру, приложение для web или программу для сервера) и собственных знаний. Квалифицированный программист уверенно использует 2-4 языка.
Если вы думаете, что программист = компьютерщик, то это далеко не так. Самое удивительное, что программист не обязательно работает на компьютере. Он может писать код программы хоть на салфетке, а компьютер ему нужен, чтобы применить этот код и протестировать.
Не стоит также приравнивать программиста к «айтишнику». Под общим названием «IT-специалист» скрывается более 50 разных профессий и должностей. Например, UIX-дизайнер (разработчик интерфейсов), account-менеджер (специалист техподдержки), системный администратор, devops («инженер по автоматизации IT-процессов»), менеджер IT-проекта – это «айтишники», но не программисты. Однако стоит помнить, что в любую из IT-профессий можно попасть через образование программиста.
По специализации программисты делятся на системных, прикладных и веб-программистов. Прикладные программисты занимаются написанием различных программ и приложений: игры (например, популярная игра Angry birds), офисные приложения (например, Microsoft Office Word) и многое другое. Системные программисты занимаются созданием операционных систем (например, Android или iOS). Веб-программисты разрабатывают интернет-сайты и программы, которые поддерживают работу этих сайтов.
На сайтах вакансий вы найдете разделение программистов по тем языкам, с которыми они работают: программист C++, программист Delphi, PHP-программист. А также по типам задач, которые они выполняют: программист баз данных, фронтенд / бекенд разработчик, мобильный / десктоп разработчик, программист 1С, программист Битрикс, геймдев, архитектор ПО, системный инженер и т.д.
Плюсы и минусы профессии программиста
Профессия программиста очень притягательна для современных абитуриентов. В 2018 году в технических вузах самый большой конкурс пришелся на специальности «Прикладная математика», «Информатика и вычислительная техника», «Электроника и наноэлектроника». В 2021 году проходные баллы по ЕГЭ на эти специальности обещают только вырасти. Что так привлекает молодых в программировании?
Плюсы профессии программист:
✔ Высокая зарплата. Средняя зарплата высококвалифицированного программиста 70-100 тыс. рублей.
✔ Востребованность. Рынок труда для программистов растет за счет цифровизации всех сфер общественной жизни. Онлайн-образование, телемедицина, интернет вещей (IoT), даже сельское хозяйство не обходится теперь без IT-специалистов.
✔ Интересные задачи и простор для творчества. Что делает программист на работе? Пишет код, тестирует, проверяет на уязвимости, переписывает код. Тем не менее, конечный результат кодирования – это рабочая программа с разными целями. Одни программисты создают игры. Другие программируют роботов. Третьи делают полезное приложение под Android. Четвертые создают агрегатор, который соберет все билеты мировых авиакомпаний в один сервис для бронирования авиабилетов. Разнообразно, не правда ли? А когда продукт начинает исправно работать, программист испытывает радость, как персонаж папа Карло, который из деревянного полена выстругал живого мальчика.
✔ Возможность удаленной работы и свободный график. Программисты – это каста людей, к которым не применяют строгих офисных правил. Для поддержания креативности и работоспособности им разрешают работать из дома, приходить позже на работу. И, если вы еще не знаете, лучшие офисы принадлежат именно IT-компаниям. Загляните в Google, Microsoft, Яндекс и Mail.Ru.
✔ Карьерный рост в России и за рубежом. Для программирования нет географических границ. Во-первых, многие российский специалисты работают удаленно в иностранных проектах. Во-вторых, переехать в «Силиконовую» долину (более точно ее называть «Кремниевой») для IT-профессионала с отличным знанием английского гораздо проще, чем, например, бухгалтеру, юристу или инженеру-строителю, которым придется изучать специфику профессии в конкретной стране.
✔ Сидячий образ жизни. Без физических нагрузок в нерабочее время программист рискует большую часть зарплаты тратить на врачей. Особенно страдают зрение и опорно-двигательный аппарат.
✔ Быстрое устаревание знаний. Программисту необходимо постоянно учиться. Программирование развивается стремительно, поэтому программист обязательно должен читать профильные журналы и интернет-ресурсы, получать новые знания и сертификаты на курсах. Иначе его ценность как специалиста на рынке труда упадет.
Чтобы стать программистом, можно пойти тремя путями:
1. После 11 класса в вуз по направлению 09.00.00 «Информатика и вычислительная техника» или 10.00.00 «Информационная безопасность».
2. После 9 класса в колледж на эти же направления, а потом пойти или не пойти в вуз.
3. Учиться на курсах программирования и самому.
IT-сфера отличается молодостью и современным подходом к образованию. При трудоустройстве ценится не столько диплом, сколько те навыки (hard skills), которые у будущего сотрудника в багаже. Работодатель даст тестовое задание по программированию и по его результатам примет или не примет соискателя на работу. Именно поэтому приобретать знания и опыт в информационных технологиях можно и дома с помощью книг, online-курсов и создания небольших программ. Какой вариант образования лучше, решает каждый сам. Главный вопрос, который должен задать себе программист – «Достаточно ли я усидчивый и целеустремленный человек, чтобы выучиться и потом конкурировать с теми, кто пришел из вуза?».
В каких вузах и колледжах учиться на программиста
Для поступления в вуз необходимо успешно сдать ЕГЭ по математике, русскому языку, информатике и ИКТ, физике, английскому языку (4 из 5 экзаменов в зависимости от специализации). В Москве получить образование программиста можно во многих учебных организациях.
Полный список вузов, колледжей и техникумов смотрите здесь >>
• Компании-разработчики (сервисы Booking.com, Mail.ru, Yandex, Unisender)
• IT-отделы и отделы digital-маркетинга организаций (Сбербанк России, Газпром, Тинькофф банк)
• Системные интеграторы (Крок, Softline, Техносерв, Ланит, Ай-Теко)
Из-за бурного роста сферы IT и дефицита разработчиков ПО, работать программистом можно начать еще в институте. Со 2-3 курса можно устроиться junior-разработчиком и начинать движение по карьерной лестнице. И при этом получать достойную для студента зарплату в 30-50 тысяч рублей.
Сами программисты оценивают длительность каждой ступени следующим образом:
• Первые полгода-полтора года реального опыта вы junior
• При активном обучении следующие 1-3 года работы вы middle
• А программист с опытом работы 4-6 лет – это senior
Но, конечно, стоит помнить, что границы условны, и более активный и любознательный разработчик сможет освоить все навыки senior-developer за 3 года.
Кроме глубокой специализации в программировании, программисту доступно движение в смежные области внутри IT-компании – дизайн, маркетинг, аналитику, менеджмент. Программист может стать архитектором программного обеспечения, девопс-инженером, менеджером IT-проектов, если ему это интересно и у него есть нужные компетенции. Например, чтобы работать менеджером, ему потребуется коммуникабельность, инициативность, умение формировать команду и контролировать бизнес-процессы.
Оплата труда (диапазон зарплат)
Зарплата программиста напрямую зависит от специализации и квалификации. Наименее оплачиваемые должности – это junior-разработчики, которые только учатся. А наиболее оплачиваемые на рынке труда – архитекторы ПО и системные инженеры, на которых лежит ответственность за продукт или проект в целом. Поэтому диапазон зарплат программистов может быть очень широким:
- ✔ 30 000 – 260 000 рублей
Перспективы профессии (востребованность)
Сейчас отрасль IT в целом и программирование в частности находятся на пике востребованности. Компании конкурируют за квалифицированных специалистов. В перспективе ближайших 5 лет программистов ждет благополучная жизнь и высокие зарплаты, потому что молодых кадров станет немного меньше. Придет период демографической ямы из-за низкой рождаемости в начале 90-х гг.
Но рынок IT ждет несколько опасностей. Во-первых, обучение программированию сейчас начинается уже практически с детского сада. Самые известные обучающие языки — это Scratch от MIT и Blockly от Google. Вероятно, навык программирования будет настолько же распространен, как знание английского языка, то есть будет входить в «джентльменский набор» при приеме на работу. А если им владеет почти каждый, то и ценность работы снижается.
Во-вторых, IT-образование сейчас дает почти каждый колледж и вуз. После дефицита рынок может «насытиться» профессиональными программистами, и их зарплаты упадут.
В-третьих, есть страны, в частности Индия, где IT-образование развивается еще быстрее. И в определенный момент услуги программирования насытят мировой рынок, как сейчас произошло с товарами, произведенными в Китае. С индийскими программистами трудно будет конкурировать в цене.
Будущему программисту стоит помнить об этих рисках. Но, как и в любой профессии, настоящий специалист, который любит свое дело и профессионально развивается, в любые времена будет востребован.
Какие компетенции и личные качества необходимы программисту
Наверняка, вы сходу назовете 3 качества, которые отличают программиста:
✎ логическое мышление
✎ математические способности
✎ усидчивость
Есть несколько компетенций, которые делают из хорошего программиста лучшего:
✎ гибкость мышления
✎ хорошая память
✎ многозадачность
✎ развитое воображение
✎ умение ясно выражать свои мысли
✎ коммуникабельность
✎ работа в команде
Человек, который умеет придумывать новые идеи и хорошо взаимодействовать в коллективе таких же разработчиков, сможет попасть в самые интересные и передовые IT-проекты или открыть свой.
Что делать уже сейчас
Вы думаете о программировании или хотите в будущем работать в IT? Начать развиваться можно уже в сейчас:
- ✔ Углубленно изучать математику, информатику, русский и английский язык в школе.
✔ Программировать и создавать веб-сайты, небольшие редакторы и полезные утилиты.
✔ Читать новости из сферы IT: на порталах cnews.ru, habrahabr.ru, computerworld.ru, hightech.fm и github.com.
✔ Заниматься в кружках по программированию и школах юного программиста.
✔ Посетить iСмену лагеря «Профессионалы будущего», чтобы пообщаться с настоящими IT-специалистами и узнать больше о современных технологиях.
Если вы хотите разобраться, подойдет ли вам специальность программиста, то пройдите наш бесплатный тест: информационно-технологический профиль
Автор: Ольга Биккулова, ЦТР «Гуманитарные технологии»
Если вы хотите получать свежие статьи о профессиях, подпишитесь на нашу рассылку.
Как стать программистом в 2021 (мой опыт)
Буквально лет 5 назад начинающие программисты были нарасхват. Но сейчас вчерашние «войтишники» выросли и стали требовательнее к текущим. При этом профессия тыжпрограммиста все еще престижная и хорошо оплачиваемая, поэтому многие ребята и девчата в нее стремятся, но не всегда знают, с чего начать и куда двигаться.
Поскольку я много работаю, как с программистами, так и с их работодателями, решила вкратце поделиться своим мнением, что нужно, чтобы стать программистом сейчас и в ближайшей перспективе. Куда стоит вкладывать усилия, и чего на первых порах ждать от работодателей.
Кто подумывает «войти в айти», велкам.
1. Выберите сферу, в которой хотите программировать
Руководителей раздражают ребята, которые пришли устраиваться на начальную позицию программиста с позицией «Ну я учил html, css и js, потому что… так проще… ну не знаю…».
Сфер много: есть IoT (интернет вещей), есть встраиваемые системы, есть бэкэнд и фронтэнд, есть мобилка в конце концов. И если уж совсем плохо и вы не знаете, что вам интересно, тогда смотрите рейтинги языков и выбирайте самый востребованный. Хотя я считаю, что в целом это не способствует осмысленному выбору.
2. Изучайте технологии
Когда вы выбрали сферу, сформируйте список технологий, который нужно изучить. На написании кода свет клином не сошелся. Помимо него вам нужно как минимум: знать Git, уметь немного в Linux и желательно влезть в методологию Devops.
Важно понимать: программирование ради программирования никому не нужно. Программист должен уметь решать задачи.
3. Нарабатывайте практику
На всю жизнь запомнила, лучшая практика для начинающего программиста, когда он сам себе ставит задачу и решает ее. Любите котов? Сделайте соцсеть для котиков… ну если хотите в веб.
Таких людей сразу видно на собеседовании, они мыслят более самостоятельно.
Даже если ваш домашний проект в целом для мира бесполезен, работодатель оценит то, как вы его делали и какие проблемы в процессе решили.
Кстати, если вас бесят такие слова, как «хард скилл, брейншторм, митап», просто привыкайте. А лучше погуглите их значение, чтобы быстрее освоить язык айтишников.
Обучение будет сопровождать вас всю профессиональную деятельность. Если, конечно, останетесь в программировании. Я не знаю ни одного опытного разработчика, который не проходит стотысячные по счету курсы.
Айтишная среда очень динамичная. В ней появляются новые технологии, новые фишки. А еще, эта среда международная и англоязычный гугл содержит намного больше полезной информации. Поэтому учите сразу английский.
В плане онлайн-курсов я бы рекомендовала составить траекторию обучения из платных и бесплатных. Начинать лучше с бесплатных, чтобы понять вашу мотивацию. Вероятность, что вы отвалитесь, есть. Лучше это сделать с минимальными потерями в финансах.
5. Гуглите, как в последний раз
Ничто так не бесит опытного программиста, как зеленый пень, который даже не удосужился загуглить свой вопрос. Ведь ответ обычно находится на первой странице.
Так что учись гуглить и сразу на английском языке. Ведь при написании кода ты будешь делать это постоянно.
На этом я заканчиваю свою краткую памятку, можете листать ленту дальше :3. А если понравилось, предлагаю посмотреть видео по теме. Там я также рассказываю, как устроиться на первую работу, насколько важно найти грамотного наставника и немного рефлексирую:
Спасибо за внимание!
Сколько этих статей о том как войти в АйТи. Но ни один не скажет главного. АйТи это не работа мечты, все красиво только на бумаге. Найти место работы где будет комфортно, крайне сложно. Кроме того далеко не каждый человек который даже научится писать код, сможет программировать. Программировать это не просто писать код. Это исследовательская, аналитическая работа и инжинеринг. И это только верхушка айсберга.
детский сад, какой-то.
во-вторых, почему считается, что войти в it так просто «напишите никому не нужную задачку и выучите несколько иностранных слов». В том же духе легко написать руководство «как войти в теоретическую физику, заняться нейрохирургией или начать писать стихи и т.д.». И пишут их, конечно, же. Но про IT почему-то гораздо чаще.
Во-первых, нужно иметь к этому способности: как минимум, аналитическое, логическое, абстрактное мышление.
Если что-то там не сложилось, не придумывайте соцсети для котиков, начните решать задачи на вашей же работе. И тогда у вас будет не только умение хоть как-то программировать (единственное, что умеют выпускники платных и бесплатных курсов), но и экспертиза в вашей профессиональной области, что даст вам возможность хоть как-то отличаться от огромного количества кандидатов.
Не факт, что вы получите удовольствие от работы и большую зарплату (еще один миф, что айтишники все очень много зарабатывают. увы, не все. И вы вполне можете попасть в число тех, кто зарабатывает мало).
Но есть шанс получить любимую работу и неплохую зарплату:). Правда, это вполне возможно и в другой области (необязательно в IT). Например, вокруг меня есть продажники, юристы, финансисты, врачи, которые зарабатывают гораздо больше средних программеров.
Профессия: программист. Не всё однозначно
Мы писали о фронтендерах и бэкендерах, о мобильной разработке и о тестировании, но это были частные случаи. Когда человек подходит к первой или очередной профессии, он редко говорит, что станет разработчиком под iOS или проктологом, как правило это звучит «программистом» и «врачом». Специализация приходит позже, с опытом. Но чтобы твёрдо заявить, что ты хочешь стать программистом, врачом, архитектором, геологом и т.д., нужно избавиться от романтизации профессии и подойти к ней здраво и осмысленно. Даже если вы вдруг решили стать программистом, чтобы «войти в айти после 35-ти». Если говорить о программистах с позиций романтики, то это люди, которые превращают наши замыслы в код и делают жизнь лучше, проще, удобнее. Если говорить прямо, то работа программиста — напряжённый, зачастую рутинный труд с множеством плюсов и минусов. Об этом и поговорим.
Художник — Надежда Коткина, позировал — cyber_roach
Кто это?
За термином «программист» могут скрываться узкопрофильные программисты, разработчики программного обеспечения, инженеры, системные аналитики и т.д. Тем не менее, всех программистов объединяет одно — умение облечь человеческие требования в машинный код, чтобы сделать труд или развлечение автоматизированным, удобным, простым. Программист создаёт инструкции для компьютера, в результате выполнения этих инструкций получается какой-то целевой результат.
Вам стоит задуматься, не будущий ли программист вы, если…
… ваша мотивация исходит изнутри, вам нравится процесс управления компьютером, вы хотите не просто использовать программу (игру, приложение), но и знать, как она работает, модифицировать её.
… вы не ожидаете бешеных доходов и не думаете о том, что программирование — новый рок-н-ролл, первично именно желание творить магию: превращать идеи в код.
… вы знаете, как сделать лучше любую программу, любой сайт, любое мобильное приложение. Вы точно знаете, что можно хотеть от программы и мечтаете научиться делать совершенный код.
Где нужен?
Сегодня программисты нужны везде и я не думаю, что этот тренд изменится в ближайшие 10-15 лет. Программисты нужны в промышленности, науке, космосе, бизнесе, медицине, транспорте и даже не в ИТ-компаниях (шутки шутками, а вы знаете, как трудно найти отличного программиста 1С или разработчика для интернет-магазина на 1С-Битрикс?!). В общем, даже в институте церкви и благотворительности есть спрос на программистов. И это здорово, потому что вы можете не просто выбрать профессию программиста, но и соотнести её со своим увлечением: химией, биологией, механикой, связью и даже историей и лингвистикой. Более того, если вы будете сочетать в себе навыки разработки ПО и основы профильной деятельности, ваша цена на рынке здорово вырастет, а конкуренция изменится.
Поэтому вам нужно понять не столько, где работать, сколько что именно из разработки вам ближе.
Важно понимать ещё одно разделение.
Базовые требования к профессионалу
Само по себе написание кода — это не самая сложная задача, гораздо сложнее понять требования, интерпретировать их и перевести в понятный машине язык. Работать с заказчиком кода (здесь мы имеем в виду и клиента, и коллег, и работодателей и т.д.) это всегда нервы и приключения, потому что они сами не знают, что хотят, мыслят упрощённо и считают технологии всемогущими. Но если вы претендуете на то, чтобы быть профессиональным программистом, вам необходимо не только хмуро бить по клавишам, но и активно работать с людьми, с техническими заданиями, требованиями и т.д. Это отличает программиста от простого кодера.
Необходимость знания иностранных языков
Можно ли обойтись в разработке без знания иностранного (в частности английского) языка? Можно. Достаточно выучить синтаксис и слова языка программирования, мыслить и общаться вы можете исключительно на русском языке. Незнание языка не будет помехой в карьерном росте, развитии, коммуникациях в очень многих компаниях.
Однако — что даёт знание иностранного языка?
Где учиться
В современных российских вузах есть масса программистских специальностей, есть бакалавриат и магистратура, есть форматы дополнительного образования. Если вы ещё только выбираете свой вуз, то, конечно, стоит идти на специальный факультет, либо на физику, математику и другие технические специальности.
Если программирование вам нужно как вспомогательный инструмент для основной специальности, то либо поищите смежный вариант (типа медицинской кибернетики и информатики), либо обучайтесь параллельно главной специализации.
Если у вас уже есть образование, то для вас есть самообразование, различные курсы, онлайн-школы, корпоративные университеты и т.д. Вы можете изучать программирование с помощью этих средств обучения либо полностью самостоятельно или даже с ментором. О дополнительном образовании можно почитать здесь.
Обращаю ваше особое внимание: высшее образование по-прежнему важно, поскольку оно имеет значение для работодателя, нужно при переезде в другую страну, а также даёт базу, основу, которая позволит быстро развиваться в любом новом направлении.
Более того, не столько важно, какой язык программирования вы освоите, сколько важно, что вы знаете о математике, алгоритмах, вычислениях, сетевом и серверном администрировании, принципах организации сетей, стеках и проч. А эту основу как раз неплохо дают в вузах.
Лучшие книги и средства обучения
Для каждой специальности есть свой набор книг и ресурсов для обучения, но есть вещи, которые стоит прочитать всем.
Из любимых ресурсов:
Ещё одна огромная и свежая подборка полезного онлайна для программистов.
Совет: даже если вам иногда лень заниматься, слушайте лекции хотя бы фоном, так вы погрузитесь в терминологию, обратите внимание на какие-то незаметные при напряжённом изучении моменты.
Мифы профессии
Про программистов ходит очень много мифов и слухов: про характер, грубость, неумение строить личную жизнь и т.д. Но это частные случаи, которые можно найти в профессии. Например, я был одно время близок к сфере медицины и могу сказать, что там тоже немало замужних за работой и женатых на работе, немало суровых интровертов и грубых, но профессиональных ребят (скорее, задолбанных). Да и вообще сложно представить «анклав» счастья в какой-то определённой сфере.
А если программист ещё и геймер… Всегда можно найти пару
Поэтому я разберу четыре самых популярных мифа.
Главный совет
Если вы учитесь быть программистом, однажды вам обязательно захочется бросить это всё, потому что путь покажется слишком длинным. Вы устанете от однообразных тренировочных задач, каждая неудачная компиляция будет вызывать тупое, болезненное отчаяние, вам будут сниться указатели, рекурсии и принципы ООП (ну или неудачные вызовы функций). Вся эта возня покажется безумного далёкой не только от вашего первого самостоятельного проекта, но и от первого корпоративного мержа…
Желание бросить — первый признак того, что вы идёте верным путём, что вы действительно напрягаетесь, а не мастрячите какой-то код методом копипаста из Google (даже не с GitHub!). Только когда вы настолько натренируетесь на простых задачах, что они вам станут противно скучными, вы сможете уверенно перейти на новый этап с отличной базой знаний.
Совет простой: не бросайте. Отвлекитесь, переспите с этими мыслями, забросьте обучение на неделю и вернитесь. Вы сами не заметите, как в голове что-то «щёлкнет» и всё встанет на свои места и вот он, первый мерж, первое код ревью, первый коммит в open source, первое выступление на митапе, свой пет-проект, первые задачи на должности миддла. Не останавливайтесь — всё будет!