30 речей, які програмісту варто встигнути до 30 років
Наука тільки недавно дізналася, що життя після тридцяти не закінчується. Лишилося тільки питання, чи можна це називати життям. Враховуючи, що пенсійний фонд ніяк не хоче рахувати роки проведені у галері, як один до трьох, доводиться іще якийсь час продовжувати працювати ходити у офіс.
Ось вам короткий список того, що треба встигнути, щоб ваше тридцятиріччя не перетворилося заодно у різкий фініш вашої кар’єри.
Illustration by Sam Chivers
Cтати професіоналом
На вашу позицію голодними очима дивиться дюжина двадцятирічних. З часом їх буде більше. Якщо раніше вашу некомпетентність можна було замінити титулом «молодий і перспективний», то після тридцяти такий фінт уже не прокатить.
Про критерії професіоналізму досі сперечаються, але як мінімум ви маєте виконувати ваші завдання швидко, правильно і з мінімальним технічним боргом. Все інше — деталі, які ви, як професіонал, маєте знати і самі.
Вивчити англійську
Себто, нормально вивчити англійську. Не на рівні «СтекОверфлоу зі словником», а як мінімум «„Гра Престолів“ без субтитрів» і «можливість вести довгі дискусії на загальні теми незважаючи на кількість алкоголю всередині». І ще бажано хоча би спробувати позбавитися шкільного акценту і перестати звучати, як російська мафія в американських фільмах. Ви собі не уявляєте, скільки зусиль витрачають іноземці, щоб не розреготатися, коли ви розповідаєте про свій останній спринт.
Змінити кілька робочих місць
Яким би ідеальним не здавалося ваше теперішнє місце роботи, ви ніколи не будете в цьому певні, якщо не спробуєте щось інше.
Виходити із зони комфорту важко, а відчувати себе супер-мега-архітектором приємно, але ця лафа може рано чи пізно закінчитися, і, навіть якщо ваша компанія не розвалиться і вас не викинуть на вулицю, завжди може з’явитися молодий вискочка, який по головах пройде вище вас.
Знаходячись усередині системи, важко бачити її переваги і недоліки, тож коли компанія входить у піке, витягувати її звідти кличуть когось ззовні і з незамиленим поглядом. Голови архітекторів тоді летять одними з перших.
Попрацювати у великій компанії
Бажано працівників так на тисячу. З корпоративними правилами на кожен чих і довгими, кількагодинними мітингами, на яких планується розпорядок мітингів на наступний тиждень. Зрозуміти, як це, коли ваш коміт потрапляє на продакшн мінімум через місяць, а для кожної зміни структури бази доводиться отримувати дозволи у десятьох людей з різних департаментів.
Зненавидіти усі бюрократичні заморочки, але потім, через кілька років, зловити себе на впровадженні чогось подібного. Адже порядок понад усе.
Попрацювати в стартапі
Move fast break things! Поки ти будеш фіксити цей баг, конкуренти вже запустяться і заберуть усіх клієнтів. Я надіюся, ти ще не почав працювати над фічею? Ми все поміняли, ось новий набір завдань, треба встигнути. Точніше, звісно, два набори, по одному на кофаундера. Звісно, вони не погоджували їх між собою, на це у них нема часу, конкуренти на хвості!
Працювати у стартапі кілька років — шкідливо для психічного здоров’я і стилю програмування, але не переживайте: стартапи стільки часу і не живуть.
Попрацювати за кордоном
Робота програміста — одна з найкращих для релокації. Код усюди однаковий, а ІТ-компанії зазвичай інтернаціональні. Для початку не треба ні вчити мову, ні розбиратися в особливостях місцевого ринку. Яка різниця, в якому місті твій ноутбук, якщо на ньому той самий IDE?
Що робитимете далі — несуттєво. Можна забути своє рідне місто, як страшний сон, можна повернутися і заснувати курси програмування. Головне, що ви отримаєте можливість побачити, як живуть інші люди, порівняти їхню культуру з вашою домашньою і краще зрозуміти світ навколо.
До того ж, релокація добряче допоможе вам у професійному плані: в Україну технології часто приходять із запізненням, тому можна відчути себе мандрівником у часі і передбачити, що буде модним у галерах через три-п’ять років. І коли настане час — можна мати це все в резюме.
Зрозуміти ринок
ІТ-компанії з’являються і зникають як гриби після дощу. Рекрутери пишуть вам по дюжині на тиждень. Але як тільки ваша ніша стане вужчою, ви побачите, що вартісних пропозицій не так вже й багато.
Визначтеся, чого ви хочете від компанії: стабільності чи цікавості, можливості працювати з дому чи більше плюшок у офісі. Дізнайтеся, яка зарплата зараз актуальна для вашого рівня і що треба зробити, щоб піднятися на рівень вище. Розберіться, чому деякі компанії платять набагато вище за медіану і чому до них усе одно ніхто не хоче йти.
Після тридцяти міняти компанії чисто заради фану вже буде не так цікаво, тож бажано робити свій вибір осмислено, а не на основі набору баззвордів від симпатичної аш-ерки.
Злітати на інтерв’ю до лідерів ринку
Гугл, Фейсбук, Амазон, Убер — компанії, які у всіх на слуху, також шукають програмістів, і всупереч поширеним уявленням потрапити туди не так вже й важко. А що точно не важко — це отримати запрошення на онсайт, денний набір інтерв’ю, який для зручності проводять у девелоперських офісах компаній.
Плюси очевидні — подивитися, як працюють колеги, отримати досвід проходження інтерв’ю, прокататися на халяву в іншу країну. Навіть якщо вам відмовлять, ніхто не заважає спробувати ще раз через рік-два. Факт попередньої спроби не буде недоліком, навпаки, покаже вашу цілеспрямованість.
Ну і нарешті: вас можуть взяти. А рядочок в резюме зі словом «Гугл» ще нікому в цьому житті не зашкодив.
Навчитися проходити інтерв’ю
Вже давно не секрет — вміння проходити інтерв’ю і вміння працювати — два різних набори навичок. Гонка озброєнь іде з обох боків: спеціалісти з найму шукають все нові способи вивести кандидатів на чисту воду, а самі кандидати кожного разу обходять всі перепони і завчають відповіді на задачки про каналізаційні люки.
Можна кивати на недосконалість системи, але якщо юнак з ріденькими вусиками, який мліє від страху під час тесту на дошці, — це мило, то те саме у виконанні бородатого дядька вже виглядає жалюгідно.
Найкращий спосіб стати кращим на співбесідах — це пройти кілька десятків із них, але є і простіші способи. Від класичної книжки «Cracking the Coding Interview» та сайту InterviewBit до сервісів на кшталт interviewing.io, де з вами проведуть тестову розмову і розкажуть про зроблені помилки.
І вивчіть уже нарешті, чим абстрактний клас відрізняється від інтерфейсу. Про це вас запитають на дев’яти інтерв’ю із десяти.
Опинитися по іншу сторону барикад
Провести інтерв’ю самому. Замовити сайт у веб-студії. Спробувати себе в ролі продакт-оунера. Побачити програмістів не як друзів і колег, а як ресурс, який вимагає значних витрат і повинен натомість приносити прибуток. Погляд збоку завжди корисний, а нове знання потім можна використати для самовдосконалення.
Illustration by Sam Chivers
Заснувати власну компанію
Не обов’язково піднімати чотири раунди інвестицій і виходити на IPO, почати можна з невеличких замовлень для знайомих. Найняти кількох помічників, розподілити між ними обов’язки і контролювати зроблене. Критикувати начальство легко, але коли сам опиняєшся один на один із розлюченим клієнтом, починаєш розуміти, звідки беруться серцеві напади в сорок.
Якщо сподобається і проект почне приносити гроші — можна звільнитися і певний час приділити власній справі. Головне, щоб була подушка безпеки: працювати по дванадцять годин на добу на голодний шлунок не дуже просто. Якщо і тут все буде ок — можна починати подаватися на різного роду інкубатори або просто рости, наймати офіс, купувати туди настільний футбол і приставляти до свого імені гордий титул СЕО.
Якщо не сподобається, можна нарешті закрити гештальт і не прокидатися потім посеред ночі від усвідомлення нереалізованих мрій.
Спробувати різні стеки
Кожного разу, коли на форумах з’являються топіки в стилі «Я працюю на ХХХ уже три роки, хочу щось поміняти, порадьте», у мене виникає тільки одне питання: а що, самому спробувати зась?
Базові оператори кожної мови однакові. Туторіал по фреймворку проходиться за кілька годин. Невеличкий проект піднімається за кілька днів. Якщо знаєш хоча б дві мови — третя дається вже набагато простіше. Якщо працював із Симфоні — ні Джанго, ні Дропвізард не складуть для тебе ніяких проблем.
До того ж, рано чи пізно основний стек перетвориться на груду розвалин. І краще, щоб на той момент ви уже спокійно орієнтувалися в новому і перспективному нащадку, а не бігали з постійними питаннями до джуніора за сусіднім столом.
Скуштувати екзотику
Окамл, кложура, хаскель. Щось, що ніколи не стане трендом, але й ніколи не втратить юрби фанатів. Найважливіший ресурс тут — власний час. Якщо не розібратися в монадах до тридцяти, потім шансу вже може і не бути. А підходи, використані в екзотичному стеку, в малих дозах часом стають новим трендом. На Скалу он подивіться.
Написати щось своє
Молодість — це час для експериментів. Якщо вам не подобається жоден із інструментів, з якими доводиться працювати, напишіть свій власний! Можливо, результат буде не дуже якісним. Та що там, гарантовано результат буде паршивим, але якщо ви дійдете достатньо далеко, то встигнете розібратися, як працюють системи від самого початку до самого кінця.
Ядро операційки, компілятор, ORM перестануть бути для вас чорними скриньками, особливості їхньої роботи потім можна буде використати у високорівневих проектах. Ну, і завжди є невеликий, але значимий шанс, що ваша розробка сподобається комусь іншому і вистрелить. Чому б не спробувати?
Прокачати лідерські якості
Суспільство намагається донести до нас думку, що лідерами неодмінно народжуються. Звісно ж, генетичні передумови для підкорення людських сердець теж є, але загалом управління і менеджмент — це просто набір навичок, які можна тренувати так само, як і будь-які інші скіли.
Прочитайте Карнегі, організуйте кілька подій, хоча б навіть свій день народження. Люди часто слухаються не тоді, коли перед ними альфа-самець, а тоді, коли їм самим приймати рішення ліньки. А особливо ліньки їм брати за нього відповідальність. Ви і самі не зчуєтеся, як вам будуть заглядати до рота і чекати на нові розпорядження.
Сиве волосся звісно додасть вам авторитету, але вивчене замолоду затримається у вашому мозку набагато довше.
Навчитися говорити
Чітко і впевнено дитина починає говорити у віці трьох-чотирьох років. Часом видається, що на цьому етапі для більшості людей прогрес і закінчився. Мова — дуже недосконалий спосіб трансляції наших думок, але поки телепатія лишається міфом, а транслювати думки напряму в мозок ми іще не навчилися, доводиться якось обходитися.
Насправді чітко і ясно доносити свою думку не дуже складно. Є набір доста простих правил: побудова фраз, уникання двозначностей, опускання непотрібних деталей. Хороший спосіб контролювати себе — вмикати диктофон і потім слухати, яку ахінею ти часом несеш.
Навчитися вести переговори
Цей пункт міг би входити у «навчитися говорити», але тут усе трохи складніше. Часом недостатньо чітко означити свою позицію. Варто ще й нав’язати її співрозмовнику. Чи це буде розмова про зарплату, чи планування нового проекту, завжди варто виходити з кімнати з найкращим можливим результатом.
Я не закликаю маніпулювати людьми (хоча це вміння дуже корисне), але деколи просто достатньо не погоджуватися на першу-ліпшу пропозицію і перепитати, чи можна зробити по-іншому. В більшості випадків — можна.
Виступити на конференції
Від розмов сам на сам можна переходити до виступів перед аудиторією. Починати це робити варто якомога раніше, тому що перші спроби, швидше за все, будуть провальними.
Пам’ятаєте сни, коли ви перед класом стоїте в одній білизні? Тут усе ще гірше. Половина аудиторії втикає в телефони, хтось перешіптується, когось уже зморив сон. Але найгірші не вони, а оцей самозакоханий тельбух в першому ряду, який слідкує за кожним словом, щоб потім неодмінно виправити і запитати, хто тебе взагалі допустив до трибуни з такими-то знаннями.
Починаючи з певного віку такі провали можуть навіть погрожувати репутації, тому досвід на початку кар’єри тут надзвичайно важливий.
Навчитися писати текст, а не код
Необов’язково замахуватися на епічне фентезі або збірник афоризмів а-ля «Зла мудрість». Достатньо навчитися грамотно писати коментарі до тасок в Джірі та робочі імейли. Розбивати текст на короткі абзаци і речення, не повторюватися, прибирати зайві деталі, структурувати порядок тез.
Абсолютна більшість читачів проглянуть ваше творіння по діагоналі, затримуючись максимум на перших фразах кожного абзацу. Треба, щоб навіть у цьому випадку в них щось залишилося в голові.
Завести технічний блог
По-перше, регулярне написання текстів англійською на робочі теми дасть вам незамінний досвід написання текстів англійською мовою на робочі теми. По-друге, технічний блог завжди дає додаткові бали при прийомі на роботу.
Все інше, загалом, не так суттєво. Не варто переживати, що інформація там занадто базова чи нікому не знадобиться. Все одно ваш фреймворк випустить наступну версію і всі попередні записи, навіть його творців, стануть неактуальними.
Точно неважливо, що ви можете написати якусь нісенітницю. В кращому разі вам про це скажуть в коментарях, і ви дізнаєтеся про щось нове. В гіршому — ваш текст так ніхто ніколи і не прочитає. Але досвід його написання і понти від його наявності залишаться з вами назавжди.
Прочитати базові книжки
Їх насправді не так багато, список можна знайти під будь-яким обговоренням. Банда чотирьох, чистий код, програміст-прагматик, щось фундаментальне по вашому стеку. Починати вивчення з них — помилка, але структурувати знання в голові вони здатні непогано. Потім можна з чистим серцем радити їх молоднякові.
Illustration by Sam Chivers
Похоліварити на форумах про улюблену систему
Кожного разу, коли мені розповідають про марність мережевих дискусій, я кидаю лінку на цей пост. Чувак питає, що йому використовувати для розробки, Вагрант чи Докер. Першим у відповіді приходить автор Вагранта. Другим — автор Докера.
Якщо ви досягнете чогось значимого, створите щось потрібне людям, вам усе одно доведеться його захищати від випадів конкурентів. А якщо для вас це буде перша спроба дискусії в мережі, звучатимете ви у кращому разі непереконливо. У гіршому — ви тільки виставите себе на посміховисько.
Професіонал одним абзацом може розбити усі аргументи супротивника і викликати захват аудиторії. Але для цього йому знадобилися довгі роки тренування на форумах, імеджбордах і в коментарях до відомих блогів. Тому прямо зараз сходіть на форум і запиляйте тему про те, що PHP кращий за Go або навпаки. Подякуєте потім.
Попрацювати на межі своїх можливостей
Двадцять годин кодження підряд на енергетиках, два повноцінні робочі проекти одночасно,
Дехто старіє занадто швидко. Комфортні умови в офісі зрештою заміняють жагу змінити цей світ, але сумно, коли це трапляється у двадцять п’ять. Поки молодий, поки на шиї не сидять сім’я, діти, кредит на квартиру і лікарі — кидай собі виклик і перевіряй на міцність себе і весь цей світ заодно. Потім буде важко.
Відчути смак шальних грошей
Один знайомий розповідав мені, що почав збирати гроші на університет для своїх дітей. На той момент він ще навіть не був одружений. Не секрет, що програмісти отримують трохи більше за середньостатистичного жителя свого міста, тож чому б цим не скористатися?
Який сервіс у п’ятизірковому готелі? Як набирає швидкість Харлей? Якого кольору море на Мальдівах? Пізніше тринькання грошей видаватиметься вам божевіллям, та і не принесе уже ніколи стільки задоволення. Тепер — саме час.
Попрацювати на халяву
Неважливо, опенсорс чи волонтерський проект для армії, головне зрозуміти, чому ці дивні люди витрачають стільки свого часу і зусиль, якщо їм за це ніхто не платить (спойлер: допомагати людям доста приємно, а досвід часом коштує більше, ніж самі гроші).
Пройти кілька онлайн-курсів
Безкоштовні лекції на будь-яку тему стали проривом у освіті, проте, як показує статистика, користуються ними в основному ті, хто вже отримав освіту традиційну. Про ефективність такого роду навчання поки говорити рано, проте спробувати на своїй шкурі варто — а раптом сподобається?
Попіклуватися про здоров’я
Поняття «хвороби віку» зазвичай викликають в уяві як мінімум сімдесятирічних дідусів і бабусь, проте перші ознаки зношення організму виникають якраз на межі тридцятки. Незапломбовані вчасно зуби, стомлена постійним сидінням спина, трохи надмірної ваги, зіпсований зір. Якщо не взятися за це прямо зараз, до сорока років можна перетворитися в руїну.
Визначити свої сильні та слабкі сторони
Люди-оркестри існують, ними захоплюються, але навряд чи ви — один із них. З часом наша ніша в цьому світі стає все вужчою, і на очі трапляється термін «позиціонування». Справа навіть не у технологіях: комусь краще даються комунікації та управління, хтось обожнює глобальну архітектуру, а хтось замість художньої літератури читає підручники по швидкодії. Зазвичай те, що виходить найкраще, приносить найбільше задоволення, тому профіт тут навіть подвійний.
Існує й інша сторона: деколи трапляються деталі, що псують загальне враження і тягнуть на дно навіть при тому, що все інше — на рівні. В когось жахливий акцент, через який будь-які переговори перетворюються на зіпсований телефон. Хтось переходить на крик при перших ознаках незгоди зі сторони співрозмовника. Хтось постійно ганяє «зраду» і розповсюджує негатив, наглухо відбиваючи бажання навіть починати розмову.
Якщо ви знайдете свої «якорі» достатньо рано — можна спробувати їх побороти. Проте з кожним наступним роком вони все глибше в’їдатимуться в характер. Після певного віку людину практично неможливо поміняти, але до того — можна і треба.
Навчитися відпочивати
Професійне вигорання — не міф. Рано чи пізно в житті кожного спеціаліста буває період, коли хочеться кинути роботу і більше ніколи не знаходитися за екраном монітора. В цей момент дуже важливо, щоб робота була не єдиним проведенням часу в цьому житті.
Що саме вам буде давати енергію — несуттєво. Сім’я, хобі, техно-вечірки чи шаховий клуб, головне, щоб після часу, проведеного там, ви почували себе відновленим, очищеним, готовим до нових звершень.
Запасний план
І наостанок. Нехай професію програміста не так швидко замінять роботи, статися може всіляке. Дуже важливо знати, що коли настане час Х і ви опинитеся на вулиці, знайдеться інша сфера діяльності, в якій ви зможете себе реалізувати. В’язання гачком, скачки на іподромі чи написання статей-списків на ДОУ — не має значення. Двадцять перше століття — занадто нестабільний час для того, щоб класти усі яйця в одну корзину.
І якщо ви скажете, що, мовляв, ніхто не знає, що там буде потрібно навіть у найближчому майбутньому, я відповім просто: тримайте свій мозок у тонусі, і тоді у вас будуть всі шанси провести свої наступні тридцять років не гірше, ніж попередні.
Тоді і поговоримо.