Від стажування у Facebook до роботи в Google: як львів’янин Остап Столярчук переїхав до Швейцарії

9422
1

Остап Столярчук зі Львова від самого дитинства цікавився математикою та написанням коду, брав участь у всесвітніх олімпіадах з програмування, встиг пройти стажування в офісі Facebook у Долині, попрацювати в Microsoft в Дубліні, та зрештою - потрапити до команди Google в Цюриху. Остап розповів редакції AIN.UA, чи важко було без підготовки стажуватись у Facebook, як - майже випадково - влаштувався на роботу в Microsoft та чому зрештою обрав для себе Швейцарію. 

Як зацікавились програмуванням, чи була з ним пов’язана перша робота?

У дитинстві говорив батькам, що хочу бути професором з математики, як мій дід і, власне, це визначило весь мій майбутній напрямок. У 7 класі виграв обласну олімпіаду у Львові й мене запросили у Львівський фізико-математичний ліцей. Коли батьки купили комп’ютер, я цілий рік тільки те й робив, що грався на ньому, але якось ми з батьками сходили в гості до сім’ї, де син-програміст займався камерами відеоспостереження. Мені це видалось дуже цікавим, я попросив у мами книжки з програмування і за літо вивчив Pascal.

Після цього пішов на олімпіаду з інформатики, думав, що я — дуже крутий перець, але отримав задачі, з якими не міг впоратись, і зрозумів, що майже нічого у програмуванні не знаю. Десь в цей момент і почав більше займатися алгоритмами та програмуванням ніж математикою, але в моєму житті вони завжди йдуть поруч. В олімпіадах з програмування мені подобалося те, що тобі не потрібно доводити, чому задача працює правильно: отримав відповідь, що задача зарахована — і все, берись за наступну. А в олімпіадах з математики треба кожну деталь розписувати, пояснювати.

У Львові у 2008 році з’явилась команда LNU Scorpions, яка виграла золоті моделі ACM-ICPС (Association for Computing Machinery – International Collegiate Programming Contest) — це студентське змагання з спортивного програмування у світі. Я хотів брати участь у цьому змаганні, знав, що в КНУ багато людей беруть високі місця у фіналах та півфінальних змаганнях і, власне, це спонукало мене подаватись саме туди. Тож я вступив в КНУ на факультет кібернетики, де познайомився із куратором моєї групи та майбутнім тренером з програмування Михайлом Медведєвим.

Щодо першої роботи — скажемо чесно, я не рвався працювати. Нагальної необхідності в коштах не було, мені було набагато цікавіше розв’язувати алгоритмічні задачі, багато моїх однокурсників уже на першому-другому курсі пішли працювати в різні компанії як інтерни чи на неповну зайнятість. Я ж продовжував вивчати алгоритми, взагалі не шукав роботу. Коли з командою поїхали на збори зі спортивного програмування до Харкова, зі мною випадково зв’язалися рекрутери з «УкрНету»  — це й була моя перша пропозиція на роботу (на той момент я вперше почув про таку компанію). Так почав працювати паралельно з навчанням та продовжував підготовку до змагань ACM-ICPC.

Ви потрапили на інтернатуру до Facebook, після цього працювали в Mіcrosoft. Як це вдалося?

Восени наша команда потрапила до півфіналу світу ACM-ICPС у Вінниці в 2011 році. Власне, Facebook був одним із спонсорів цього змагання, вони проводили дуже круту презентацію про стажування в компанії та проекти, над якими можна працювати особисто, і одним із інженерів, який проводив цю презентацію, був мій друг Остап Коркуна, який і на разі працює у Facebook (редакція публікувала інтерв’ю з Остапом — ред.). Усі мені говорили «подавайся». Я подався і мене відразу запросили на інтерв’ю.

Це був мій перший раз за кордоном, я сам поїхав на три місяці в США. Тоді Facebook саме переїхав у новий великий офіс в Менло-Парк. Досвід у Facebook був доволі складний у технічному плані, окрім базових знань з алгоритмів потрібно було мати теоретичну підготовку з computer science.

