Что вы решите делать, если у вас многолетний опыт в языке программирования, но он практически обесценен там, где вы находитесь? 🤔
Да, примерно в такой ситуации мне пришлось оказаться со своими 10 годами опыта с языком ABAP, вернувшись на родину. Но сдаться - значит проиграть. Проигрывать - не вариант. А если не знаешь, что делать, то делай хотя бы что-нибудь. 😅
Полтора месяца назад я увлёкся изучением языка, который я в студенческие годы невзлюбил - C. Тогда он мне казался слишком сложным и непредсказуемым, хотя на нём я тогда для своих проектов кое-что даже писал. Но, окунувшись в книгу под авторством Ivor Horton и Peter Van Weert про стандарт C20, я понял несколько вещей:
🟢 C++ гораздо (гораздо!) шире по наполнению, чем нам преподавали в университете; 🟢 Он становится понятным и прогнозируемым, если изучать его полностью, с вниканием в тонкости; 🟢 20-ый стандарт - большой прогресс в сравнении с 98-ым, на котором я писал лет 13-14 назад; 🟢 Все эти годы мне не хватало технического челленджа (бизнес-автоматизация - это, конечно, хорошо, но меня больше привлекают биты/байты, оптимизации, алгоритмы, вот это всё).
Это были тяжёлые мелкошрифтные 800+ страниц, но спасибо авторам за подачу, благодаря которой редко приходилось перечитывать один и тот же фрагмент по несколько раз. Конечно, про такие вещи, как многопоточность или 3D-графику в ней не расскажут, но как база для мидла - самое то. 👍
Почему не Java, Go или Python? Языки прекрасные, но слишком лёгкие (читай "с низким порогом входа"). И, видимо, поэтому вакансии с ними, исходя из моих наблюдений, больше перекручены в плане требований, чем с C++. Да и вероятный эйджизм может иметь место в них в большей степени (а мне уже аж 32 🫣).
В общем, полноценной уверенности в своём выборе у меня нет, но, если что, сменю направление, переучусь и адаптируюсь в короткие сроки. В конце концов, каким-то образом мне удалось писать в разное время на 8+ языках. 😊 А пока, следующий шаг - практика и алгоритмы. Может, даже на HH тесты пройду. Но это потом.
А если хотите обсудить варианты сотрудничества со мной как SAP ABAP разработчиком, то я открыт к диалогу и готов предоставить резюме в личке. ✉️
#кандидат #ABAP #C #C++ #программирование #softwareengineer #lead #senior #developer #разработчик #си #сиплюсплюс #обучение #саморазвитие
· 02.09
Я для ZX Spectrum до сих пор пописываю. Ну обесценен и обесценен, мне-то что?
ответить
коммент удалён
· 02.09
В Embedded я бы c++ не советовал применять. А на сложном проекте человек куда лучше нейронки нагаллюцинирует. Но тут мы уже подходим к философии разработки. Главный технический императив разработки ПО и все такое.
ответить
ответ удалён
· 02.09
Со всем, в основном, согласен, но область дальнейшего применения языка, пока что, размыта. А фреймворки - это производная от неё. Тем не менее, книга по Boost уже есть в очереди. Из вероятных областей - засматриваюсь на embedded, робототехнику или HFT. Больше нравится последнее, но туда только с хорошим опытом берут.
Насчёт нейросетей. Они хороши как помощник, но не как программист. Мало ли, что они там нагаллюционируют в каком-нибудь сложном проекте.
ответить
ответ удалён
· 02.09
Сейчас программируют не на языке, а шаблонами (паттернами) Реализовать какой-то шаблон на любом языке — дело техники, с этим лучше нейронка справится. Но все шаблоны давно реализованы во фреймворках. Так что фреймворки — это второе на что нужно смотреть. Потому что без управления зависмостями работа с фреймворками превратится в ад. Для c++ это qt, boost или я вот poco предпочитаю. Без знания фреймворков тоже в команду не возьмут. Про move semantics на собеседовании спросят, конечно, но не более.
ответить
ответ удалён
· 02.09
Лучшее - враг хорошего. Я больше предпочитаю технику "Икигай", если выбираю, чем заниматься.
С экосистемой типового проекта я знаком, хотя бы, из прошлого опыта, который спокойно проецируется с одного языка на другой. Опыт с инфраструктурой в рамках SAP разработки, конечно, специфичен, но все равно общие принципы будут прослеживаться. Управление зависимостями - да, соглашусь, тут надо будет подтянуть. В планах - декомпозировать свой опыт и понять, что можно спроецировать на новый стек, а что нет.
Насчёт "десятка ключевых слов": если бы мы говорили про Go, то определённо да, но речь идёт про C++, где на одну move semantics нужно вечер потратить, чтобы понять и запомнить. А потом ещё попрактиковать на следующий день.
ответить
ответ удалён
· 02.09
А зачем что-то делать, если не по душе? Вообще мне ваш подход к языкам несколько наивным для разработчика кажется. В первую очередь надо смотреть на экосистему, управление зависимостями и структурой проекта, а десяток ключевых слов можно за вечер выучить. И да, та же многопоточка это первое что понадобится в современных условиях. Как собираетесь обеспечивать развертывание своего проекта? Поддержку? Тестирование? Взаимодействие с другими разработчиками? Не возьмут в команду без этого.
ответить
ответ удалён
· 02.09
Вам, скорее всего, писать для Спектрума по душе. По крайней мере, не могу представить в современных условиях заработок на нём.
Мне ABAP нравился в те времена, когда было плевать, на чём код писать. Сейчас я более избирателен, а данный язык - это, скорее, актив, нежели интерес.
ответить
ответ удалён