«Будь-який поважаючий себе айтішник займається технологіями і у вільний час» — 10 питань програмісту, випуск 6

Завершальний випуск «10 запитань» з Берліна. На цей раз розмовляємо з Артемом Нікітіним, який живе в Берліні, але як і раніше регулярно літає в Москву. До переїзду займався тестуванням бекенду в Qiwi, а в серпні 2015-го погодився на запрошення HERE Technologies. Перша розмова з новим роботодавцем відбувся під час подорожі в Гонконг — в готелі Mira. У тому самому, де Сноуден давав знамените інтерв’ю Guardian, яке змінило все його життя. Збіг? Артем не впевнений і хоче як-небудь перевірити ще раз.

Нова посада в Here називається System Engineer, що в Росії в залежності від команди може називатися DevOps, сисадміном або SRE. В Here Артем відповідає за CI і всі навколо цього.

1. Розкажи про фиче, яку ти реалізував і якої пишаєшся.

В минулому році я почав пиляти go-імплементацію однієї з бібліотек, яку ми заоупенсорсили недавно — Flatdata. На сьогоднішній день — це, напевно, моя найбільша ачивка як інженера. Цю бібліотеку використовують в одному з наших ключових сервісів, однак імплементацію я робив у вільний від роботи час, просто for fun.

2. А тепер — про найлютіший факап.

Самий безглуздий випадок був кілька тижнів тому. На CI на Jenkins потрібно було налаштувати декілька нових джобов. У джобе було кілька кроків: спочатку скачують файли, створювалися якісь директорії, потім — git-клон через команду в пайплайне. Але на наступних етапах виникала проблема — файлів, які створювалися на етапі сетап, не було! Я став копати, з’ясовувати, чи потрібні встановлені права і все в такому дусі. Витратив на це один або два дня. А виявилося що дженкинсовский плагін для гіта під час створення клону за замовчуванням видаляє вміст директорії, куди ти робиш клон. Відповідно, весь той сетап, який я робив на першому етапі, був вилучений. А рішення проблеми полягало в тому, щоб просто поміняти кроки місцями.

3. Опиши свій робочий простір: від крісла і монітора до середовищ програмування і улюблених утиліт.

Зараз в Here впроваджується концепція Smart Office. За людиною немає закріпленого столу — приходь і бери будь-який. Є кілька нюансів у такому підході. Деякі люди за інерцією займають одне і те ж місце. А є хлопці, яким за станом здоров’я, наприклад, не підходить будь-який стіл і стілець. Але в цілому система начебто працює.

Особисто я в плані робочого місця дуже аскетичний. Із заліза у мене тільки ноутбук, і мені не подобається використовувати додатковий монітор. Мене він швидше відволікає, ніж допомагає. Тому у мене просто MacBook Pro 15″ — в топової конфігурації 2015 року, коли його купували. А решта — стіл, стілець…

Читайте також  Як змінити папку Завантаження в Windows 10

Наша команда створює рішення для мобільних пристроїв, тому у нас Xcode для iOS і Android Studio для Android. GoLand — для гошечки. Загалом, стандартні утиліти.

4. За яким принципом ти вибираєш роботу? Стек, продукт, побутові умови, гроші?

Для мене головний критерій — виклик, складні технологічні завдання. Причому вони можуть бути і цілком буденні, але кожного разу на новому місці їх рішення буде іншим, зі своїми нюансами. Якщо взяти побудова повноцінного CI/CD-пайплайна, то це буде по суті унікальна завдання, тому що інший продукт і команда інша. У Келсі Хайтауэра є на цю тему чудова фраза: «CI — це опис корпоративної культури bash-скриптами».

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

5. Що в технологіях і мовами, які ти використовуєш, ти б хотів виправити?

В Go є всім відома проблема з управлінням залежностями. Вона тільки зараз починає вирішуватися. У «Гугла» такої проблеми немає, тому вони її ніколи і не вирішували. І тільки коли ком’юніті продзищали їм всі вуха, вони стали думати. Начебто потихеньку рухається, і є надія, що з часом Go стане більш зрілим і наблизиться в цьому плані до Java, наприклад.

В принципі IDE, які роблять в JetBrains — одні з кращих. Але, буває, в чиїхось інших продуктах зустрічаєш фішечки, які прям подобаються. Тому в ідеалі хотілося б мати якусь таку ідеальну убер-IDE. Але це з розряду фантастики.

6. Де краще переймати чужий досвід — у вузі, на конфах, на хабре? Ще десь?

