Язык программирования для души
Закодируйся: как выбрать первый язык программирования
Рассказываем о плюсах и минусах JavaScript, PHP, Python, Java, CSS и HTML. Статья подготовлена на основе вебинара с Михаилом Овчинниковым.
В бэкграунде — программирование, французский язык, академическое рисование, капоэйра. Сейчас учит финский. Любит путешествия и Балтийское море.
У каждого языка веб-разработки свои особенности, достоинства и недостатки, своя сфера применения и свой список связанных технологий (он называется «стек»). Сегодня мы сравним несколько популярных языков и дадим советы, как же из всего многообразия выбрать что-то одно.
Что такое типизация
Прежде чем мы начнём разбираться в плюсах и минусах языков, стоит поговорить о типизации. Потому что от типизации зависит и как вы пишете программу, и как она потом работает.
Типизация — это разделение переменных на разные типы: например int (целое число), flow (число с десятичной частью), string (строка текста), bool (правда/неправда).
Типизация бывает явная или неявная, слабая или сильная и статическая или динамическая.
В языках со статической типизацией типы переменных устанавливаются на этапе компиляции, причём обычно переменные объявляются с указанием типа (явно).
Динамическая типизация означает, что типы определятся уже во время выполнения программы.
Сильная (строгая) типизация не позволяет смешивать в выражениях разные типы и не выполняет автоматически неявные преобразования.
Языки со слабой типизацией более гибкие, но они часто сами неявно преобразуют переменные, даже если в результате может появиться неточность или если преобразование неоднозначно.
Теперь, когда мы разобрались с типизацией, перейдём к самим языкам.
HTML и CSS
Начнем издалека — с HTML (Hypertext Markup Language) и CSS (Cascade StyleSheets). Почему с них и почему «издалека»? С них — потому что они лежат в основе веб-разработки, и ни один сайт без них не обойдётся. А издалека — потому что это не совсем языки программирования.
Они нужны, чтобы создавать содержимое веб-страницы — контент и оформление; программу вы на них не напишете. Тем не менее веб-технологии сейчас уже используются и в других сферах, в том числе в десктопных и даже мобильных приложениях, поэтому у этих «языков» хорошие перспективы.
HTML и CSS очень простые — в основах можно разобраться буквально за пару дней, даже самостоятельно. Так что если вы очень боитесь программирования и не верите, что у вас получится, попробуйте начать с них. Это под силу каждому, поможет вам плавно войти в программирование и оценить свои силы. А потом при желании можно перейти к другим языкам.
Старт карьеры в IT — какой язык программирования выбрать
Представляем обзор языков программирования для новичков. Как найти себя в мире разработки, в какой сфере эффективнее развиваться.
Начните с HTML и CSS
Часто их называют языками программирования, но это не верно. Это язык разметки и таблица стилей, с помощью которых верстается страница. Все сайты используют HTML и CSS. Прелесть технологий — в их простоте: их легко освоить на среднем уровне за 2-3 недели. Если вам интересно работать в интернете — попробуйте.
JavaScript
Один из самых популярных языков для работы с сайтами. До сих пор использование этой технологии — едва ли не единственный способ сделать страницу интерактивной, заставить сайт реагировать на действия пользователя. Изначально JS создавали специально для веб-разработки, но сейчас с его помощью можно делать очень многое:
Этот язык быстро развивается, востребован на фрилансе. Часто именно JS рекомендуют в ответ на вопрос, какой язык программирования выбрать для быстрого старта. Его легко освоить.
Начинающий разработчик на JavaScript может рассчитывать на 30 тысяч рублей в месяц. Средний — 45–90 тысяч и больше. C опытом от трех лет — на 135 тысяч и больше.
Особенности:
Разрабатывать удобно в редакторе кода — он подсвечивает синтаксис и подсказывает нужное написание. Отладка, или пошаговое исполнение программы, в JS происходит в DevTools браузера, дополнительное ПО необязательно.
Не забывайте о библиотеках и фреймворках. Это компоненты, из которых собирается программа. Для упрощения понимания: представьте строительство дома. Вы не создаете с нуля каждый кирпич, не делаете сами молоток, а пользуетесь готовыми инструментами и материалами. В случае с программированием — делаете программу из компонентов библиотеки или фреймворка.
Не торопитесь вникнуть во все технологии сразу. Начинаете с нуля — используйте чистый язык и разбирайтесь в принципах программирования.
Дополнительно пригодится:
На этом языке делают серверную часть в вебе. Он абсолютный чемпион — 80% сайтов написано с помощью PHP. На нем сделаны популярные CMS: Битрикс, WordPress, Joomla.
Когда отправляете фото в «Инстаграм» или другие данные на любой сайт, сервер должен их принять, обработать и вернуть обратно результат. Именно этим и занимается PHP.
Для Junior зарплаты начинаются от 35 тысяч рублей. Middle может рассчитывать на ценник от 80 тысяч рублей. Для Senior предлагают зарплату от 95 тысяч. Средняя зарплата — 88 тысяч рублей.
Особенности:
Недостатки:
Прогресс будет быстрее, если вы найдете ментора или курсы. Как и в любом языке, в PHP есть сложные для освоения тонкости, которые лучше постигать с поддержкой.
Синтаксис этого языка легко освоить, есть подробная документация с описаниями решений популярных задач, поэтому его часто выбирают в качестве первого языка. Новичку будет проще с поиском работы: на фрилансе и сайтах с вакансиями много предложений для соискателей с минимальным опытом.
Python
Это популярный язык, на котором можно писать сайты, — и в этом он соперничает с PHP. Но намного интереснее с помощью Python заниматься анализом данных и машинным обучением. Хотите развивать искусственный интеллект — попробуйте его.
Для начинающего — от 35 тысяч рублей. Средний уровень — от 80 тысяч. Специалист с опытом от трех лет — 90–210 тысяч рублей. Если понимать в математике и разбираться в нейросетях, доход будет выше.
Язык легко освоить, у него удобный и понятный синтаксис, масса полезных библиотек и готовых решений.
Особенности:
Недостатки:
Обратите внимание: разработчики часто спорят, нужна ли для программирования математика. Разбираться в ней полезно. Но обязательна она только там, где вы разрабатываете что-то для математиков. Если вы создаете сайт, например, про собак, то формулы вам вряд ли пригодятся — скорее, лучше выучить JavaScript с PHP и узнать побольше о собаках.
Консервативный и надежный язык, который подходит для разработки под любые платформы. Пожалуйста, не путайте его с JavaScript — это абсолютно разные технологии, и между ними нет ничего общего.
На Java разрабатывают десктопные программы, приложения под Android, серверные конструкции и масштабные промышленные и банковские системы. Достаточно сложный в освоении язык.
Новички могут рассчитывать на 35–60 тысяч рублей. Специалисты среднего уровня — на 50–100 тысяч. Высокий уровень — на доход 135–270 тысяч рублей.
Синтаксис простой и понятный. Методология языка — классическое
объектно-ориентированное программирование. Работает на всех операционных системах. На Java можно написать ПО любой сложности — от небольшой утилиты до комплекса с миллионами строк. Кстати, если хотите писать для Android — приложения на нем делают только на Java.
Особенности:
Может показаться, что для сложного языка нужен особый талант. На самом деле ключевое — ваше желание, интерес и усердие. Никто не ценит способности в вакууме. Важно, насколько далеко вы продвинулись в обучении за последний месяц или год. Если есть интерес и желание, всё получится.
Как выбрать, в чем лучше развиваться
Если вас тошнит от любой технологии и не можете себя заставить написать код или разобраться с задачкой — остановитесь и займитесь чем-то еще. Если же у вас горят глаза и вы не можете уснуть, потому что хотите написать программу, — продолжайте. Попробуйте все языки, остановитесь на том, который интереснее. Если получится понять один, разобраться в синтаксисе другого уже не проблема. Главное — продолжайте учиться, больше пишите кода, систематизируйте знания на курсах. Вы сможете.
Топ языков программирования для начинающих и фриланса
Программист — одна из самых востребованных и высокооплачиваемых специальностей. Зарабатывать неплохие деньги может даже новичок через месяц обучения, например, на фрилансе и легких заданиях.
На биржах для разработчиков есть задания из разных сфер программирования: создание программного обеспечения, мобильных приложений, сайтов и веб-приложений, скриптов для автоматизации и игр. Важно правильно выбрать языки программирования для начинающих обучение, чтобы создать необходимую базу и постепенно дополнять ее новыми навыками.
В статье вы узнаете, какие языки лучше учить новичку, чтобы как можно быстрее начать зарабатывать деньги и нарабатывать опыт, а также на что обратить внимание специалисту с опытом и возможно поменять вектор работы.
Востребованность языков программирования
Согласно сайту habr.com наиболее востребованными языками по вакансиям являются:
Биржи фриланса переполнены заданиями для программистов разных направлений. Данные с портала freelance:
Языки программирования нужны для того, чтобы трансформировать устную или письменную задачу в чёткий алгоритм действий. Как пример можно рассмотреть дорожные знаки и указатели. Они помогают водителю в дороге, предупреждают об ограничениях скорости, тупиках или других препятствиях. Так и разные языки помогают программистам в их работе.
Водители — новички имеют минимальный набор умений и, например, просят кого-то припарковаться, помнят не все знаки, по которым они могут ориентироваться, и выбирают более простой путь для себя – прямые дороги, поменьше знаков и препятствий.
Водители со стажем могут себе позволить более сложный путь, так как набрались опыта в управлении и уже даже без знаков понимают, где можно повернуть, а где нельзя. Также и программистам, начинать лучше с простых языков, чтобы уверенно чувствовать себя на пути программирования. С какого языка программирования лучше начинать?
Самые простые языки для новичка
HTML + CSS — языки, которые используются всегда вместе. HTML предназначен для разметки блоков сайта по смыслу, а CSS задает расположение, размер, цвет и даже анимацию. Их должен хорошо знать каждый веб-разработчик. Начать изучение программирования стоит именно с них, т.к. вы привыкнете к коду: научитесь правильно структурировать, привыкнете к скобкам и другим знакам.
При интенсивном изучении HTML + CSS устроиться на работу стажером верстальщиком можно уже через месяц, а взять и качественно выполнить заказы на фрилансе – через полтора-два.
JavaScript — наряду с HTML и CSS предназначен для работы с web-страницами. В отличие от них он помогает добавить страницам динамичность. Плавно выпадающие части меню или смена картинок в блоке создано при помощи JavaScript. Изучение этого языка – следующая ступень для верстальщика. Так он становится Frontend-разработчиком, который сейчас очень востребован.
Почему еще стоит обратить внимание на JavaScript? Язык динамично развивается и становится полноценным хозяином веба. Сегодня его можно использовать не только для того, чтобы отобразить что-то браузере, но и в работе с сервером, и даже мобильными приложениями! К тому же для начала изучения JavaScript не нужно ничего, кроме браузера.
Чтобы не ходить вокруг да около изучения языков программирования, с чего начать, я знаю несколько курсов по Frontend-разработке, которые обещают гарантированное трудоустройство либо завоевали доверие у работодателей. За качество ручаюсь. Если результата не будет, можете кидать в меня камни.
Python — возможно самый легкий в изучении язык. Но изучить язык и уметь его хорошо применять – разные вещи. Хоть он и самый простой, но я поставлю его на 3-е место, поскольку устроиться на работу чуть сложнее, чем с предыдущими языками. Сейчас вакансий по Python много, но именно по Junior – меньше, чем на предыдущих + если вы выбираете веб-разработку, то вам все равно нужно начать с HTML+CSS+JavaScript.
Но Python хорош своей широкой областью применения: скрипты автоматизации, парсинг, веб-разработка, тестирование, Data Science…В общем он применяется практически везде. Его так и называют «Второй лучший язык во всем». Т.е. где-то он первый, а под какие-то задачи есть лучшие языки. Но Python можно всегда смело ставить на второе место.
Подробнее о том, что делает Python-разработчик, вы можете почитать в этой статье. Там же вы найдете ресурсы для обучения и курсы.
PHP — сейчас считается основным серверным языком в веб-разработке, но его постепенно вытесняет Python и JavaScript. Для того чтобы его освоить, нужны минимальные знания HTML и CSS, потому что PHP используется в основном для создания веб-сайтов.
Отмечу, что большинство популярных систем управления контентом написаны на PHP, поэтому мелких фриланс заданий хоть отбавляй. Но его популярность для создания сложных систем – падает.
Вообще я считаю, что веб-разработка – самая простая и понятная для новичков. Все вышеперечисленные языки относятся в основном к ней. У меня есть подборка комплексных курсов по веб-разработке. Некоторые предлагают заработок уже через 4 месяца, а некоторые гарантированно трудоустраивают.
Топовую подборку курсов по веб-разработке для разного уровня подготовки
Профессиональные курсы по программированию с нуля от ведущих онлайн-школ
Топовую подборку профессиональных курсов: обучение верстке сайтов
А вообще выбор ЯП во многом зависит от отрасли
Если веб-программирование – не ваша область, то обратите внимание на мобильную разработку, разработку игр и программ.
Java — язык и платформа с большими возможностями. Используется не только в играх, но также и в вебе. На нем пишут большие корпоративные системы, но он точно не для новичков. Или нет, не для тех новичков, которые хотят быстро приступить к боевым задачам.
Чтобы начать изучение языка нужно разобраться с базовыми понятиями: что включает в себя язык, как происходит выполнение программы на Java. После этого можно переходить к библиотекам, синтаксису и вообще основам языка.
Поэтапно изучение языка можно представить в виде шагов:
Что может этот язык? Прежде всего, на нём можно написать небольшие программки (апплеты) для сайтов, игры или системы бизнес-графиков. Программа также позволяет писать полноценные приложения для системы Андроид, работать с Big Data, программами для трейдинга, встраиваемых устройств (сим-карты, проигрыватели, телевизоры).
Unity — платформа для разработки игр. Позволяет создавать приложения, которые работают с двадцатью различными операционными системами (игровые консоли, ПК, смартфоны, планшеты и т. д.). Unity используется и отдельными разработчиками, и студиями. Особенность платформы в том, что в ней всё «заточено» под разработку игр и делает этот процесс интересным и удобным. Тем самым позволяет человеку, который увлекается онлайн-играми заняться ещё и их разработкой. Редактировать игры можно одновременно играя в ней. Открываются специальные окна и программист может писать сценарии по своему усмотрению.
Десктопные приложения
С — это универсальный язык, завоевавший популярность у разработчиков благодаря сочетанию возможностей языков программирования разных уровней. Также это программа, которая отлично подходит для изучения базовых алгоритмов используемых и в других языках программирования. Этот язык поможет выработать собственный стиль и применять его в работе с разными направления программирования. К тому же, здесь нельзя допускать ошибки. Программа не предусматривает наличия «сборщика мусора» в виде скрытых ошибок. Они будут сразу видны, а программист будет получать соответствующие уведомления. Постепенно он сформирует правильный стиль кода. На этом языке пишется программное обеспечение, компиляторы, трансляторы, операционные системы.
С++ — улучшенная версия предыдущего языка. Считается одним из самых сложных языков программирования и одним из самых востребованным. Чтобы начать работу с ним нужно скачать программу-компилятор. Там исходный код трансформируется в необходимый файл. Для того чтобы написать исходный код используется программа «текстовый редактор». С помощью этого языка можно работать с большим количеством технологий программирования и спектром стилей. Для эффективного решения задач разработчик свободен в выборе подхода и может использовать сразу несколько способов решения. Он пишет текст (код), загружает его в компилятор и на выходе получает результат в виде файла.
Язык применяется при создании операционных систем, драйверов, игр, для встраиваемых систем.
Подборку курсов по обучению JAVA-программированию от ведущих диджитал-школ
Подборку топовых курсов по языку R для начинающих программистов
Мобильные приложения
В этом направлении важную роль играет операционная система — Android или iOS. Java и Kotlin используется для написания программ на Android. Для iOS используются Swift и Objective-C:
Мобильные приложения пишутся и на других языках, например, Python и JavaScript. Но у Python не слишком хорошие библиотеки для Mobile, а JavaScript будет работать чуть медленнее, чем нативные языки, которые я перечислил выше.
Веб-программирование
Для сайта изначально нужны знания HTML и CSS. Затем нужно определиться с какой частью сайта интересно работать.
Frontend — интерфейс и всё что с ним связано: отображение контента, кнопок, анимации. Такому разработчику нужно знать JavaScript. Отличается сложным синтаксисом с разными скобками и символами.
Система JavaScript предлагает широкий выбор сред разработки, редакторов кода, библиотек и фреймворков.
Backend — все что связано с серверной частью: отправка сообщений, работа с сервером сайта, поиск информации. Такой разработчик пишет на: Python, PHP, JavaScript, С++, C#, Java и Golang.
Как быстро освоить язык программирования
Неважно, выбрали вы направление или нет — совершенствование навыков это всегда путь к карьерному и денежному росту. Для тех кто хочет получить качественную, интересную и полезную информацию предлагаю подборки курсов по разным направлениям программирования.
Преимущества курсов по языкам программирования:
Для тех, кто готов к обучению, выбирает, с какого языка программирования начать — небольшое задание на внимательность.
Напишите в комментариях область, в которой вы хотели бы развиваться, а я скину вам на почту план развития.
Какие языки программирования учить? Карьера в IT (часть 1)
Таблицы, списки и примеры из личной практики — собрали самое полезное и интересное с первого дня интенсива «Стратегическое развитие и карьера в IT», который провел Женя Картавец, тимлид и разработчик с 5-летним стажем на C #, а теперь руководитель отдела продюсирования образовательных программ OTUS. Передаем слово самому Жене.
Довольно популярное мнение среди разработчиков, что уровень квалификации и зарплата зависят от количества языков программирования, которыми разработчик владеет.
Я сам в свое время ходил и думал, что бы такого изучить, чтобы потом писать в резюме много умных слов. Затем однажды на работе познакомился с коллегой, С++ разработчиком, который за всю жизнь освоил только один этот язык и все. А зарплата у него была, как у меня, может даже больше. Помню, как он ходил и с интересом спрашивал, как такие же вещи можно делать на С #. Это меня очень удивило, потому что я увидел, что человек достаточно успешен в IT-карьере, хотя он хорошо выучил всего один язык, а за его пределами почти ничего не знает.
Конечно, это не значит, что надо ограничивать свой кругозор единственным языком. На мой взгляд, секрет успеха в том, чтобы стать профи в чем-то одном, а затем осваивать смежные области, которые будут дополнять друг друга и двигать в направлении одной цели. Например, если вы занимаетесь Web-разработкой, будет плюсом знать какой-то язык для бэкэнда и JavaScript для фронтэнда. Но если я буду учить С++ для бэкэнда, то знания JavaScript для фронтэнда мне ничего не даст, потому что я никогда не буду использовать их вместе.
Обычно, с одного языка пересесть на другой не так сложно из-за схожего синтаксиса и общих принципов. Например, с C # на Java. При этом вокруг каждого языка есть своя большая экосистема: библиотеки, фреймворки, либы. А вот на это уже нужно много времени, и быть достаточно высококвалифицированным специалистом в двух-трех разных областях в программировании очень сложно.
Если осваивать программирование с целью карьеры, а не в качестве хобби, ориентироваться надо на рынок вакансий. Идем на HeadHunter и видим такую картину (данные собраны в конце 2019-го года):
Зеленым выделены языки с положительной динамикой вакансий. За год Kotlin и Go впервые оказались в этом списке. Красным выделен Ruby — для него число вакансий сокращается, и возможно, скоро из топ-10 его вытеснит какой-нибудь другой перспективный язык.
Может показаться, что если выбрать что-нибудь экзотическое, у вас будет меньше конкурентов, а значит проще найти работу. Это не совсем так. Работодатели тоже идут на hh, смотрят кандидатов и решают, на чем запускать проекты, под которые реально собрать команду. Замкнутый круг. Поэтому мой совет с точки зрения развития карьеры: выбирайте популярный язык, при этом ориентируйтесь на спрос на рынке труда, а не по каким-то другим рейтингам.
Вместо того, чтобы обсуждать актуальность отдельно взятого инструмента — а именно этим являются языки программирования — я рассмотрю их в разрезе 4-х направлений разработки и составлю наборы навыков, необходимых для решения разных задач.
Здесь больше всего вакансий, но и сильнее конкуренция среди специалистов, т.к. направление развивается уже много лет. Web-разработка состоит из Frontend — визуальная часть сайта, то, с чем взаимодействуют пользователи, и Backend — серверная часть сайта.
Начальный маршрут для фронтендера:
Как правило, выбор фреймворка не столь принципиален: работодатель готов рассмотреть кандидата с опытом в любом из трех, т.к. довольно быстро можно пересесть на нужный специально под проект.
Для бэкендера есть несколько вариантов. Каждый пункт в списке — пара из языка и его фреймворков:
Каждый из наборов актуален для написания серверной части сайтов, поэтому можно выбрать на свое усмотрение. В любом случае понадобится овладеть еще и этими знаниями:
В большинстве случаев это необходимый минимум, джентельменский набор для бэкенд-разработчика, работающего над сайтами. Далее, можно развиться как разработчик в 2 разных направлениях: начать осваивать технологии из списка фронтендера, т.е. стать Fullstack-разработчиком, или углубиться в бекенд и хайлоад. Выбрав второй путь, будет полезно освоить следующие технологии:
Более молодое направление, в котором меньше вакансий, но пока наблюдается дефицит кадров. Языки программирования выбираются в зависимости от того, под какую платформу вы будете создавать приложения.
Kotlin молодой, но очень перспективный язык, созданный питерской компанией Jetbrains в 2016 году. Он полностью совместим с Java, но примерно на 40% короче его, что значительно ускоряет разработку. Кроме того, в какой-то момент Google, устал от исков со стороны правообладателей Java за использование кода в Android и назвал Kotlin предпочтительным языком для Android-разработки. Сейчас все чаще приложения пишут на нем. Однако на текущий момент все еще очень много проектов, написанные на Java, которые нуждаются в поддержке и развитии. Поэтому Android-разработчику надо знать оба языка, чтобы уметь читать и вносить изменения в старый код.
Легкий и простой Swift пришел на смену и значительно потеснил первый iOS-язык Objective-C. Эти языки несовместимы, поэтому новые проекты начинают на Swift и его вполне достаточно для разработки на платформе. А Objective-C остается актуальным только для старых больших проектов, которые не решились переписывать на Swift.
Что касается востребованности, то Java и Kotlin универсальные языки, которые используют не только для мобильной разработки и под различные платформы. А вот Swift подходит исключительно для мобильной разработки под iOS и десктопной разработки под MacOS.
Еще один путь мобильного разработчика — освоить библиотеку ReactNative для JavaScript. Она устроена таким образом, что написанный код работает под все платформы. С одной стороны это очень удобно. Однако нередки случаи, когда появляется необходимость прописать нативный код для каждой платформы, а это значит нужно иметь наготове знания и Kotlin, и Swift.
Путь разработчика серверных приложений во многом похож на бэкендера, разрабатывающего сайты. Во-первых, надо выбрать и изучить один из языков. Сейчас в ТОП-е по количеству вакансий на российском рынке:
Во-вторых, как и бэкендеру, для большинства задач вам понадобятся навыки работы с базами данных и умение писать качественный код. Тут вам пригодятся:
Дальше можно изучить:
Из этого самый сложный пункт — выбор языка. Я подготовил сравнительную таблицу:
Java, Python и С # между собой очень похожи и довольно универсальны. Java используют для сайтов и мобильной разработки. Python отдают предпочтение стартапы (а также крупные проекты, выросшие из стартапов) из-за его простоты освоения и универсальности. C # популярен и для сайтов, и для написания игр на движке Unity 3D. Я советую выбирать тот, с которым вы уже хоть немного имели дело и на какую сферу больше ориентируетесь. При необходимости быстро пересесть на другой из этой тройки не составит труда.
C++, на мой взгляд, один из самых сложных в освоении язык, подходящий в основном для серверных, десктопных программ и игр, реже — для Data Science. Разработка на нем занимает значительно больше времени, но дает программисту огромные возможности. C++ используют для программ, требовательных к быстродействию, например, Photoshop, или масштабных игр, так как с его помощью можно контролировать и распределять нагрузку на «железо».
Golang (Go) появился как более простая версия С++. Его легко освоить, и он заточен под высокие нагрузки и многоядерные процессоры, но имеет очень ограниченный функционал, например, нет дженериков, исключений и т.д., которыми обладают другие языки программирования. В первую очередь его целесообразно использовать для консольных утилит и highload бэкенда. Вакансии разработчика на Go открывают преимущественно крупные корпорации, хотя в последнее время спрос на разработчиков Go начал появляться и в проектах поменьше.
Выбор языка во многом определяет платформу, на которой вы сможете писать игры:
В российском геймдевелопменте больше вакансий на C #, Unity 3D.
Специально для быстрого старта в профессию мы записали 5 видеокурсов для начинающих программистов: Java, Python, JavaScript, C++ и Linux. Их достаточно для решения задач уровня Junior, т.е. можно пойти на стажировку или претендовать на начинающую позицию в IT-компаниях. Или поступить и продолжить учиться на наших основных курсах, чтобы углубиться в выбранный язык.
Вторая часть интенсива посвящена карьерному пути в IT.
Рассмотрим, какие сферы есть, как и куда можно расти, в частности, как попасть в Data Science, какие варианты развития есть в DevOps и как айтишнику грамотно составить резюме.
Если по выбору языка какие-то моменты не осветил, задавайте вопросы — отвечу.
А по ЗП и карьере, прежде всего, надо ориентироваться на международные
indeed.com
stackoverflow.com/jobs
jooble.org
www.glassdoor.com
linkedin.com
www.careerbuilder.com