Усіма документами, потрібними для робочої візи інтерна, займалась компанія-партнер Facebook. Інша компанія займалась пошуком житла. Було дві пропозиції: або вони дають якийсь cash-in і я сам шукаю собі житло або вони дають житло ще з якимось інтерном на пару. Я обрав тоді другу опцію і ні разу не пошкодував про це, тому що це житло було дуже круте, розташовувалося відразу навпроти Стенфорда. Ми «шерили» на двох величезну трикімнатну квартиру: дві спальні, одна величезна вітальня і кухня, два санвузли. У Каліфорнії в районі Bay Area живуть багато випускників факультету кібернетики КНУ. З ними я проводив досить багато свого часу. Крім того, Facebook організовує для інтернів різні івенти: подорож на лижах, похід на матчі з хокею, різні квести по Сан-Франциско.

Смотреть коллекцию вакансий ?Релокация на AIN.UA

Facebook запропонував досить хорошу зарплатню для інтерна (вона була трохи нижча від full-time employer). Інтернам також дається ментор, який виставляє задачі, допомагає в будь-яких технічних питаннях. Перші два тижні нас водили у так званий bootcamp, там розповідали про різні технології, системи, які використовуються у Facebook, як створюється та деплоїться код, та ін. Після такого швидкого вступу ментор ставить задачі.

Я працював в команді Memcached над популярними ключами в запитах memcached. До цього я в основному писав код у Visual Studio та працював з операційною системою Windows. А тут усі працювали у Linux, із редакторами коду типу Vim, Emacs. Я гадки не мав, що то таке, довелося багато часу розбиратись із цим, іноді застрягаючи на одному питанні на півдня або день. Але це був гарний досвід: навчитись швидко розібратись у тому, чого не розумієш.

Як потрапили до Microsoft?

Після стажування до мене стало надходити набагато більше пропозицій на роботу в Києві. В якийсь момент мені розповіли, що Microsoft приїжджає до Києва набирати на full-time та інтерн-позиції. Я якраз планував internship або в Google, або в Microsoft.

Під час інтерв’ю там було дві команди: одна — із Дубліна, одна — із Сіетла. Інтерв’ю було не таке, як у Facebook (дві співбесіди по 45 хвилин). Це було інтерв’ю як для full-time employer і тривало 5 годин (5 інтерв’ю по 45 хвилин). Я в усіх анкетах вказував, що хочу бути інтерном в Сіетлі. Після п’ятого інтерв’ю мене попросили зачекати в офісі, потім покликали в кабінет і повідомили про офер. Але чомусь стали розповідати про фултайм-позицію у Дубліні. Я в принципі був не проти, так і вийшло, що я випадково пройшов співбесіду на повноцінну роботу замість стажування. В університеті лишався рік навчання, сесію я здав екстерном за два місяці, а диплом писав уже в Дубліні.

Microsoft також надавав підтримку по переїзду: візова підтримка для мене і моєї дружини, перевезення усіх речей з моєї квартири. Але оскільки я був ще студентом, фактично в Дублін ми переїжджали з чотирма валізами і одним рюкзаком. Уже в Дубліні, доки ми шукали житло, нам надали corporate housе, окрім того, компанія надала агента, який допомагав з пошуками. Вже друга квартира, яку ми подивилась, нам сподобалося, крім того вона розташовувалась всього за 7 хвилин пішки від офісу у сучасному бізнес-районі Сендіфорд.

Є купа легенд, що в Facebook чи Microsoft на співбесідах задають дивні питання, по типу «Чому кришки люків круглі?». Ви із таким стикалися?

Я чув про таке, тому був до цього готовий. Але насправді про кришки люків уже давно не питають. Їх цікавить твоє розуміння проблем із computer science, а також вміння впоратись із прикладними завданнями по типу: як найшвидше знайти найближчий маршрут між домом і магазином, як оптимально розпланувати зліт/посадку літаків у аеропорті і тому подібне. Бувають алгоритмічні завдання, завдання на дизайн — наприклад, запропонуйте дизайн або архітектуру нового Twitter.

Чим займались у Microsoft?

Тоді до Києва приїхала команда, яка займалась новим веб-інтерфейсом для Microsoft Office Online. Я в Microsoft займався веб-програмуванням на технологіях .NET для сторінки MyAccount, яка дозволяє купувати підписку на Office Online. Це для мене також було в новинку, бо раніше я із .NET не працював. Але в якийсь момент я зрозумів, що веб-девелопмент мені не цікавий, тому я вирішив шукати щось інше.