Дивлячись для яких цілей тобі потрібен досвід. Учити з книг особливості останньої React.js не варто. Там все старіє з такою швидкістю, що книжки не допоможуть. Але базові речі — цілком. «Комп’ютерні мережі» Танненбаума, щось про пристрої операційних систем, книги про базових концепціях в програмуванні — все це актуально і зараз.

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

Читайте також  Нові книги по дитячому програмуванні Scratch

Мені подобаються курси на Coursera, вони класні і набагато корисніше в якихось аспектах, ніж класичне вища освіта, яку я отримав.

Конференції — це круто. Я навіть виступив на трьох в цьому році: Selenium Camp в Києві, Heisenbug в Пітері і DevDays у Вільнюсі. Вони всі були в першій половині року, і я так сильно втомився, що взяв невелику перерву. Але зате я отримав досвід у виступах, поспілкувався з людьми — як зі спікерами, так і зі слухачами. Спілкування в кулуарах — це, мабуть, найцінніша частина будь-конференції.

7. Будь у тебе необмежені ресурси (час, гроші, потужності, люди), яким проектом ти б зайнявся?

Так, я б все одно залишився в IT і продовжив би цим займатися, тому що мені це цікаво. У мене немає якихось глобальних проектів, типу «ощасливити все людство».

Якщо подивитися за межі IT, то саме реальне — прикупити собі квартирку або будинок в Гонконзі і проводити там більше часу, ніж 1-2 рази на рік, як зараз виходить.

Останнім часом витає ідея привезти в Берлін ресторани Din Tai Fung і Tim Ho Wan. Ключовий момент — передати смак максимально близько до оригіналу. У Берліні все димсамы у кращому разі так собі, в Москві, до речі, теж. «Китайські новини», яка по суті копія Din Tai Fung, в плані дім самовила дуже посередньо. Огірки у них вогонь — практично як у гонконгському Din Tai Fung, тільки не такі гострі. А все інше середньо. Насправді, в плані людей я навіть знаю, хто б міг мені допомогти в цьому. У мене є знайома, її звуть Фібі, вона родом з Тайваню — батьківщини Din Tai Fung — і при цьому кухар, навчалася у знаменитих французьких кухарів.

8. Як ти відпочиваєш? Що робиш крім роботи?

Будь-який поважаючий себе айтішник займається технологіями і у вільний час — хтось більше, хтось менше, але мені, здається, все. Але якщо вийти за межі IT, то я ходжу на тренування по крав-мага і кікбоксингу — ніяких поясів, just for fun. Єдиноборства для мене вигідно відрізняються від просто тренувань в залі, які мене не цікавлять зовсім.

В іншому — стандартно: люблю подивитися серіали, почитати книжку, пограти в PlayStation. Хоча все це займає у мене зараз менше часу, ніж раніше. Тим не менш, не шкодую про витрачений час. З останнього можу порадити ізраїльський серіал про те, як спецслужби борються з терористами — «Фауда» — виходить на Netflix.

Читайте також  Як вимкнути режим безпечного перегляду на YouTube

9. Розкажи про 3 улюблені книги — навчальну, науково-популярну і художню

.
З навчальної літератури має сенс почитати базові книжки. Того ж Танненбаума — про устрій операційних систем і мереж. Хоча з Танненбаумом потрібна сила волі. Я зазвичай засинаю, коли його читаю.

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

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

З дитинства запам’яталися «Граф Монте-Крісто», «Хрещений батько» (причому книга сильно краще, ніж фільм). А зараз в Kindle у мене є класна книжка «Проект «Фенікс» — книга про DevOps, яка описує існуючі в IT проблеми. Я настільки захопився, що прочитав її за ніч.

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

10. Якщо прямо в тебе на очах у ІІ прокинеться свідомість, що ти йому скажеш?

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

Питання від попереднього гостя:

Запропонуй стратегію прокачування після перших п’яти років роботи програмістом. Що далі?У мене вже більше п’яти років досвіду і мені здається, що немає обмежень з серії «2, 5 або 10 років». Якщо ти хочеш бути інженером і залишатися актуальним, то навчання має бути постійним. Потрібно пробувати нові мови, інструменти, фреймворки, підходи. Інакше ти залишився за бортом. Але це не обов’язково погано — той же COBOL досі актуальне, і люди, які розбираються в ньому заробляють багато грошей.

Бонус: постав запитання іншому разрабу

Чому ти вирішив піти в ІТ?

Степан Лютий

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

You may also like...

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *