Карьера разработчика в Финляндии: большое интервью с Михаилом Самариным
Я познакомился с Михаилом Самариным около месяца назад, когда он заинтересовался моей деятельностью по организации конференций. Михаил уже 15 лет живёт в Хельсинки и занимает должность одного из бизнес-директоров в компании Futurice, крупном финском аутсорсере. Среди прочего, Михаил — дважды спикер JavaOne (2011, 2012) и дважды Microsoft MVP (2013, 2014).
В связи с известными событиями, вокруг все чаще слышно одно и то же: «пора валить». Сам я нынче далёк от этой мысли как никогда (у меня сейчас много проектов, и все связаны с Россией, да и Европу с Штатами я не шибко люблю), не заметить эмигрантские настроения трудно. Особенно в среде программистов.
Ситуация такова, что Futurice (по-фински читается «ФутурИс», а по-английски «ФьючурАйc») с каждым днём всё сложнее искать хороших разработчиков в Финляндии, стране с населением в 5 миллионов человек. В связи с этим компания решила начать искать толковых инженеров в России и релоцировать их в Хельсинки. И в частности, делать это на российских программерских конференциях, например, на .NEXT.
Вещи, которые рассказал Михаил, показались мне безумно интересными, и поэтому я попросил его дать мне интервью, которое и предлагаю вашему вниманию.
Михаил, давайте попробуем пойти хронологически. Расскажите, пожалуйста, где вы родились, где учились, и как пришли в программирование.
Родился в Ростове-на-Дону 42 года назад, закончил математическую школу, потом Таганрогский радиотехнический институт. В итоге прожил в Таганроге 10 лет. Там и диплом получил, и в 1997 году защитил кандидатскую диссертацию в области нейронных сетей. Сейчас эта область называется «Computer Science», а тогда у нас называлась «Вычислительные машины, комплексы, системы и сети».
Тогда нейронные сети были активной областью?
В то время выходило очень много интереснейших работ. В Таганроге был уникальный НИИ, назывался он Институт Многопроцессорных Вычислительных Систем. У них даже была своя электронная база, то есть они могли даже сами делать экспериментальные чипы. Всё, что связано с параллельной обработкой данных, многопроцессорными системами, нейросетями – это была очень большая и активная тематика уже в те времена.
К сожалению, весь процесс моей учебы проходил во время развала Советского Союза. В Таганроге, провинциальном городе, всё происходило особенно тяжело. У нас была хорошая кафедра, где было несколько интересных проектов, связанных с международными исследованиями. Поскольку денег это особо не приносило, я одновременно очень много занимался разработкой на заказ. В то время основным инструментом был Delphi – единственное реальное, с чем можно было очень быстро, буквально за несколько дней, сделать полнофункциональную программу.
Кроме того, я много занимался криминалистикой, военной судебно-медицинской экспертизой.
Как у вас так получилось?
В Ростове был очень крупный военный центр судмедэкспертизы. Всё это происходило во время чеченских конфликтов. В Ростов на медицинскую экспертизу проступало множество неидентифицированных тел. В то время по финансовым и техническим возможностям было нереально делать анализ ДНК — просто не было материально-технической базы. Поэтому строились альтернативные системы для идентификации погибших: по наследованию отпечатков пальцев, сравнение скелетизированных останков с прижизненными фотографиями, флюорограмма. Этим я занимался вместе со своим папой.
Вообще очень интересная история вышла. Мой отец работает в Институте Нейрокибернетики, который был связан с этим проектом. Так получилось, что они некоторое время не могли найти себе разработчиков. Я предложил ему временно помочь с проектом, пока они ищут подходящих программистов. В итоге я там задержался очень надолго. У них работали очень хорошие ребята. Один из мощных пакетов идентификации по отпечаткам пальцев, разработанный в рамках того проекта, был даже запатентован в России.
Это были какие-то аппаратные вещи? Сенсоры? Датчики?
Нет, это была чисто методическая работа. Берутся отпечатки пальцев, размечаются. Каждый отпечаток пальцев имеет уникальный тип узоров. Существует целая наука о том, какие типы узоров могут наследоваться от родителей, а какие не могут. Поэтому можно такими методами отсекать негативные результаты, то есть, делать утверждения в духе: «Нельзя сказать, что этот ребенок однозначно сын этих родителей, но можно сказать, что этот ребенок с большой вероятностью не сын тех родителей». Этим я много занимался, и часть работы у меня в итоге пошла в диссертацию.
Вы сказали, что институт занимался многопроцессорными вещами. Для рядового программиста многопроцессорная тематика набрала популярность немного позже, в середине 2000-х, потому что только в 2003 году AMD сделала первый десктопный двухъядерный процессор. И только тогда весь этот бум начался, потому что люди поняли, что даже на лэптопе теперь два ядра – и всё, и вы попали. Мало кто умел с этим работать: всю жизнь это была какая-то серверная вещь где-то далеко в дата-центрах на дорогих машинах. А у людей в Таганроге уже целый институт был. Забавно.
Часто, когда общаешься с научными представителями в возрасте, разных национальностей, то очень четко заметна такая тенденция, когда «Мы в 1970-х эту задачу легко решали». Интересно себя наблюдать в этой роли. Применительно к исследованиям, связанным с многопроцессорной, многопоточной обработкой данных, нейросетей, интеллектуальных систем, то те наработки, которые были к концу 1980-х, началу 1990-х годов в Советском Союзе, на самом деле, были очень интересными.
К сожалению, многое исчезло и теперь потеряно за счет того, что люди были заняты выживанием, а не научной работой. Это большая национальная трагедия, потеря науки. Очень много людей уехало, включая вашего покорного слугу. Интеллектуальный отток в середине 1990-х годов был колоссальным, что сказалось на том, как сейчас долго это приходится восстанавливать в стране. Но, действительно, когда у тебя выбор: либо кормить семью, либо заниматься наукой, выбора не остается.
А что сейчас с этим институтом?
Точно не знаю. Насколько я понимаю, весь этот научный комплекс нынче является частью Южного федерального университета. Потихонечку всё налаживается. В конце 1980-х годов, когда я поступал, репутация у института была очень хорошая. Это был один из немногих институтов, который реально занимался аппаратурой, и по слухам некоторые аппаратные исследования были связаны с «Байконуром». Поскольку все мы в детстве мечтали стать космонавтами, мотивация многих ребят поступать туда была очевидна. Хотя, положа руку на сердце, это был не первый мой выбор: изначально я поступал в Бауманку.
После развала Советского Союза было очень тяжело, особенно в провинциальных городах. Я считаю, что мне повезло еще и в том плане, что несмотря на то, что Таганрогский университет имел аппаратную направленность, большинство его проектов того времени было связано с программным обеспечением.
Это было действительно уникальное время: едешь в Таганроге в трамвае, у тебя есть какая-нибудь задача по программированию в голове, которую ты крутишь, не можешь решить. Достаточно было крикнуть в воздух, и полтрамвая могло начать тебе помогать. Такая вот была в городе концентрация разработчиков. Сложилась очень интересная среда в плане программирования.
В то время основным инструментом был Delphi. Он позволял исключительно быстро делать решения для заказчиков, с базами данных моментально связываться. Тогда это был способ выживания для очень многих ребят. Можно было сделать, например, какую-нибудь финансовую систему для небольшой фирмы. Сроки создания такой системы на Delphi по сравнению, например, с Visual C++ (версии, наверное, 3-й или 4-й) были меньше в разы.
Речь именно о скорости разработки?
Да. Можно было прийти к заказчику, сесть рядом с ним, и непосредственно «вживую» показать ему, что происходит. Очень интересный был период, расцвет реальной визуальной разработки. Примерно с 1995 до начала 2000-х годов Delphi был спасением для многих индивидуальных разработчиков.
А потом что изменилось?
Прежде всего, многое изменилось лично у меня. Одна финская организация ежегодно организовывала конкурс молодых учёных. Победителей, которых было 25 человек, приглашали на недельный семинар в Финляндию. Называлось это «Зимняя школа».
Что происходило на этом семинаре? Они приглашали финских профессоров из совершенно разных университетов, и целую неделю конкурсанты варились вместе с этими профессорами, после чего профессора выбирали себе тех, с кем они хотели бы продолжать работать. Для таких ребят эта организация устраивала научный грант на год с тем, чтобы студент мог приехать в Финляндию работать.
Я подал заявку и оказался в числе одного из 25. Распределение было такое: порядка 20 человек из Москвы и Санкт-Петербурга, несколько человек из Новосибирска. С юга России я был один. В 1999 году я приехал на неделю в Хельсинки, познакомился с моим будущим профессором. Поскольку у меня кандидатская была уже защищена к тому времени, а у них она приравнивается к PhD, то формально это был постдок.
Грант был небольшой, нужна была подработка. Поскольку я к тому времени имел большой опыт преподавания в родном университете, то с профессором сразу договорился, что и на новом месте я буду преподавать.
Так в 1999 году мы с семьей переехали в Хельсинки. Там я 5 лет преподавал в университете и занимался другими интересными вещами, связанными, в частности, и с многоэкранными медиа инсталляциями, и с мобильными технологиями. Потом я года три был R&D-менеджером в небольшой компании, которая занималась охранными видеосистемами. Мы делали мощные Linux-сервера, которые одновременно могут тянуть порядка 80 камер, и снабжали ими суда. Практически весь финский флот паромов имел на борту наши системы.
Ну и наконец, в 2007 году я нашел компанию Futurice.
Судя по тому, что вы выступаете у нас на .NEXT, Ваша работа в Futurice связана с .NET-программированием?
И с этим в частности. Ребятам, которые начинают свою карьеру в разработке, пытаясь стать профессиональными разработчиками надолго, хочу напомнить одну вещь: постоянно приходится переучиваться и всё переделывать. Несмотря на то, что есть у нас свои любимые языки, среды разработок, но исключительно важно быть и владеть разными языками, инструментами и платформами.
В старые времена я очень много и активно занимался на Delphi, потом много работал на платформе Java и обучал этой технологии студентов. Java уже в то время был основным университетским языком. Я сделал несколько курсов по Java, Java 3D, мультимедиа. На протяжении долгого времени Java оставалась инструментом, который дает разработчикам хлеб. Mного занимался Java ME. Два раза даже выступал на JavaOne в Сан-Франциско.
Расскажите об этом опыте подробнее.
Наша фирма много лет работала с Nokia. Уверен, что многие наши читатели держали в руках мобильный телефон с одной из множества мобильных программ, созданной нашей фирмой для Nokia. Также мы активно занимались разработкой всяких тренировочных материалов. Лично я очень много занимался тем, что называется «Development, Training and Evangelism» на Java ME, потому что у Nokia был гигантский традиционный сектор – недорогие телефоны c мобильной Java.
В первый раз я рассказывал на JavaOne про возможности Java 3D на дешевых мобильных телефонах: можно было делать полноценную реальную графику на супердешевых телефонах Nokia. Многие другие производители эти направления разработки игнорировали, хотя, на самом деле аппаратные возможности были.
В 2012 году организаторы JavaOne, пригласили меня стать членом отборочной комиссии, Content Committee в JavaOne по мобильным технологиям. Одновременно Nokia выпускала новую линейку своих дешёвых телефонов с тачскрином, с новыми программными возможностями. Поэтому на JavaOne в 2012 году у меня был обзорный доклад на тему того, что можно было делать в этом направлении.
То есть вы много занимаетесь именно программированием для мобильных устройств?
Так получилось, что многие мои проекты действительно связаны с мобильными технологиями. Вообще в нашей компании бизнес равномерно распределен 50 на 50 между веб-технологиями и мобильными платформами.
Поскольку у нас хорошие взаимоотношения и с Nokia и с Microsoft, то при переходе телефонов Nokia на Windows Phone, мы одними из первых в Европе занялись разработкой под эту платформу. Некоторые мобильные приложения под Windows Phone, которые идут под брендом Nokia, на самом деле, были созданы нами. После многих лет неразглашения, мы наконец получили public reference rights на некоторые из них. Теперь мы можем говорить публично, например, о том, что в разработке HERE Maps, то есть Nokia-карты под Windows 8, принимала участие наша команда из Берлина.
Так что мы в последнее время достаточно глубоко ориентировались и на рынок Microsoft. Вообще наша фирма построена таким образом, что мы равномерно поддерживаем всем три мобильные платформы, поэтому, например, занимаясь поиском разработчиков, мы не привязываемся к какой-то конкретной платформе или фреймворку, а ищем хороших, талантливых людей. Один из секретов успеха нашей фирмы, которая существует уже 14 лет, заключается в том, что мы стараемся нанимать на работу не каких-то конкретных специалистов, а хороших разработчиков, которые могут всё, и которые хотят перекидываться с платформы на платформу. Точно так же произошло у меня.
Компания на этом построена, что мы инвестируем в людей, а не в какие-то конкретные технологии, потому что технологии меняются с колоссальной скоростью. Я, пожалуй, не встречал других таких компаний.
Других — это каких?
Во-первых, компания Futurice была организована 14 лет назад четырьмя товарищами, трое из которых с солидным инженерным образованием. Все они до сих пор являются руководителями компании, и это откладывает очень интересный отпечаток на культуру фирмы, когда фирма создается хорошими инженерами с бизнес-чутьем.
Во-вторых, мы давно решили, что будем создавать продукты именно для других фирм, что не будем делать собственных. В последние годы умами молодых разработчиков владеют надежды на золотой прииск и Клондайк: «Вот я сейчас напишу программку и стану миллионером». Эта мысль разрушила безумное количество и человеческих судеб и маленьких компаний, стартапов. Гораздо вероятнее развернуться, если вы планируете долговременное развитие фирмы и ее увеличение.
Существует большое количество очень хороших компаний, где разработка не является основным бизнесом, например, издательский дом, или завод по производству бумаги, или аэропорт, у которых нет активной команды разработчиков. Команда им и не нужна, просто время от времени у них возникает необходимость сделать какой-то сервис, мобильное приложение. Им гораздо выгоднее взять профессиональную команду из другой фирмы и работать с ней некоторое время. Если возникает необходимость, то делать договора поддержки, если возникает необходимость – нанимать ее опять.
И мы очень давно поняли, что именно такая модель бизнеса позволит нам очень органично расти, на 25-30% в год. То есть, не занимаясь супер-взрывным ростом компании, а именно натуральный, органический рост компании до 30%.
Это значит, что вы удваиваетесь каждые три года.
В общем-то, да. Когда пришел в фирму, я был сотрудник №42. Сейчас нас почти 250. Важно отметить, что середина 2000-х – это был как раз самый бум подрядчиков — то, что называется словом «аутсорсинг», в страны Восточной Европы, в Китай, Индию. Туда колоссальные деньги уходили, причём в основном, в такие организации, где у заказчиков часто нет никакой возможности работать напрямую с командой.
Существуют успешные случаи подобного Black Box аутсорсинга, существуют не очень успешные. У нас в Futurice с самого начала, на уровне общего понимания, на уровне человеческой культуры, была установка, что мы будем брать нашу очень небольшую команду и сажать ее вместе с заказчиком на его территорию интегрироваться с его командой. Это нужно для того, чтобы построить полностью итеративный процесс определения технического задания, его выполнения и поддержки.
Мы берем Agile-команды, и они работают прямо у заказчика. Естественно, всё можно делать гораздо дешевле, иметь проект в качестве Black Box для заказчика. В этом случае у заказчика нет никакой возможности напрямую влиять на разработчика, то есть процесс не непрерывен. Заказчикам это не нравится, нам тоже. Поэтому мы работаем прозрачно.
Наша бизнес-идея достаточно успешно реализовалась, поскольку мы очень много работали с Nokia, работаем с Microsoft, с большими телеоператорами (T-Mobile, Vodafone), с местными финскими операторами, издательскими домами, как-то даже с Amazon работали через Audible. Большая команда у нас в Берлине, небольшая в Лондоне, есть ещё команда в Швейцарии.
Лично у вас большая команда? Много проектов делаете?
Сейчас около 50 человек. Раньше во времена расцвета Nokia было около 20 и делаем по 70-90 не игровых мобильных проектов в год. Сейчас проектов на команду меньше, но и их размер гораздо больше. Всего компания делает больше 200 проектов в год. Залог нашего успеха — комбинация очень талантливых ребят, четкого планирования, хороших заказчиков, которые через некоторое время начинают тебе доверять. В этих условиях можно построить такую систему, которая не основана на продаже каких-то особенностей продукта, а именно на том, что компания-заказчик покупает именно ресурсы, именно команду, поэтому гораздо легче происходит итерация, когда внутри команды нужно перебросить людей из одной команды в другую, и так далее. Понятно, бывают большие по продолжительности стыки, притирки. Но мы умеем их решать, поскольку занимаемся этим уже много лет.
То есть ваши ребята не особо расстраиваются, когда вдруг их перекидывают на другой проект?
Есть у нас правило ротации. То есть если человек застрял в одном проекте больше, чем какое-то время, мы стараемся вывести его из проекта. Причём передача знаний от него к его сменщику идёт за наш счет, а не за счет заказчика.
Хотя некоторые ребята предпочитают оставаться в проектах долго. Это очень индивидуально, зависит от того, что кому нравится. Если очень увлечен конкретным проектом — пусть остается, мы не против.
А как вообще построены процессы?
У нас абсолютная финансовая прозрачность фирмы, всегда, на протяжении всех 14 лет. Это означает, что абсолютно любой сотрудник имеет полный доступ к абсолютно всей финансовой информации компании. То есть, даже если он не хочет знать, эта информация раз в месяц будет прислана ему нашим финансовым директором. Там будет полный срез за месяц: сколько мы платим зарплат, сколько мы платим за электричество, сколько с какого-то проекта у нас приходит денег…
Каждый разработчик знает свою зарплату, и он также прекрасно знает, сколько компания получает за час его работы в зависимости от того, где он работает, как он работает, и так далее. Поэтому очень многие процессы становятся очень легкими, потому что нет нездоровой конкуренции между разработчиками. Ребята могут публиковать внутри компании свои данные, например, на каком зарплатном уровне они находятся в данный момент. Поэтому очень легко оценивать свои возможности, свои таланты по сравнению с другими. Таким образом, исключены ситуации, когда Вася получает столько же, сколько и Петя, но делает гораздо больше. Такого у нас не бывает, потому что ты прекрасно понимаешь, чем занимаюсь я, а я — понимаю, что делаешь ты. Видно кто в каких проектах занят, кто, сколько и где приносит.
Финансовая прозрачность дает еще одно очень важное преимущество — стабильность. Зная финансовое состояние компании, ты можешь сам принимать решение, надо ли тебе уходить и искать что-то другое, потому что компания вдруг собирается разориться. В большинстве фирм возможна ситуация, когда ты приходишь утром в понедельник на работу, а тебе говорят: «Ты уволен, потому что, оказывается, мы разорились. Сюрприз!» Это то, чего у нас не может быть в принципе.
Кроме того, мы всегда стараемся интегрировать работу между дизайн-командами и командами разработчиков. Я выступал с докладом на эту тему на Microsoft Design Camp в Москве, где показывал успешные примеры того, как может быть реализована такая интеграция. И даже более: например, полный доступ заказчиков к процессу разработки, когда заказчик видит полный срез, сколько часов на что было потрачено, имеет полный доступ к системе контроля версий, бэклогу и т.п.
Это бывает достаточно технически сложно, поскольку у нас очень много разных технологий, которые мы используем, и в связи с этим, понятно, случаются всякое. Но сам факт существования нашей компании — доказательство, что такая полная открытость и уважительное отношение одновременно к заказчикам и своим собственным работникам — это действительно работает.
Еще одна уникальная возможность. Если вдруг в один день, будучи Windows Phone программистом или iPhone-программистом, вы просыпаетесь и понимаете, что вы не хотите этим заниматься – это абсолютно нормально. Это не значит, что вы прямой кандидат на увольнение. Вы можете прийти утром и сказать: «Вы знаете, ребята, выводите меня из проекта, надоел iPhone (или Windows Phone), я хочу заниматься чем-нибудь серверным».
Это у нас происходит постоянно, потому что мы такой контингент людей пытаемся найти, которые любят раз в какое-то время переходить на новые технологии. Это очень важно, особенно с современным напряжённым рынком работы в больших городах. У нас в компании сейчас работают ребята из 18 стран (официальная наша статистика). Одна из главных наших задач — это поиск талантливых, опытных разработчиков, неважно, откуда они. Если они готовы переехать в Скандинавию и смириться с нашими климатическими условиями, то мы гарантируем и интересные проекты и возможность попробовать разные технологии. И именно поэтому я приезжаю на .NEXT, именно поэтому наша компания спонсирует эту конференцию.
Исключительно сложно искать хороших разработчиков, потому что есть очень талантливые ребята, но которые ориентированы на какой-то конкретный продукт, например, и не хотят больше ничего. «Я занимаюсь вот этим, и ничем больше никогда не хочу заниматься». Или же, например, склад характера, который более подходит к разработке одного продукта на протяжении многих лет.
А есть какие-то общие черты у ребят, которым в кайф менять продукты? Что-то общее у них замечаете? Вот вы придете на .NEXT, увидите там сотни лиц, смотрящих на вас на открытии… Как вы будете определять, кто из них подходит вам, а кто нет? Каковы хотя бы первые признаки того, что этот человек вам может подойти?
Это сложный вопрос. Ответа на него я не знаю. Но я могу гарантировать, что в процессе разговора всегда можно примерно понять, особенно имея опыт. Я нанял очень много людей в нашу фирму, я всегда чувствую в процессе разговора «тип» человека. То есть, опыт позволяет делать меньше ошибок.
Есть распространенный миф, что люди, которые работают только в проектах заказчиков, должны быть только экстравертами и уметь активно болтать языком. Ничего подобного! Разные роли требуют совершенно разных характеров и умений. Но всегда можно найти в человеке то, что подходит или не подходит.
С другой стороны, мы давно взяли за правило – мы всегда на интервью делаем базовые технические тесты. Кто-то из наших разработчиков просто садится рядом, и ведет с кандидатом обсуждение на ту тему, в которой, как он считает, наиболее силен. Интервью у нас проводят очень опытные разработчики. Я сейчас — один из бизнес-директоров фирмы, и, как мы говорили выше, имею большой технический багаж. И это касается почти всех наших топ-менеджеров. Даже не являясь активными разработчиком в фирме, сегодня все равно многие из нас имеют какие-то свои хобби, проекты, или пишут прототипы несмотря на то, что у нас у всех руководящие или sales-позиции. Очень важно, чтобы ты был всегда впереди, знал, чем ты занимаешься и что ты продаешь. Поэтому и возникает такой эффект.
То есть даже топ-менеджмент проводит часть времени «в полях»?
Да. Естественно, это касается не всех типов директоров. Но, по крайней мере, в финском офисе работа устроена так: 130 человек разбито на три большие группы, которые разделены не по каким-то технологиям или навыкам, а просто для удобства организации. Каждая группа, примерно от 40 до 50 человек, имеет четырех руководителей, желательно из разных областей, то есть дизайн, технический, и так далее.
Все руководители нашей группы имеют солидный бэкграунд. Причём активный, постоянно расширяющийся. Я и еще один мой коллега — технический. Третий наших коллега — очень-очень опытный дизайнер, еще один коллега-руководитель занимается бизнес-аналитикой. Поэтому получается, что всегда найдется человек, который может реально оценить уровень любого кандидата.
Большинство руководителей в нашей компании — старожилы, и прошли через очень многие проекты. У нас существует good feeling: что подходит, что не подходит. И стараемся, чтобы ребята знали, во что они ввязываются. Одно мы гарантируем – что проектов будет много, и они будут разные.
А это, в основном, проекты, связанные с разработкой программ для мобильных устройств, или необязательно?
50 на 50. То, что мы сейчас активно продвигаем, называется Lean Service Creation. То есть, мы стараемся начинать работу с заказчиком с того момента, когда у него есть идея чего-то, и после этого пытаться помочь ему развить саму бизнес-идею, сделать бизнес-дизайн всего сервиса, потому что практически уже не существует отдельно взятых мобильных приложений, всегда за ними существует какой-то сервис.
У меня есть знакомый, Дима Завалишин, он живет в Москве и возглавляет компанию Digital Zone. Вы с ним чем-то похожи — он тоже директор и тоже с огромным техническим багажом. Он выступал у нас на митапе CodeFreeze в Москве года полтора назад, и рассказывал немного про свою аутсорсинговую модель, о том, как он взаимодействует с заказчиком. Один из ключевых вопросов, который он задает в самом начале общения своим заказчикам, звучит так: «Окей, e у вас интересная идея. А теперь объясните мне, как вы из этого будете делать деньги?». И если в этом месте заказчик ему не может ответить внятно, то Дима не берется за проект.
Мы работаем немного по-другому. Мы стараемся внести то, что называется бизнес-консультацией. Если мы видим, что проект не имеет смысла, то мы не обязательно говорим, что не беремся. Мы скорее постараемся изменить позицию нашего заказчика с тем, чтобы он тоже понял, что имеет смысл, а что не имеет. Иногда это возможно, иногда нет. Если невозможно, то, конечно, иногда приходится отказываться.
У нас много больших заказчиков, для которых мы являемся постоянным партнером по разработке. И многим из них наши консультации помогают сделать проекты прибыльными. Думаю, что наша модель достаточно успешна.
Например, Финский издательский дом Sanoma, который в России, кстати, издает National Geographic если я не ошибаюсь. У них сидит наша команда в 20 человек на протяжении трех лет. Понятно, что с ротациями. Мы для них — провайдер мобильных клиентов на все платформы. Прошло время, когда заказчик думает, что можно нанять одного человека или маленькую фирмочку, которая по-быстрому слепит iPhone-приложение, и на этом все закончится. Как раз с этого все проблемы и начинаются, после чего, когда осознаешь всю бизнес-модель. Это занимает много времени. Часть нашего сервиса – техподдержка в течение долгого срока.
Раньше разработка ПО была устроена так: есть фаза активного девелопмента и есть фаза поддержки. А в последние годы эта модель совершенно измениналась – нет той точки, когда приложение закончено и начинается какое-то исправление багов и так далее. Современное приложение непрерывно эволюционирует.
Именно. Мы работаем как раз в этом режиме. Понятно, у нас всегда есть внутренние дедлайны, релизы, пожелания и так далее. Но цифровые сервисы – это то, что живет и развивается постоянно, поэтому в этом направлении мы и стараемся двигаться. Мы работаем с теми заказчиками, кому нужен партнер с большим опытом, который знает, как держать его сервис.
И опять хочу подчеркнуть, что мы не застаиваемся на какой-то конкретной технологии – это одна из основополагающих вещей. Мы постоянно стараемся охватывать всё, что является активным, и наши ребята перетекают из роли в роль.
И много желающих работать в таком высоком темпе?
Конкурс большой. Если пару лет назад у нас было порядка 1000 кандидатов в год, то сейчас ещё больше. На позицию постоянного разработчика мы стараемся брать ребят с опытом. Хотя у нас очень много летних работников, студентов из близлежащих местных университетов.
Многие из них остаются в компании?
Да. Был у меня такой интересный случай: устроились на лето два суперталантливых парня. Один оказался редким и очень востребованным в то время Linux программистом, способный работать на kernel уровне. Другой, параллельно со всеми своими профессиональными достоинствами, постоянно участвовал в каких-то математическо-алгоритмических международных соревнованиях. В итоге, оба вскоре работали у нас на постоянной основе. Правда один через некоторое время был приглашен в Калифорнию и сейчас программист в Facebook.
Мы очень спокойно относимся к перетеканию людей из фирмы в фирму, потому что если человек работает в одной фирме много лет, через некоторое время он хочет попробовать что-нибудь еще. Конечно, некоторое количество людей уходит к нашим конкурентам, но основное количество людей, которые уходят из фирмы – все-таки те, кто пытается уйти в продуктовый бизнес, попробовать свои силы в стартапе или еще где-то. Некоторые возвращаются, даже по несколько раз. У нас есть чемпионы, которые уходили по два раза, но в итоге осели у нас.
Думаю, им надо дать специальную медаль.
Есть разные причины, почему люди уходят. Увольняем мы исключительно редко. Плюс мы активно используем то, что называется тестовый период – четыре месяца. Причем мы не занимаемся выкручиванием рук у разработчика в плане «На испытательном сроке мы вам будем платить меньше». Как контракт заключается на какой-то уровень, так он, в общем-то, и продолжается. Но пару раз мы решили не продолжать после тестового периода. Бывают случаи, когда ребята попробовали себя в нашем бизнесе – не походит. Нужно что-то другое искать.
Если охарактеризовать Futurice одним словом? Что это за слово?
Компания удивительная. В каком плане? Естественно, есть хорошие дни, плохие дни, хорошие месяца, плохие месяца, сезонность бизнеса никуда не девается, и люди есть люди. Бизнес падает вниз перед началом года, летними каникулами, и это часть игры, каким образом делается бизнес. Но знаете, это удивительно приятное ощущение, когда менеджмент компании адекватный, доступный и с пониманием. Это очень важно. К сожалению, это редкость в большом IT-бизнесе. Будь ты самым начинающим студентом-практикантом, если тебе нужно срочно пойти и поговорить с директором всей фирмы — ты можешь это запросто сделать. Ты можешь взять и поговорить с ним о чем угодно. У нас нет кастовости и иерархии. Так удивительно сложилась компания.
Мы очень долго шли к этому пути. Именно поэтому два года подряд 2012-2013 мы побеждали в номинации Great Place to Work одноименного института. Они регулярно проводят конкурсы в разных категориях по Европе и Штатам. Так вот, два года подряд мы выигрывали звание лучшего места работы в Европе в категории до 500 человек.
Давайте немного поговорим по тематике, которой занимается компания. Какого типа приложения? Я так понимаю, что есть и web applications, и desktop applications, и mobile applications, и services.
Большинство проектов связаны с Customer Facing Services, то есть тем, что находится в руках у конечных пользователей, у обычных людей. Если заказчик Nokia или Microsoft — то это мобильные сервисы. Взять те же самые HERE Maps, которыми пользуются абсолютно обычные пользователи.
Один из интересных наших заказчиков – это Хельсинский аэропорт. Мы разрабатываем для них на протяжении некоторого времени целую череду мобильных приложений под все платформы. Например, мобильный гид для аэропорта, который получил отличные рейтинги.
В старые времена был очень популярный сервис Sports Tracker. Мы помогали им создавать изначальную версию самого сервиса. Центральные финские газеты и их мобильные приложения, риелторы, их весь бекенд, интеграция с ERP-системами, плюс весь фронтенд. Вплоть до заказа пиццы через Интернет.
В старые времена также было очень много Research-проектов, когда активно развивался Nokia Research Center. И некоторые наши кейсы можно увидеть на нашем веб-сайте.
Один грустный, но понимаемый момент, что лишь о микроскопической части вещей, которые мы делаем, мы можем публично говорить, потому что, как правило, это принадлежит бренду компании заказчика.
NDA — он и в Африке NDA. А то, что мы сейчас с вами говорили про HERE Maps, про Nokia, про издательство – об этом можно публично говорить и писать?
Да, сегодня это уже не является секретом.
Мы говорили про то, что в компании 250 человек, но из них только половина работает в Хельсинки. Значит, есть и другие офисы. Где они находятся? Как они образовались? Как устроены? Как они стали возникать, по каким причинам? Что там сейчас происходит, нанимаете ли вы туда, какая у них специфика?
Как правило, процесс происходит так. У нас появляется хороший заказчик, который хочет иметь нашу команду у себя под боком. Изначально берётся финская команда и некоторое время работает на территории заказчика. Затем по бизнесу становится видно, имеет ли смысл организовывать местный офис. Плюс, естественно, это еще связано с европейскими рабочими законами, то есть на протяжении какого времени работник или фирма может работать в другой стране, не имея местную зарегистрированную компанию.
Дело в том, что существуют четкие законы, сколько ты работаешь в какой стране, и где тебе нужно платить налоги. Поэтому через некоторое время вы обязаны иметь легальный статус компании в данной стране.
Такой первый офис у нас был в Германии, связанный с Nokia и их картографическим отделением. В итоге, в центре Берлине у нас есть офис, в котором работает больше 30 человек. Второй не-финский офис у нас в Лондоне. В Финляндии у нас два офиса: главный в Хельсинки, а второй в Тампере, – там у нас порядка 40 человек. Есть и команда, которая работает у одного из заказчиков в Швейцарии в Лозанне. Сейчас мы стараемся двигаться в этом направлении, смотреть, какие возможности есть для того, чтобы открывать другие офисы в зависимости от того, какие и где у нас заказчики.
Я уже сказал, что мы очень заинтересованы в поиске профессиональных программистов. И в частности, на .NEXT я буду искать себе инженеров. И именно в Хельсинки. Потому что я, прежде всего, ищу людей к себе в команду, с одной стороны. С другой стороны, если у кого-то есть желание испытать свои силы в Европе, то гораздо легче начать с близлежащих стран. Если вы живете в Москве – прыгнули на поезд, и утром вы уже в Хельсинки.
Или самолет – всего полтора часа лёту.
Ну да, правда самолёт дороже. Если вы в Петербурге – то это вообще рай, всё равно что в пробке постоять. Через 3,5 часа вы уже тут. Это существенно облегчает адаптацию. Плюс к тому, если поначалу необходимо часто туда-сюда ездить. Сравните с ситуацией, если вам придется сразу в Лондон.
А как у вас с релокацией в другие офисы?
Сейчас мы стараемся, в зависимости от того, где у нас бизнес, нанимать людей из округи. Но если у нашего сотрудника в какой-то момент возникает желание и возможности попробовать себя в другом офисе – то это нами приветствуется. Если кто-то скажет, что «Я хочу работать в Берлине, и точка», то делается все возможное, чтобы это организовать. Естественно, это связано с бизнес-причинами: мы не любим терять хороших специалистов.
А чем именно интересна именно Финляндия?
Для молодых людей с семьей и детьми или планирующих заводить детей, Финляндия – отличное место. Она не зря считается одной из передовых стран в плане образования детей, и организацией работы школ и садиков. Разницу видно даже в мелочах.
А можно ли привести пример?
Легко. В финских детских садиках дети гуляют много часов в день при любой погоде. Что означает «любая погода»? Любая погода действительно означает любая погода. Дождь, снег. Естественно, если какой-то экстремальный ураган – нет, но поскольку Финляндия таким образом устроена, что дождь – это перманентное состояние, как и в Санкт-Петербурге… Обычного родителя, который не привык к Финляндии, это приводит в ужас: «Как это так? На улице будет шпарить дождь, а мой ребенок будет там шлепать замерзший по лужами?». На самом деле, происходит все таким образом. Когда вы заходите в детский отдел магазина, вы даже видите, каким образом он построен, где покупается полностью как скафандр прорезиненный теплый комбинезон, включая специальные комбинезоноподобные куртки, поверх которых надеваются все эти прорезиненные специальные классные разноцветные штаны, целая категория непромокаемых всяких сапог и ботинок, даже есть специальные резиновые варежки, чтобы под дождем удобно было в грязи копаться. Когда дети прыгают, скачут по лужам, они получают от этого гигантское удовольствие, совершенно не намокая.
Что происходит дальше? Когда они, например, перед обедом после прогулки заходят, во всех детских садах батарея гигантских сушильных шкафов, куда всё это мокрое отправляется, и через полчаса оно всё сухое.
То есть поиграл, пообедал, и можно дальше идти развлекаться?
Верно. И там тихий час, где дети в зависимости от садиков иногда сами всякие кроватки свои достают, надстраивают. После чего опять идет процесс, когда они идут второй раз гулять на улицу, то у них вся одежда сухая, висит, готовая к следующему использованию. Механика таких бытовых вещей очень упрощена, поскольку климат страны достаточно специфический, и это обычные вещи, над которыми люди не задумываются. А дети постоянно дышат воздухом, активно занимаются на улице.
Потом в начальных классах некоторых школ нет оценок вообще, то есть им раздают наклейки с зайчиками, белочками и так далее. И только с определённого класса начинается более активная раздача оценок. Понятно, это зависит от школы. И, конечно, существуют частные детские садики и школы, но их достаточно маленькое количество. Естественно, в Финляндии, как и во всех странах, существует проблема финансирования социальной сферы, но пока, слава богу, работает и даже школьные обеды бесплатные.
И потом, мы всегда боялись: а каким образом, когда у них, как кажется, несерьезное отношение школ к образованию детей, которое происходит почти в играющей форме, когда у них начинается high school или гимназия, каким образом происходит переключение? А оказывается, нормально происходит. Они в high school проходят такую заоблачную математику и физику, которые схожи с уровнем моего первого курса университета. Действительно, система удивительна и она работает. Потом школы, детские сады, они-то практически бесплатные, даже университеты бесплатные. То есть это, в общем, уникальная пока из немногих европейских стран, где такие социалистические вещи, в хорошем смысле слова, сохранились.
И плюс возможность практиковаться в английском языке. Финляндия – уникальная страна, где, живя годами в Хельсинки, вы можете не говорить на местном языке, потому что абсолютно все говорят по-английски, особенно если вы находитесь в IT-сфере.
Вы говорите по-фински?
К сожалению, очень плохо. Я, в принципе, могу говорить по-фински: когда я получал финское гражданство, то сдавал обязательный экзамен по финскому. К сожалению, в быту я его не использую. Похоже, что мой мозг впитал в себя определенное количество языков, на этом остановился.
А на каких говорите?
На многих, но почти все — языки программирования. Рабочий язык у меня английский: в фирме общение происходит, в основном, на английском, особенно сейчас, когда у нас много офисов.
Привыкать к местной жизни тяжело? Особенностей много?
Финляндия очень интересна с точки зрения национальных особенностей финского характера. У финнов действительно очень равномерно спокойное восприятие окружения и действительности. Даже была шутка, что если вы общаетесь со своим американским бизнес-коллегой, и он всё время говорит: «Yes, yes, yes», жмет вам руки, говорит: «Отлично! Завтра, завтра всё подпишем», это ничего не означает. Точно также, если вы ведете бизнес с финским коллегой, и он на вас не смотрит, отворачивается, не хочет разговаривать и пожимать руки, не говорит вам «Здравствуйте» – это тоже ничего не означает.
Пробыв в компании семь лет, и пройдя через безумное количество самых разнообразных заказчиков, проектов, ситуаций, видов деятельности и так далее, могу сказать, что Хельсинки — это действительно уникальное место, которое, даже если вы в нем находитесь некоторое время, я считаю, что открывает очень многие двери.
Точно так же, как, например, практически во всех западных университетах существует понимание того, что, если вы защитили PhD, то постдок нужно стараться делать в другой стране. Это же не просто так, а с тем, чтобы, когда вы в своем кругу общаетесь, у вас одно представление о вашей области, а когда вас выдирают с корнем, перемещают совершенно в другую среду, которая вроде бы тем же самым занимается, но вы получаете возможность посмотреть на свою профессию совершенно с другой механикой, с другой обстановкой, а это очень полезно в любой профессии. И в программировании, тоже очень полезно посмотреть механику с нескольких сторон, как работает. И особенно тем ребятам, которые планируют профессиональным программированием заниматься всю жизнь…
Мой любимый пример, который я часто привожу на конференциях, следующий. Многие говорят: «Вот, сейчас платформы меняются постоянно». С точки зрения программистов, которые много времени находятся в профессии (я профессионально программирую с 1990 года, то есть, уже 25 лет) – я не скажу, что уж очень многое изменилось. Понятно, какие-то инструменты, скорости. Но если вспомните старые времена 8-битных компьютеров – на самом деле, то же самое: безумное количество платформ. Spectrum, Atari, Macintosh.
А механика программирования – это Assembler. А он вроде бы и такой, но чуть другой. И у разработчиков были те же самые проблемы, что и сейчас: под какую платформу разрабатывать, где больше эффорта, какие кросс-компиляторы существуют для разных процессоров, и так далее. Это же, в общем-то, всё осталось.
Например, если помните, ZX Spectrum. Я не знаю, как это было в Петербурге и Москве, но в Таганроге он был очень популярен в свое время, когда пошли самодельные клоны. Но смысл в том, что под ZX Spectrum в те времена было больше 20 тысяч программ на рынке. Для микроскопической 8-битной платформы в доинтернетовские времена более 20 тысяч зарегистрированных software titles – это же колоссальное количество! То есть конкуренция, как она была, так и осталась — никуда не ушла. Поэтому гибкость профессий и постоянное развитие себя и проба различных платформ – это ежедневная необходимость. В этом отношении за последние 30 лет, на самом деле, ничего не изменилось.
На эту тему есть классическая статья Фредерика Брукса «No Silver Bullet».
Да, и “The Mythical Man-Month”, IMB 360, весь проект. Книга на полочке у меня стоит. Как и в любой профессии, программирование у нас более явно выражено в связи с тем, что библиотеки и платформы меняются с колоссальной скоростью.
Я очень много и активно в свое время занимался историей Macintosh и вообще Mac OS. Когда iPhone появился, я активно продвигал платформу – мы стали поддерживать платформу в фирме с 2008, хотя это было трудно делать в Европе, поскольку «что это за iPhone такой?» У нас тут Symbian везде!
А у вас много в компании разработок под Android, Mac OS или iOS?
Да, у нас эквивалентно все платформы представлены. Мы десктоп-программированием практически не занимаемся, то есть, в основном, это серверная часть и мобильные части. И все три платформы – Windows, iOS и Android, – в общем-то, присутствуют примерно в одинаковых объемах. Я не могу даже сказать, что какая-то более предпочтительнее, потому что равномерно бизнес распределён между тремя платформами.
Давайте теперь немного поговорим о .NEXT.
Мы стараемся заниматься достаточно много конференционной деятельностью. В этой связи конференция такого типа, как .NEXT, очень интересна, потому что она ориентирована исключительно на техническое содержание. Большинство конференций включают в себя разные треки по менеджменту, организации и так далее, и такое впечатление, что в последнее время это наполнение даже иногда превышает технический контент. Очень приятно иметь техническую конференцию, где можно обращаться непосредственно к аудитории, которая тебя интересует.
Это наша фича. Не секрет, что мы смотрели на другие конференции. Мы все в команде — технические люди. Причем я, например, с очень большим уклоном в Runtime, я очень люблю эту тему. Когда мы поняли, что в .NET нет нормальных технических мероприятий, мы четко поняли, что мы хотим двигаться именно в этом направлении.
Да. Поддерживаю эту идею. Я считаю, что нужно иметь возможность в каждой стране иметь профессиональные технические конференции, направленные на какую-то категорию разработчиков.
А есть ли в Финляндии, например, в Хельсинки технические конференции по этому направлению? Просто у нас сейчас есть мысли выводить .NEXT в Европу. Мы думаем про Хельсинки, Стокгольм — Дима Нестерук знает эту среду, для него Стокгольм — дом родной.
Самая большая в Скандинавии – пожалуй, Oredev в Швеции. Они совмещают технические и менеджмент-треки. Я несколько лет назад выступал там, два доклада делал. А конкретно в Хельсинки — по разному. Конечно Microsoft время от времени устраивает разнообразные мероприятия. Или например у нас сейчас гигантская, суперпопулярная конференция под названием Slush. В основном, она задумывалась как стартап-конференция. Это бизнес-форум общения, стартапов и так далее. В этом году приехало 14 тысяч человек. Но именно узконаправленных технических конференций — немного. Поэтому очень интересно и важно иметь в этом регионе технические конференции.
Если мы возьмем Microsoft, то если есть возможность поехать на Build, то надо ехать. Потому что там напрямую можно общаться с инженерными командами, и потому что там доминируют технические сессии. Но Build — это безумно дорого. Если компания не оплачивает вам дорогу и саму конференцию, то индивидуальным разработчикам вытянуть это практически нереально.
А вы ездите на Build, JavaOne, какие-то другие технические конференции?
Я и мой коллега, мы очень много занимаемся бизнесом Microsoft, то есть мы, как правило, практически каждый год бываем и на партнерских конференциях Microsoft WPC, и на Build. Eще традиционно — на Mobile World Congress, который ежегодно проходит в Барселоне. Мы очень много лет там присутствуем, как правило, из-за встреч, которые прямо там назначаем с заказчиками. Кроме того, на протяжении многих лет Nokia приглашала нас: у них был Developer Day, на котором мы очень часто выступали и помогали им.
Как крупные партнеры?
Да. Кроме того, мы являлись тренировочной организацией по их технологиям.
А ваши инженеры ездят по каким-то таким конференциям как участники?
Конечно. Если находится конференция, в которой человек очень сильно заинтересован, то у нас есть специальный learning budget, из которого берутся деньги на такие поездки. Из последних — в этом году у нас группа дизайнеров ездила Adobe MAX, который в Штатах был.
Очень важно быть непосредственно в среде, в которой ты делаешь бизнес. Я очень много занимался конференционной деятельностью. В России, к сожалению, только с прошлого года, благодаря моим коллегам из Nokia, которые познакомили меня с ребятами из Microsoft. Я пару раз выступал в Москве, и несколько раз мы организовывали тренинги в Санкт-Петербурге, и таким образом вышел на вашу конференцию. Очень здорово, что получается одновременно и выступить, и стать одним из спонсоров. Надеюсь, что мы этим делом будем постоянно заниматься.
На .NEXT вы будете один из Futurice?
К сожалению, несмотря на то, что у нас люди из 18 стран, говорящих по-русски у нас всего лишь двое или трое.
Всё, что связано с Microsoft – это мой непосредственный бизнес, зона, область, которой я очень много занимаюсь. Как и то, что связано с Java. Очень интересно будет посмотреть на ваши следующие Java-конференции, поскольку действительно, как оказалось, я опоздал поучаствовать в российской JavaOne, потому что, судя по всему, ее больше не будет.
Я не знаю. Планы Oracle известны только им самим.
По крайней мере, сейчас похоже, что JavaOne в России и других странах больше не будет. Точно также, как Microsoft завершает полностью TechEd по всем странам.
Непосредственно главная JavaOne, которая в Сан-Франциско, по-прежнему проводится. Это тоже очень хорошая конференция. В каком плане? Опять-таки, это исключительно насыщенный технически контент. То есть если вы находитесь в Java-экосистеме, то есть очень хорошая возможность пообщаться, потому что там много спикеров из Oracle.
Что касается .NET-стека, мне повезло в связи с тем, что я MVP получил в прошлом году, и теперь у меня есть возможность ездить на MVP Summit непосредственно в Редмонд, штаб-квартиру Microsoft. Был уже два раза. Пожалуй, это одно из самых главных преимуществ, что получаешь от своего титула, потому что есть возможность один на один напрямую говорить с инженерами, которые отвечают за какую-то особенность, какую-то часть Visual Studio или .NET Framework или какого-то другого важного продукта. Если есть возможность, то это очень интересный опыт – побывать непосредственно в сердце самой компании. Они это очень хорошо организовывают.
Расскажите немного о вашем докладе на московской конференции .NEXT.
Мы много занимаемся разными вещами с Windows Phone, опять-таки, из-за нашего соседства с Nokia, и до сих пор участвуем во многих проектах, которые уже в Microsoft-части Nokia. А еще мы, являлись официальным тренировочным партнером Nokia, очень много занимались именно примерами и тренировочным контентом для разработок.
И есть целая категория вещей, которые люди пропускают. Сам процесс разработки под Windows Phone достаточно простой, особенно для начинающих программистов, из трех платформ он самый простой, потому что если вы начинаете двигаться с изучением платформы, очень базовые вещи очень быстро можно сделать.
То есть кривая обучения получается довольно ровной?
Да. Но одновременно с этим, мы сами себе врать не будем, популярность платформы довольно низка. И я считаю незаслуженно. Многие интересные вещи происходят под Windows Phone, и сама концепция пользовательского интерфейса очень интересна. Может, поскольку я занимаюсь Windows Phone, у меня предвзятое отношение, но являюсь много лет обладателем телефонов Nokia с замечательными камерами. Пока еще никто не приблизился к 41 мегапикселю на Lumia 1020. Например, сейчас у меня в руках Lumia 1520 с 20-мегапиксельной камерой.
Очень хочется привлечь внимание разработчиков, которые не только ориентируются на создание приложений для магазина с тем, чтобы заработать себе копеечку. Windows Phone — это ещё и отличная платформа для всевозможных экспериментов: в бизнесе, в хобби, в студенческих проектах. Поэтому я поставил перед собой целью суммировать в этом докладе, что вы можете сделать именно со всяким оборудованием.
Например, как отображать видеопоток и достучаться до отдельных пикселей, что-то там поменять, провести обработку изображения. Как это сделать? Вручную это всё очень просто, но хочется привлечь внимание людей, проиллюстрировать, как это можно сделать с помощью Imaging SDK, про который я несколько раз рассказывал в России.
Далее, последние телефоны Lumia идут с уникальным Sensor Core процессором Snapdragon, в котором датчики движения имеют очень низкое энергопотребление. Они работают постоянно, хотите вы этого или нет. И существует специальный Sensor Core SDK от Microsoft, с помощью которого вы можете данные шагомера, ваших перемещений получить. Хочется привлечь внимание разработчиков к этим возможностям.
Далее, с появлением Bluetooth LE существует безумное количество сенсоров, например Nokia Treasure Tags. Каким образом открыть канал обмена байтами между каким-то внешним устройством через Bluetooth и вашим телефоном? На самом деле, это всего лишь несколько строк текста занимает, а результат может быть очень интересный.
Например, я привезу Lego-робота, и покажу, каким образом можно открыть канал коммуникации, и просто ему байтовые команды посылать с тем, чтобы управлять моторчиками, и получать с него обратно какую-то информацию. Таким образом я надеюсь привлечь внимание именно к Windows Phone как к платформе для всякого разного аппаратного экспериментирования.
К сожалению, нам пора заканчивать. Что Вы пожелаете напоследок нашим читателям?
Никогда не переставайте учиться и самосовершенствовать свои навыки. Пробуйте как можно больше технологий.
Ну и конечно, всем читателям, я еще раз рекламирую .NEXT. Мой доклад будет утром во втором зале, сразу после кейноута Дино Эспозито. После доклада у нас с вами будет целый день, чтобы пообщаться на любую тему. Приходите!
Автор: