19 лет на одном языке. История о том, как олимпиадник из Беларуси стал C++ Chief Software Architect

    Кажется, у компании Crossover становится традицией анонсировать свои карьерные турниры, рассказывая о людях, уже работающих по специализации, на которую пойдёт отбор. Но сегодняшний случай особенный: хотя «примерка» на роль Chief Software Architect 7 апреля проходит в Москве, наш «Chief Software Architect дня» живёт даже не в России, а в соседней для дефолтной хабранации республике. Видимо, поэтому Crossover предложил мне взять у него интервью — может, они надеялись на какую-то особую белорусскую перспективу в разговоре двух белорусов, двух минчан и двух фрилансеров?

    Впрочем, это сейчас Сергей rserge Рогач живёт и работает в Минске. Будущий Chief Software Architect компании родился в городке-десятитысячнике Глубокое Витебской губернии, в подбрюшье Браславских озёр — и эта череда топонимов словно сама уносит дальше, куда-то в сторону леса Фангорн, лежащего в отрогах Мглистых гор…

    image
    Поднимите руки, кто на Браславские озёра хочет больше, чем в Чикаго?

    …только Сергей после девятого класса поступил в лицей при БГУ — одну из самых престижных школ Беларуси при главном университете страны. Учиться там в 2001–2003 годах было никому не скучно: аббревиатура БГУ грохотала как название одной из самых смешных команд КВН в истории, а Сергей два года подряд попадал в четвёрку старшеклассников, представлявших Беларусь на международной олимпиаде по программированию.

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


    «В 2002 году мы летали в Корею, в 2003 — в США. Группой по четверо — но мы не были командой. Командами выступают в университете. На школьных олимпиадах обычно каждый сам за себя».

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

    «Многие участники тогда использовали паскаль, но я предпочитал C++, с которым познакомился еще в 1999 году и на котором, кстати, пишу до сих пор», — говорит C++ Chief Software Architect компании Versata Сергей Рогач «Я выбрал для себя пару С/С++ еще в школьные годы, причем сознательно. Распространенный тогда паскаль был значительно медленнее и менее распространён в производственной среде».

    Из обеих поездок он привёз бронзовые медали, но не за третье место:

    «Они раздавались всем, кто вошёл по баллам в первые 50% участников. В моём случае это было сотое место в Корее и сто двадцать восьмое — в США», — даже не думает привирать Сергей, показывая свою «бронзу».


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

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

    Выбор между карьерой и наукой


    Казалось бы, какой там выбор: после лицея БГУ программиста-олимпиадника мог ждать только факультет прикладной математики и информатики БГУ.

    Сейчас, в 2018 году, сильные кафедры есть и в БГУИР (бывший Минский РТИ, думаю, эта аббревиатура будет более понятна не-белорусам), но в 2003–2004 годах ФПМИ «пылесосил» всех потенциальных программистов и сильных математиков. Впрочем, математиков он «пылесосит» до сих пор — только не все выдерживают учёбу на этом факультете.

    «Но я никогда не был сильным математиком — многие ребята на моём фоне были монстрами науки. Я в принципе не считаю, что сильный программист обязательно должен быть сильным математиком. Наука? Вполне возможно, варианты и выходы, как у «олимпиадника» у меня были. Но трудность быть учёным в том, что они не сами себе создают условия, а работают в созданных. И они должны быть достойными, что на ставку научного работника в Беларуси невозможно. Так что ещё на втором курсе БГУ я начал работать, а в конце четвёртого и вовсе его бросил».

    За те несколько лет Сергей успел потрудиться и набраться опыта сразу в двух крупных международных аутсорсинговых компаниях — Itransition и EPAM — которые ещё в начале нулевых открыли офисы в Минске. Впрочем, эти названия могут оказаться знакомы многим: у EPAM есть большой офис в Новосибирске, да и у «Итры» география не самая скромная.

    Великое посольство в Голландию


    От аутсорса до фриланса — один шаг, который Сергей сделал в 2008 году, поступив в Амстердамский университет и уехав жить в Нидерланды, чтобы завершить своё образование. Не без ностальгии, конечно же:

    «Дома, в БГУ, были одни преподаватели, у которых реально «горели глаза», и которые были невероятно сильны как в своем предмете, так и в научном плане. И были другие, которым было откровенно плевать: читают себе с бумажки лекции, «часы» отрабатывая. В Амстердаме же всё было «ровно». Я не повстречал каких-то преподавателей-звёзд, за которыми студенты бегали табунами, но и не увидел тех, кто «отбывал», а не работал. Зато, как мне кажется, белорусская школа может вырастить учёных-звёзд. А голландская — обеспечить стабильный уровень массового образования. У обеих систем есть свои плюсы и минусы».

    image
    Когда ты в Голландию поехал ума-разума набираться да обучение завершать

    Закончив университет в 2010 году со степенью магистра по специальности «Искусственный интеллект», Сергей снова должен был принимать решение. Необходимость учить новый, не самый распространённый и потому не самый универсальный язык, непривычное устройство государственно-бюрократических реалий и дороговизна жизни (а Амстердам — один из самых дорогих городов Европы!) — это всё попадало на минусы.

    Попытки слезть


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

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


    И переход Сергея на работу в группу компаний ESW Capital, получился, наверное, самым ровным среди прочих из историй в этом блоге: уже на фрилансе, уже со своей бухгалтерией и проживая в Беларуси, где очных турниров Crossover пока не проводил, Сергей попал на «витрину» Crossover в очередной период поиска клиента в качестве потенциального С++ Chief Software Architect буквально не вставая с кресла. Тут выстрелили все ружья на стене: пригодились и алгоритмические задачи, на которые его натаскали ещё в школе, и многолетний опыт удалённой работы. В итоге Сергей стал работать для компании Versata.

    «В числе прочего, я занимался приложением, которое оптимизирует работу сети, потом балансировщиком баз данных, сейчас оптимизирую Cypher запросы и Neo4j базу данных для поиска анти-паттернов. Работа над этими проектами дала мне более глубокие знания Linux».

    Наука же его похоже потеряла. И не только белорусская:

    «Мы думали с женой об иммиграции, но пока действительно стоящих предложений не поступало. Да и даже „там“, на Западе, чтобы комфортно себя чувствовать и не ломать голову над месячным бюджетом, надо иметь степень не ниже PhD, которую ещё нужно получить. Дело не в деньгах как таковых. А в возможности устроить свою жизнь по самым базовым критериям достаточно комфортно, чтобы о комфорте больше не думать. Я уважаю выбор тех, кто готов бороться и заниматься наукой «за идею». Но свой выбор в пользу коммерческой разработки я сделал уже давно.

    Сейчас, спустя более пятнадцати лет работы, я тружусь на позиции С++ Chief Software Architect. Если надоест, я всегда могу вернуться к классическому фрилансу — мой опыт позволит найти крупный проект на полгода-год».


    И это, кстати, логично: часто эмиграция перестаёт быть фетишем, когда ты в состоянии и дома себя достойно прокормить. В XXI веке «где родился — там и пригодился» не безнадёжный фатализм, а свободный выбор счастливых людей.


    И если вы на этих выходных в Москве — можете попробовать сделать свой выбор на «Кадровом турнире» по отбору профессионалов, способных претендовать на контракт Chief Software Architect или Software Engineering Manager. Оценить свои силы и уровень можно уже в эту субботу.
    Crossover 144,01
    100% удаленная работа в международных IT проектах
    Поделиться публикацией
    Комментарии 19
    • +10
      >на Западе, чтобы комфортно себя чувствовать и не ломать голову над месячным бюджетом, надо иметь степень не ниже PhD
      Откуда инфа? На том же AngelList в 90% случаев требования это бакалавр, реже — магистр, а PhD — единичные вакансии. На моей памяти только один забугорный hr в разговоре обратил внимание на мой PhD.

      Поэтому, честно хочу больше узнать как конвертировать мою PhD в «комфортно себя чувствовать»
      • +3
        имелось в виду в науке
        • +5
          Думаю в науке ниже PhD и нет никого
        • –2
          В посте человек, который меньше чем за 300 000 долларов в год работать не будет. Или вы привыкли, что на хабре только студенты сидят?
          • +5
            Чтобы получать over 300 000 долларов, PhD тоже совершенно необязателен.
            • –1
              Достаточно выиграть олимпиаду в 8 классе, согласен. Привет Парфенову и Шалыто.
            • +2
              В посте человек, который меньше чем за 300 000 долларов в год работать не будет.

              Как вы это определили?

              Вообще, странная статья. Ее посыл мне непонятен. Учился, учился, работал, работал, сейчас в кроссовере. Если уволится, будет год новую работу искать. Нуок, и чо?
              • +3
                www.crossover.com/chiefsoftwarearchitect

                Я вижу вакансию на $50/час, которая пытается это экстраполировать до $100k/год при 40-часовой рабочей неделе. Только это означает что надо работать 50 из 52.1 недель в году, что похоже на коней в вакууме. Не удивлюсь если и эти $50/час не являются чистыми.
                • –2
                  Не удивлюсь

                  Я вижу

                  Мантры самоубеждения? Опять? Человек в Минске, получает 100 000 долларов в год. Это по ППС ~1 000 000 в США.
                  • +2
                    У вас как-то ловко мифические $300k уже превратились в $100k. При этом в самой статье ни слова о том сколько же на самом деле получает человек в Минске. Попробуйте делать утверждения подкреплённые хоть какими-нибудь проверяемыми данными.
                  • +4
                    Почитайте отзывы про эту контору на glassdoor, станет ясно, что вы очень близки к истине.
                    • 0
                      а что именно вам тут коней напомнило?
                  • 0
                    «На том же AngelList в 90% случаев требования это бакалавр, реже — магистр, а PhD — единичные вакансии.»
                    отлично! а зарплаты при этом какие?
                  • +2
                    Связываться с единственной технологией на всю жизнь не только рисковано (вдруг она загнется), но и просто скучно.
                    • +1
                      Ни в коем случае не призываем никого так делать. Или не делать. У людей не только разные вкусы, разные взгляды — но и разные темпераменты. Что-то мне подсказывает, что, если бы Сергей на С++ заскучал, то он бы проблему эту решил.

                      Впрочем, что гадать — надеюсь, сам rserge в комменты ещё заглянет.
                      • +2
                        Согласен что рискованно, и сейчас действительно работ на C++ не так много как на Java и JavaScript. Но кроме C++ хватало, с чем ещё приходилось работать, от ассемблера до JavaScript, только что основным ничего из этого не стало. А вот скучно ли — зависит только от того, чем заниматься.
                        • 0
                          А где нынче за всякие хаскели и идрисы платят?

                          Не то, чтобы я возражал вам, просто любопытно.
                          • 0
                            За Idris, наверно, только в науке, а вот Coq в Боинге для верификации используют. Haskell в разных областях — ванансии периодически попадаются. Мне доводилось его в микроэлектронике использовать. Экзотики много в блокчейне — там много Rust, но есть и Haskell, и Scala. По Scala сейчас полно выкансий в бекенде с приличными зарплатами.
                            При желании можно найти как развлечься.
                        • +3
                          Помню Сергея. Я только начинал работать, а он уже был на позиции Lead инженера. Судя по старым записям в соц. сетях в Нидерландах у него был какой-то смутный период.

                          P.S.: посыл статьи непонятен. обычная реклама компании, но что она делает?

                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                          Самое читаемое