Как это часто бывает у многих «технарей», Роман рано увлекся точными науками. С самого детства он принимал участие в многочисленных олимпиадах по математике, а когда в седьмом классе в школе появился компьютерный класс, жизнь мальчика приобрела совершенно новый вкус. Это было то время, когда компьютеры были еще в диковинку, конец 1980-х годов. Тогда сложно было даже представить, насколько кардинально компьютеры изменят нашу повседневную жизнь. Но Роман сразу влюбился в экзотический «девайс», интуитивно понял, что это «его», и хранит эту любовь по сей день.
Тогда, в возрасте 13 лет, у юного программиста началась веха олимпиад по программированию. После участия не в одном десятке в районных, городских, региональных и международных соревнований в школьные годы, Роман был уверен, что после школы его «олимпиадная» история закончится. Но не тут-то было.
Об образовании: «Учась в физико-математической школе, получаешь хорошую инженерную подготовку, которая формирует определенный склад мышления и подход к решению задач. Полученные знания в последствии достаточно просто конвертировать в навык программирования».
В 1994 году Роман поступил на кафедру компьютерных технологий в Университет ИТМО, и прямо с первого курса его снова закрутила активная жизнь соревнований. На третьем курсе он стал чемпионом России по программированию среди студентов ACM ICPC. После он присоединился к команде организаторов этих соревнований.
Об эмиграции: «Многих призеров международных олимпиад зовут в крупные зарубежные компании. Однако преимущества работы в той же Силиконовой долине совсем не очевидны. Сегодня в России сфера IT развита на достойном уровне. Да, продавать высокотехнологичный продукт гораздо проще в Америке, но кто сказал, что и производить его обязательно там же? Не менее эффективно это можно сделать и у нас. А то, что в США зарплаты выше, – это миф: по факту на руках после оплаты астрономически дорогого жилья останутся сопоставимые суммы. Кроме того, работая в таких IT-гигантах, как Microsoft и Apple, даже очень сильный инженер будет не более чем “винтиком” в огромном механизме. В этом смысле труд в небольших компаниях с дружным коллективом может приносить гораздо больше удовлетворения и ощущения собственной необходимости».
Романа тоже не раз звали работать за рубеж, но он решил остаться в России, чтобы развивать отечественную IT-индустрию, и по сей день участвует в организации олимпиад по программированию. В 2013 он даже стал лауреатом премии ICPC Joseph S. Deblasi за выдающийся вклад в развитие ACM ICPC.
Про учебу в вузе: «Время учебы в вузе хорошо тем, что в этот период можно получить очень широкий спектр знаний в разных областях. Задача любого студента максимально “развиться вширь”. В будущем это чрезвычайно пригодится, ведь после учебы придется стать специалистом в какой-то достаточно узкой области, а в программировании один тренд постоянно сменяет другой, и, что окажется востребованным через 5 лет, предугадать практически невозможно. Вероятность того, что всю жизнь программист будет заниматься одной и той же тематикой, крайне мала. В случае, если та сфера программирования, на которой вы специализировались какое-то время, “умерла”, спасти вас смогут исключительно широкий кругозор и способность быстро учиться. Так что в студенчестве поглощайте знания в самых разных областях».
Самому Роману, по его словам, несколько раз чрезвычайно повезло в профессии. Сразу после окончания университета он подхватил только зарождающийся в то время тренд развития финтеха. Тогда и слова такого еще не было, и Роману довелось стоять у истоков основания огромной индустрии. В какой-то момент у программистов этой новой отрасли стал популярен язык Java. Вряд ли кто-то тогда всерьез задумывался о том, насколько востребованным этот язык программирования будет через несколько лет. Но и тут Роману удалось «поймать свою удачу за хвост»: сегодня с 15-летним опытом работы на Java он является одним из самых уважаемых экспертов этой сферы.
В последнее время основной фокус профессиональной деятельности Романа сместился в сторону Concurrency (с англ.– «многопоточность»). Сейчас специалисты в этой области в России, да и во всем мире, на вес золота. Без многопоточности программирования жизнь на том уровне комфорта, к которому мы привыкли, была бы совершенно невозможна.
Про Concurrency: «До 2005 года Concurrency была интересна только узкому научному кругу и в повседневной жизни никому была особо не нужна. Но в 2005 году скорость процессов расти перестала. С тех пор их мощность наращивается исключительно путем увеличения количества ядер. У всех у нас давно уже многоядерные телефоны, компьютеры и прочие гаджеты. Существующие языки программирования подразумевают работу всего с одним потоком, то есть ядром. Для того чтобы заставить любое устройство слаженно работать, и необходимо многопоточное программирование».
В переломный 2005 год Роман начал изучать Concurrency и понял, что даже внятную литературу по этой тематике найти практически невозможно. И хотя рынок остро нуждался в специалистах по многопоточному программированию, никто их не готовил. Тогда, собрав по крупицам информацию, Роман пришел в альма-матер делиться своими знаниями со студентами Университета ИТМО. Сегодня такие лекции- практически эксклюзив.
Сейчас Роман разрабатывает новый, пока мало кому известный язык программирования Kotlin, который, по соображениям выпускника Университета ИТМО, вскоре станет востребованным в профессии.
О росте: «В XXI веке нельзя останавливаться в развитии. Надо постоянно выводить свой мозг из зоны комфорта и заставлять его адаптироваться к чему-то новому. Это может быть новая сфера деятельности, язык программирования или хобби. Главное, не жалеть себя и “нагружаться” по максимуму».
Дарья Тимошенкова,
Редакция новостного портала Университета ИТМО