Які у вас були враження від релокейту в Дублін?

Мені було цікаво спробувати працювати у Європі, тому що ринок IT в Україні досить серйозно відрізняється від європейського та американського. В Україні, наприклад, дуже багато аутсорс, аутстаф-компаній. Якщо проходиш співбесіду в Україні, тебе в основному питають знання якихсь конкретних технологій. А у Європі чи США від тебе очікують знання computer science, а конкретні технології — якщо ти їх не знаєш, то зможеш вивчити, уже потрапивши у штат компанії. Більшість компаній набирають співробітників, орієнтуючись на рівень їхніх фундаментальних знань.

Я уже казав, що коли прийшов до Facebook, вивчив там основи роботи з Linux, у Microsoft не мав гадки, що таке .NET, але вивчив його. У Google я в основному працюю на С++, але слухаю багато тренінгів по інших технологіях та мовах програмування, які також використовуються в компанії.

Стосовно проживання в іншій країні: спочатку було незвично, я ходив на роботу, повертався додому до дружини, ми обговорювали робочий день, знайомилися із новими людьми. Якось так сталось, що в Microsoft мені показали мій робочий стіл, я з усіма привітався, аж от навпроти мене встає хлопець і каже: «Привіт! Я — Ярік, я з Харкова!». Ми з ним здружилися, пізніше виявилось, що ще кілька хлопців з мого універу тут працює.

У мене були проблеми із англійською мовою у Facebook, я ходив на курси, щоби підтягнути рівень, але все одно не встигав за мовленням колег. У Дубліні після Facebook було складно, але якось я got used to it. Ще один нюанс роботи: в Microsoft вимагалось давати оцінки своїй роботі (наприклад, скільки часу займе певне завдання), а для мене це було складно, тому що я вперше бачив ці технології.

По побуту та культурі мені Дублін сподобався. Це місто набагато менше за Київ (тут немає метро, а лише дві трамвайні лінії з одного кінця в інший), а я не люблю мегаполіси, тож почував себе тут набагато комфортніше. Зараз ми живемо у ще меншому місті, і це ще краще.

Збільшилися чи зменшилися витрати після переїзду?

Коли я підписував контракт з Microsoft в Дубліні, мені дали один день на роздуми, тож було небагато часу на research, я прийняв перший офер, який мені запропонували. Так само було і з переїздом — ми не дуже перевіряли, які у Дубліні податки або ціни на житло. Щоправда, по переїзді довелось трохи підвищити рамки, які ми самі собі поставили на ціни на житло. За двокімнатну квартиру — дві спальні і вітальня — ми платили 1200 євро в місяць. Але наразі ринок нерухомості в Ірландії вже змінився (ціни виросли).

По витратах на харчування не маю з чим порівнювати, тому що в Києві я жив у гуртожитку на стипендію та зарплату, а тут ми вже фактично жили сім’єю, знайшли дешеві супермаркети, де щотижня закупляли продукти: на харчування витрачалося приблизно по 50 євро на тиждень, для нас це були нормальні витрати. Окрім того, у Microsoft були обіди в офісі, але платні — по 5-6 євро за обід.

Чому подумали покинути роботу в Microsoft та подаватись в Google?

Протягом всієї моєї кар’єри я займався алгоритмами і продовжував ними займатися, будучи вже інтерном у Facebook та full-time-співробітником у Microsoft. Я знав, що застосування алгоритмічного мислення більше необхідне для розробки back-end систем. У front-еnd це також необхідне, але не настільки глибоко. Тому я почав перевіряти, які компанії мають серйозну back-end складову. На той момент я подався майже у всі топові компанії та стартапи (Facebook, Google, Amazon, Twitter, Uber). Я подавався таким чином, щоби співбесіди в компаніях, куди я хотів найменше, йшли перші, були тренувальні. Дві основні мої цілі були: або повернутись у Facebook, або потрапити до Google.

Cпівбесіда у Google була моїм останнім і найважчим інтерв’ю.

Починаючи з вересня 2014 року я протягом кількох місяців проходив після роботи і по 2-3 години вирішував алгоритмічні задачі, які зазвичай задають на інтерв’ю, щоби підготуватись. Ще місяць я готував суто system design-інтерв’ю (малював дизайн нового Twitter, нового Google Search і т.д). Я просто подивився в інтернеті, які можуть задавати питання на співбесіді, і працював із ними. В основному я готувався по двох сайтах: HiredIntech та Leetcode.

