Насколько перспективна смена профессии на разработчика С++?

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

И вот, просматривая вакансии на джуниоров приходит понимание, что этих знаний может быть недостаточно.
Так же есть предположение, что С++ это узкий и уменьшающийся рынок, где вливание новых разработчиков мало и есть конкуренция среди старых и опытных.
Поэтому возникает вопрос - как вы считаете, есть ли смысл углубляться в С++, или, лучше, пойти в более новый и модный язык? Из интересов - мат.анализ, статистика и смежные отрасли, но есть страх что без опыта шансы найти работу джуна стремятся к нулю.
В общем вопрос - как вы думаете - куда лучше податься и почему?
  • Вопрос задан
  • 438 просмотров
Пригласить эксперта
Ответы на вопрос 7
php666
@php666
PHP-макака
Смена профессии. Как стать программистом после 30/...

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

Кстати, эти языки не "модные". Просто они востребованы бизнесом. Найти работу на каком-нибудь PHP легче, чем на С++.
Ответ написан
dollar
@dollar
А при чем здесь язык?
Ведь не язык делает программиста программистом.

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

Вообще здесь два крайних варианта (а истина где-то посередине):
  1. Если проблема выжить, то нужно сделать упор на пробелы в знаниях и навыках. И, как я сказал выше, это не только ЯП. Пожалуй, важным в такой ситуации будет качать софт скиллз, то есть умение работать в команде, общаться, договариваться, добиваться взаимопонимания, да и просто презентовать себя. Сюда же входит понимание трендов, так что ваш вопрос по идее отпадет сам собой.
  2. Если запас прочности большой, и проблема найти работу, которой человек будет заниматься всю жизнь, то нужно смотреть на то, что человеку нравится делать. Ведь профессионалом со временем можно стать в любой области. И это в любом случае даст нормальный доход. Но важно заниматься любимым делом, чтобы была мотивация и собственно счастье от работы и профессионального роста в ней.
Ответ написан
@poslannikD
Java/C/C++ Programmer
С разработкой знаком только поверхностно, небольшой опыт матлаба.
Посему решил человек сменить профессиональную деятельность и занялся изучением C++.

Худшее решение которое можно было предпринять, говорю как физик по образованию ушедший в С++. Во первых С++ страшно костыльный и сложный язык, выучить который ни за 1 год, ни за 10 невозможно(при условии что есть семья и другие заботы), хотя если нон-стопом ботать, то лет за 15 можно. Но знание языка не основное, нужно еще знать паттерны, системы контроля версий, всякие стили разработки(фп, ооп) и предметную область. Так как это С++ то нужно знать еще и stl, boost либо Qt. Вакансий по чистому с++ нет.

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

В общем вопрос - как вы думаете - куда лучше податься и почему?
Java - после С++ покажется раем(в плане языка). На постсоветском пространстве оплачивается хорошо, вакансий много. Осваиваете Spring, Hibernate по курсам и вперед на Junior-а, через 3-4 года зп будет выше чем у 70% с++ девелоперов.
Ответ написан
@vanyamba-electronics
Работал в своё время программистом на C++.
Тут весь вопрос, с каким кодом работать. Если со своим, то удобнее C++ лично я языка не знаю. Но с чужим кодом на C++ работать невероятно сложно.
Сложность в том, что причину ошибки довольно сложно отыскать, а работа с чужим кодом - это в 90% случаев именно поиск ошибок.
Второй момент - скорость написания программ. Например, то, что на Python можно написать за 4 дня, на C++ займёт по времени недели две.
Есть задачи, в которых без C++ не обойтись, но это - не большие проекты, а как правило не очень большие программки - библиотеки, утилиты, драйверы. А код такого рода используется десятилетиями - один раз написал, отладил и больше к этому не возвращаешься.
Так что C++ знать конечно нужно, но реальные программы пишутся на скриптовых языках. На тех же Java, Python, C#.
Ответ написан
@seamen
программист любитель
Может проще изучить английский, чем C++?
Ответ написан
tsarevfs
@tsarevfs
C++ developer
Если у человека хорошая математика, физика то учить C++ достаточно перспективно. Сложный код про моделирование физических систем, робототехнику часто пишут на C++. Знание языка и программирования в таких задачах бывает вторично.
Писать сайты, особенно фронт с таким бекграундом может быстро стать достаточно скучно.
Можно посмотреть на Python с ML. Тоже очень близко по интересам, а спрос огромный.
Ответ написан
@Fourgotten
Чтобы кушать — выучить основы + модный язык (php, js, java) и работать.
Либо, отталкиваясь от предыдущего научного опыта с физикой и математикой, можно поизучать английский, нейросети/машинное обучение/блокчейн/смарт контракты/работу с большими объемами данных. Сейчас это тоже модно, и есть все шансы уехать работать за границу :)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы