Залишаю Microsoft

П’ятниця, 7 лютого мій останній день в МС. Передбачаю що у вас одразу виникнуть питання чому і куди далі? Чому я власне і спробую пояснити в цьому пості, а куди далі напишу якось згодом.

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

В США з цим трошки легше оскільки дітей виховують в дусі “знайди себе у житті”, “знайди чим тобі хочеться займатися і що буде приносити задоволення”, “почни свій власний бізнес”. І хоча люди розуміють важливість щоденного задоволення від роботи і другорядність рівня оплати все ж таки з різних причин і в США не всі можуть собі дозволити просто так міняти роботу. Ну а про Україну я взагалі не кажу.

Ну ось я і опинився в такій ситуації коли “не цікаво”. Роботи дуже багато, практично щодня люди працюють 10+ годин, часто доводиться і на вихидних працювати. Робота дійсно потрібна і має велике значення і для команди і для всієї організації (Windows Phone) і для продукту. Але це не та робота яку б я хотів робити, той досвід який я отримую це не той досвід який мені цікаво отримувати, а крім того дещо дістала мене система рев’ю (почитайте Рівні і зарплатня в МС).

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

Система ж рев’ю є окремою проблемою МС – всі знають що вона погана, але ніхто не знає як зробити краще. В результаті просто помирати на роботі не достатньо, треба дійсно любити те чим займаєшся і додатково робити якісь речі завдяки яким тебе будуть знати менеджери інших команд. Якщо просто заритися у свою роботу то постраждає річна оцінка, скажуть “може він і правда такий хороший як його менеджер розказує, але ми не знаємо про його існування, не знаємо що він робить і не розуміємо для чого його підвищувати чи взагалі тут тримати”. Ідея основна в тому що як людина не стрибає вище голови то може краще її і не тримати і на її місце посадити того хто таки буде стрибати.

Важко видавати екстраординарні результати коли те що робиш самому здається нудним Sad smile

Можна було б звісно пошукати іншу команду в МС, мене б особисто цікавили такі продукти як bing, SQL Server та Windows Azure. Але як подумав про весь процес: шукати відкриті позиції, зв’язуватися з лідами, розсилати відгуки від свого ліда за попередні роки, проходити всі ці формальні і неформальні інтерв’ю… Чесне слово легше ззовні потрапити в МС ніж поміняти команду вже працюючи в компанії. От я і подумав що власен нічого мені не заважає пошукати щось в світі за межами теплого океану МС Smile

Особливо активно я не шукав, десь із пів-року в пасивному режимі приймав запрошення від рекрутерів на LinkedIn та Monster, ходив на деякі співбесіди (так, про це теж напишу) і власне просто дивися на те що можна знайти. І ось нарешті знайлася компанія яка почала наполегливо зазивати мене до себе і після пройдених інтерв’ю та поїздок в головний офіс я почав думати які ж у мене далі перспективи і де я опинюсь.

Зараз, коли Windows, XBox та Windows Phone очолив колишній керівник Windows Phone очевидно що три огранізації будуть зливатися в одну і буде суттєва зміна структури компанії. Та ще і з новим керівником який працював у групах де девелопери та тестери не існують як класи, а натомість є інженери які відповідають за усе починаючи з дизайну і через імплементацію, тестування, деплоймент та підтримку достваляють фічі користувачам. Вже приблизно відомо чим буде займатися моя команда працюючи над наступним релізом і мені вкрай нецікаво залишатися в ній.

Крім того шість років це не такий вже і короткий термін, хоча і пролетіли вони як один день. І подумалося мені що непогано було б спробувати себе у іншій (і меншій набагато компанії).

Ще одна особливість МС як от щойно згадав в тому що люди мають “розблоковувати себе”. Це так завуальовано кажуть “піди туди не знаю куди і принеси те не знаю що”. Тобто є якась загальна задача, ну скажімо збирати статистику про кількість невдалих апедейтів телефону. Це означає що треба буде знайти команди які можуть надати дані про результат апдейту зі свого коду, людей які відповідають за збирання та надсилання репортів, зробити так щоб з’явилася БД в яку такі репорти потраплять, узгодити з власниками коду в які вносиш зміни усе що треба і так далі… В усьому цьому безпосередньо програмування добре якщо 10%, все інше це мітінги, узгодження, документація, зустрічі і нескінченні потоки е-мейлів.

Ви просто уявити собі не можете наскільки МС е-мейло-орієнтована компанія. Довжелезні треди, обговорення, мітинги, специфікації, … Сотні, а то і тисячі мейлів на день цілком буденна річ.

Ну от хочеться більше чисто програмерської роботи, хочеться писати та рефакторити код, дебажити та вишукувати помилки, обговорювати дизайн.

Керівництво компанії, топ-менеджери – надзвичайно розумні, навіть геніальні люди. Рядові виконавці теж переважно дуже розумні, дуже велика кількість технічно сильних та і просто цікавих людей з усього світі. Менеджмент середнього рівня… Теж розумні, питань нема, але згадана вище система рев’ю призводить до дивних деформацій коли тім-ліди та їх керівники більше турбуються про те щоб про їх досягнення усі навколо знали і займаються тим що працюють на своє хороше рев’ю. В більшості випадків це звісно співпадає з цілями усього проекту, але дуже часто цінності менеджерів середнього рівня це щось що існує лише всередині компанії і є річчю в собі.

Коротше в один момент я просто зрозумів що просто прийшов час.

Після усього вищесказаного я тим не менш скажу що МС прекрасна компанія і я щиро порекомендую в ній працювати. Подібних масштабів в усьому світі ви більше ніде не знайдете – це і кількість працівників, це і технології та продукти де є все від ОС і заліза до інтернет-сервісів та комп’ютерних іграшок, це і неймовірно розумні та досвічені люди у яких можна вчитися нескінченно, це і усі культури світу і ще багато усього. І чесно кажучи я цілком можу повернутися назад через кілька років коли забуду про весь негатив і почну сумувати про старі часи у теплому дбайливому океані Microsoft.

Paul Melko. Universe / Пол Мелкоу. Всесвіт (2009-…)

 

Поки що про всю серію нічого сказати не можу оскільки прочитав лише одну книгу.

 

The Walls of Universe / Стіни всесвіту (2009)

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

У всесвіт головного героя входить його двійник з паралельного всесвіту і обманом змушує нашого героя почати подорожувати іншими всесвітами в той час як сам займає його місце.

Походження технологій подорожі та людей які намагаються обжитися в інших всесвітах не розкривається і взагалі пригодницька складова явно сильніша за наукову.

https://www.goodreads.com/book/show/4367026-the-walls-of-the-universe?ac=1

Isaac Asimov, Robert Siverberg. Nightfall / Ісак Азімов, Роберт Сілверберг. Пришестя ночі (1941)

 

Азімов (за допомогою Сілверберга) повторно використав сюжет одного зі своїх оповідань для написання цього роману. Основна ідея полягає у циклічному саморуйнуванні і відновленню цивілізації. Для цього довелося вигадати умови при яких все людство сходить з глузду на кілька днів і все навколо руйнує.

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

https://www.goodreads.com/book/show/99245.Nightfall

Наша техніка плавання: ми працюємо над цим

У нашому спортклубі є така послуга як зйомки відео плавання з аналізом недоліків у техніці.

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

Після того як відео відзнято тренер переглядає з тобою відео і показує де що робиш неправильно, пояснює як треба правильно і які вправи треба робити щоб завчити і автоматизувати елементи правильної техніки.

Ну що ж, поглянемо на мене спочатку:
[vimeo 85768620 w=640 h=360]
 

Кілька зауважень і на що треба дивитися:

  • На перевороти увагу ми не звертаємо. Я знаю що роблю їх неправильно і повільно, але в басейні змагатися у нас планів нема, а на відкритій воді це вміння не потрібне. Отже і не витрачаю час на це.
  • Ногами ми обоє працюємо розслаблено – на тріатлоні ноги ще знадобляться для вело- та бігового етапу, а отже більше працюємо спиною і плечима.
  • 0:10-0:45 – найбільші помилки: 1) рука витягнута вперед (та що у воді) занадто рано починає гребсти, треба щоб гребок починався коли друга рука тільки входить у воду, 2) руку закидаю сильно далеко вперед, треба ближче до голови у воду входити
  • 0:46-1:20 – руки треба вкидати у воду трохи далі від центру, зараз долоні майже перетинають лінію яку можна провести з маківки вперед. А треба щоб руки йшли по лініям від плечей.
  • 1:30-2:00 – як для не пловця нічого страшного, але в ідеалі під час гребка долоня завжди має бути нижче ліктя, а лікоть нижче плеча. Таким чином грести треба не руками, а плечами і спиною (повороти з боку в бік якраз і допомагають задіяти спину).
  • 2:10-2:28 – ті ж проблеми з руками – занадто близько до цетральної лінії входять у воду.

Тепер поглянемо на Олену:
[vimeo 85768621 w=640 h=360]
 

У неї проблеми практично ті ж самі що і у мене, лише сильніше помітні:

  • 0:15-0:59 – руки занадто часто гребуть, нема моменту польоту у воді з витягнутою уперед рукою.
  • 1:02-1:45 – руки не лише близько входять у воду до центральної лінії, але і перитинають її. Тому Олені доводиться під водою вже повертати руку назад у положення щоб вона рівно йшла вперед з плеча. І ще тут Олені порадили сильніші крутити стегнами, це б мало допомогти робити сильніші гребки.
  • 1:50-2:35 – лікоть нижче за долоню практично весь час що не дає робити гребок ефективним і примушує працювати м’язи рук з яких користі все одно ніякої.
  • 2:44-3:03 – знову зверніть увагу як вона закидає руки далеко за центральну лінію і потім повертає їх у нормальне положення під водою.

Стосовно ж вправ для вдосконалення техніки мушу сказати що це доволі виснажливе заняття – треба кожну мить буди сконцентрованому на тому що ти все робиш вірно і що один правильний рух не примушує тебе усе інше робити неправильно.

А що нам скажуть і як прокоментують відео люди з досвідом плавання? Я знаю що серед моїх читачів такі є Smile