Я літав в США на full-time-інтерв’ю до Facebook, мене брали в Amazon в Дубліні, і перед тим, як летіти до офісу Twitter, я отримав офер від Google. Власне, співбесіда у Google була моїм останнім і найважчим інтерв’ю.

Розкажіть, чи важко програмісту проходити інтерв’ю в Google?

Почалося з того, що я попросив подругу, яка живе в Лондоні і працює в Google, щоб мене порекомендували. Коли тебе реферять, це набагато підвищує шанси, що твого листа помітить рекрутер и т.д. Буквально через день після референсу мені написав рекрутер, він перевірив мою адекватність, чи я знаю, що таке С++, чи знаю назви базових алгоритмів.

Після цього мені призначили технічне інтерв’ю. Воно проходило по телефону з офісу в Цюріху, все пройшло досить добре. Я уже готувався летіти до Цюриху, аж тут мені надіслали запит на ще одне інтерв’ю, я навіть злякався, що щось пішло не так. Друге телефонне інтерв’ю я теж пройшов досить легко і полетів до Цюриху уже на onsite-інтерв’ю.

На другий день у мене було 5 технічних інтерв’ю (з них три по алгоритмах, одне — про system-design, одне — про об’єктно-орієнтоване програмування) плюс інтерв’ю на обіді. Останнє — це фактично не співбесіда, а просто розмова, якийсь зі співробітників запрошує тебе на обід і ти можеш питати в нього все, що схочеш про роботу. Він розповідає про життя-буття в Google і загалом спілкується. Я питав про житло, витрати, про проекти, з якими можна працювати в компанії.

Якщо говорити про рівень складності технічних співбесід — в Google було найважче. Співбесіду з об’єктно-орієнтованого програмування я вважав, що завалив, дуже хвилювався через це. А от співбесіду по дизайну я дуже швидко звів не до дизайну чи архітектури системи, а до систем швидких запитів з алгоритмічної точки зору, тут пощастило. Загалом, мені здалось, що 4 співбесіди я пройшов добре, а одну — погано.

Яка віза потрібна була для роботи у Швейцарії? Чи допомагала компанія і скільки часу це зайняло?

Саме з лютого 2015 у Швейцарії почав діяти закон: щоб отримати нову роботу, потрібно три роки досвіду роботи після університету. А у мене на той час було лише півроку, і фактично, залишилося 10 днів на подачу всього пакету документів. Мені пощастило із тим, що пакет документів не дуже відрізнявся від того, що потрібний був для Дубліну, тож мене подали 26 січня, а нові правила запрацювали з лютого.

Містечко, в якому живуть Остап та його дружина

Коли переїжджаєте до Швейцарії, жителям Non-EU країн видають перміт L — це такий короткостроковий дозвіл на проживання терміном до одного року. Оформленням цього документу займалась компанія. По документу permit L ти сам можеш працювати, але дружина не має права на роботу. Також можна жити у країні до двох років (документ видається на рік і його можуть видавати максимум двічі). Після permit L компанія подає тебе на permit B, який дозволяє працевлаштування членам родини. Є також permit С, який дає право безстрокового проживання на території Швейцарії, він видається після 5-7 років проживання у країні. Рік тому мене і дружину перевели на permit B.

Чи складно отримувати ці документи?

Процедура отримання permit С передбачає екзамен з німецької мови, який має бути рівня B1 (аналог Intermediate-рівня в англійській мові). Після переїзду в Цюріх компанія фінансувала для нас вивчення німецької мови протягом 2 років. Моя дружина за рік з нуля вивчила німецьку до рівня С1, це дозволило їй скласти тест німецької мови, він необхідний для навчання в університеті Цюріха. Я на даний момент дійшов до рівня А2 і мені його достатньо в побуті.

На роботі спілкуєтесь англійською чи німецькою?

Суто для практики німецької мови ми деколи збираємось на ланчі, де присутні native-спікери німецької мови та, ті хто вчать німецьку. Але всі робочі процеси та комунікації в компанії відбуваються виключно англійською.

Чим займаєтесь у Google?

Коли я підписав контракт, мені дали на вибір дві команди, я обрав команду, яка займається розробкою internal-додатку, що допомагає інженерам Google Search розробляти системи та інфраструктури для якісної роботи пошуку Google.

Фото з цюріхського офісу Google, одразу після влаштування на роботу, 2015 рік

Крім цього, я ще займаюсь 20% project — в Google один день на тиждень можна виділяти час для роботи над своїм стороннім проектом. Після університету я дуже цікавився datacompression — це якраз пов’язано із алгоритмами, якраз те, що я люблю в програмуванні. Я знайшов круту команду і з ними ми розробили проект Guetzli. Це новий формат для стискання картинок, зображення виходять такі самі по якості, як JPEG, але на 30-35% менші за обсягом. Людське око не помічає відмінності. Ми цей проект заопенсорсили, випустили про нього статтю у блозі Google.

Приклад роботи Guetzli з фото ока кота: 20×24 пікселів — праворуч, оригінал зображення — ліворуч, посередині — результат libjpeg

Можете розповісти про враження від роботи в Google: рівень проектів, співробітники, корпоративна культура?

Я на всі 100% задоволений, що вибрав саме Google, як свій теперішній destination. Тут все дуже відкрито, співробітники — надзвичайно розумні. При тому кожен вважає, що усі навколо нього ледь не розумніші за нього, ця повага до кожного впадає в око. Тут інтернаціональна спільнота: у мене в команді є німець, француз, хорват, іспанець, аргентинець, словак.

Головне — get your work done — це основне правило, яким всі керуються.

Будь-кого можна спитати чи попросити підказки — тобі не відмовлять. Мені подобається вільний робочий графік, офіс відкритий 24 години на добу, 7 днів на тиждень, коли хочеш, тоді працюєш.

Є багато well-being-програм для співробітників. Наприклад, я — великий фанат футболу, їжджу на всі матчі збірної в Європі, в Google я — football manager, організовую ігри з іншими компаніями, беру участь в усіх турнірах. Ми з командою граємо в понеділок та п’ятницю з 12:00 до 14:00, це займає до трьох годин робочого часу, але то нікого не хвилює, поки ти виконуєш свою роботу.

Розкажіть про побутові речі, які можуть бути цікаві людині, що думає про релокейт до Швейцарії?

Тут надзвичайно складний пошук житла, нам Google дав агента, який допомагав із цим. Ми подали заявку на 30 квартир, з них нам підтвердили тільки дві. Проблема в тому, що власники житла усі дивляться на твій контракт, знають, скільки ви заробляєте. І в них така політика, що дешевші квартири мають іти людям з меншим заробітком. Тобто, вони бачили, що я працюю в Google і це ускладнювало пошук бюджетного варіанту житла. Нам також багато відмовляли, бо ми були не місцеві, не говорили німецькою, не мали рекомендацій з попереднього місця проживання в Швейцарії.

Дуже допомогло те, що в компанії є внутрішня група: коли хтось з співробітників з’їжджає, ти можеш подивитись його колишнє житло, і якщо тобі подобається — переїхати. У нас так і сталось: один із колег переїжджав в інше село, ми поїхали подивитися квартиру, нам вона сподобалась, і ми її зняли. Оскільки до нас там уже жила людина з Google, власник і нам довіряв.

Зараз ми живемо за 13 км від Цюриха, у невеличкому містечку Oberrieden. Час до роботи door to door займає 32 хвилини — це при тому, що я хвилин 20 проводжу в потязі. У моєму селі є два вокзали, поїзди їздять кожні 15 хвилин. Зараз наш офіс в Цюріху знаходиться біля головного вокзалу, тобто туди досить зручно діставатися.

Яка ціна квартир в Цюриху і загалом вартість життя?

В самому Цюриху двоспальна квартира (загалом 3-ох кімнатна) раніше була від 2300 до 3000 франків (1 франк — це приблизно $1).

У загальному у Швейцарії досить низькі податки, але вони залежать від того, в якому кантоні чи місті ти живеш. Цюріх є дорогим кантоном, має високу ставку податків, у сусідніх кантонах, таких як Schwyz чи Zug, податки, набагато нижчі. Багато хто зі знайомих обирає жити у сусідніх кантонах, щоби економити на податках, але їм на 10-15 хвилин довше добиратись до міста.

Швейцарські податки — це приблизно 10% від доходу, ще є додаткові виплати, такі як кантональні податки та податки комуни (міста/села), де живеш. Працює прогресивна шкала, тобто чим більше заробляєш, тим більше сплачуєш, але все одно ставки не такі й високі, разом добігає десь до 15-20%.

Поки в тебе перміти L/B, компанія автоматично відраховує кожного місяця податки з твоєї заробітної плати, але якщо ти отримав перміт C — тоді тобі податки потрібно платити раз в рік з загального прибутку за рік. Раз на рік маєш заповнювати податкові декларації (якщо твій дохід складає більше 120 000 франків — біля $120 000): скільки податків ти заплатив і скільки був винен, до кінця року тобі листом надсилають, чи ти щось винен кантону чи кантон винен тобі. Багатьом повертають якусь частину податків. Ця декларація заповнюється одна на сім’ю, де доходи дружини та чоловіка сумуються і вже від загальної суми вираховується прогресивний податок. Тому деякі швейцарці (та й не тільки) живуть разом, виховують дітей але не одружуються, щоб менше податків платити. Ще існує податок на релігію — він 7%, але є необов’язковим.

Щодо харчування: у Швейцарії є дві основні мережі супермакетів Coop та Migros, обидві доволі дорогі. Коли ми тільки переїхали, пішли купувати продукти на вечерю і за кілька простих продуктів — хліб, масло і т.д. — заплатили близько $20. Порівняно із Дубліном — дорого. Ми не знали, що зайшли до одного з найдорожчих супермаркетів країни. Потім знайшли дешевші магазини, наш середній чек на їжу на тиждень складає зараз біля $80-100. У дорогих мережах середній чек може добігати $200. Нюанс в тому, що дорожчі мережі присутні по всій країні, а дешевші ще треба шукати.

Щодо транспорту, оскільки ми живемо за містом, потрібно щодня добиратись на роботу. Добовий квиток коштує 6 франків, можна купити місячний проїзний, який коштує 120 франків або річний за ~1000 франків (приблизно $120 и $1000).

Загалом, транспорт у Швейцарії дуже дорогий. Наприклад, проїхатися одну годину з Цюриху потягом до Берну коштує 50 франків ($50) в одну сторону, без знижки. Існують знижки half-price, за які ти платиш в рік $180 і отримуєш знижку на весь транспорт по Швейцарії у розмірі 50% — вони досить швидко окупаються. Також є різні загальні абонементи, які коштують декілька тисяч на рік, вони передбачають безкоштовний проїзд протягом року по всій Швейцарії.

Із Швейцарії дуже зручно літати по всій Європі. Але й по самій країні подорожувати цікаво, це й гірськолижні курорти, є величезна інфраструктура для катання на санках, є різноманітні гірські траси. Є різна довжина санкових трас: від 500 м до 15 км, тому кожний охочий знайде те, що йому цікаво. Літом ходимо на прогулянки в гори, купаємося в озерах, в різних термальний басейнах в горах. Компанія оплачує нам певну суму на trasportation allowance — її можна витратити за власним бажанням, наприклад, придбати велосипед чи проїзний.

Насправді, benefits у компанії досить багато. Наприклад, Google також виділяє кошти на страховку, але ти сам обираєш провайдера. У Швейцарії є дві страховки: health insurance i accident insurance. Перша покриває випадки, коли ти хворієш, якщо щось трапилось — це другий тип (наприклад, під час гри в футбол мені м’яч вдарив по нозі, виявилась тріщина в пальці на нозі — це accident insurance). Останню страховку повністю оплачує роботодавець, перший тип — до певного ліміту витрат платиш ти, після — страхова компанія. Зараз ми за страховку на двох платимо 450 франків ($450) на рік.

Чи ви не шкодуєте про своє рішення переїзду? Плануєте повернутися до України?

На даний момент я дуже задоволений своїм життям. Так складалося, що після Києва я переїжджав в усе менші й менші міста, і мені щоразу все більше й більше подобалось: не люблю мегаполісів. Усі кажуть, що у Швейцарії нудно, але нам подобається. Чесно кажучи, поки що я не бачу себе в Україні. Можливо, у майбутньому я започаткую свій стартап, але для того, щоби створити класний продукт, потрібен досвід.

Оставить комментарий

Комментарии | 1

Поиск