Іван Шкодкін

Мене звуть Іван Шкодкін. Я працюю живу програмістом і зараз у мене утворилася пауза. І як годиться, під час таких пауз на думку спадають різні думки.

Ось наприклад: знаючи, якою мовою програмування ви пишете - я можу сказати: звідки ви прийшли, як довго ви йшли, як сильно бісів і радував вас вашу мову, куди ви прийдете. Я чудово пам'ятаю свою першу мову програмування у 4 роки: це був молоток. Я пам'ятаю, як молотком перетворив циліндр висотоміру бойового літака на кубик (дід звідкись приніс з військового аеродорому неподалік).

1. Початок

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

Настав час йти до школи. Мені пощастило: у нашому містечку була чудова школа, за якої був комп'ютерний гурток. Там стояли БК та «Корвети», була локальна мережа та принтер «Роботрон-100». Але, як завжди, школа була приблатнена, і потрапити туди було непросто. Якось я туди потрапив. Прям, починаючи з 1 вересня, я сів за БК. Там я познайомився зі «Школяркою». У житті я зустрічав різні мови, але це я не забуду ніколи. Я вчив «Школярку» блимати екраном, а вона мене циклів. Я навчив «Школярку» говорити «Привіт, мир!», а вона мене консольним введенням. Але були й неприємні діти. Їхні батьки бували за кордоном і їм купили Еппл Ліза 2. Вони ставилися до всіх гордовито, дивилися на інших зверху вниз. І одного разу хтось із класу написав геніальну програму, яка у відповідь на введення імені виводила фразу: «Пиши код, Ваня! Пиши!» і мене як пронизало блискавкою. З того моменту, щоб я не робив, я писав код.

Я писав код у голові, коли йшов до школи і повертався з неї. Я писав код, коли йшов у магазин, виносив сміття чи пилососив килим. Я робив це весь час. Навіть традиційні бабусі біля під'їзду, коли я проходив повз них — мудро помічали: А цей хлопець вміє писати код!

Пролетіла школа швидко, на одному диханні, і ось у випускному класі комусь із наших мажорів батьки привезли IBM XT. Швидкість роботи, покращені графічні характеристики. І звукова плата Adlib на шині ISA… Я зрозумів, що машина захопить світ. Прийшовши до батьків я твердо заявив, що працюватиму влітку, робитиму що завгодно, але мені потрібна ця машина. Батьки злякалися моєї збудженості, але справедливо вирішили, що мені треба дати шанс і пообіцяли додати частину грошей, навіть з урахуванням того, що на дворі стояли 90-ті.

Пройшли випускні іспити, і оскільки батьки були людьми більш ніж стандартними, особливо вибору я не мав: треба було йти в універ. Вступні іспити я склав, не відвідуючи курсів підготовки, і якось одразу прибився до кафедри інформатики. Там я відкрив собі Modula-2. Почав брати участь у збірній інституту із програмування, де показував непогані результати. У фіналі змагань із міністерства наша команда перемогла. І навіть декан ридаючи від щастя, який весь час обурювався, що в Модулі немає монад, замикань і лямбд, звертаючись до тренера команди у сльозах мовив: «Ну як швидко бігає цей сучий син!»

Універ пролетів, як один день. І вже за півроку до закінчення на кафедру почали прибувати один за одним торговці чорним деревом. Вони все виглядали, винюхували, обирали студентів стельових. І ось, у день отримання диплома один такий респектабельний чоловік підходить до мене, вручає візитівку та запитує:
— Сину, ти вже думав про своє майбутнє?

На візитівці значилося "Галера Продакшн лімітед". Задоволений бос у пристойному піджаку, за лівим плечем будинок, за правим шикарним авто, і просто номер телефону. Я подумав, чому б і не пуркуа?

2. Галера

Як тільки я переступив поріг галери на мене відразу ж накинувся продакт менеджер:
-Ти Що тут стоїш, нуб? Я тобі бабки плачу! А ну пішов шкодити швидше!

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

Ми мали великий ОпенСпейс. Праворуч від мене сидів смаглявий хлопець із такої самої провінції. Він вітав мене перший:
— Привіт, мене звуть Саня Банін. І всі мене звуть Баня.
— Привіт, мене звуть Іван Шкодкін, і всі мене звуть Іван Шкодкін, — відповів я.
Втім, ми були схожі на двох ідіотів, бо у кожного на грудях висів бейдж. Галерна корпоративна етика, будь вона не ладна.

День розпочинався з мітингу. Ми заучували промови, співали тупі пісні, повторювали всяку погань раз на раз і на всі запитання відповідали: «Так, зрозуміло, зроблю». Якоїсь миті я подумав, що насправді це не таке вже й погане місце: печінки, чай, спортивні заходи. Просто потрібно робити вчасно та в час, все що від тебе вимагають. Якось наш менеджер дав завдання оптимізувати час складання проекту. Я якось не думав над тим, як це зробити швидко. Просто кілька скриптів, розпаралелювання, і машину Бані підключив. Проект зібрався в рази швидше, про що відразу доповів старшому.
- Ти що ідіот? Ти думаєш, ми тут самі не здогадалися, як це швидше зробити? Та нас усіх звільнять! Ну, негайно розібрав кластер і повернувся до колишньої схеми!
Мабуть, я дуже злякав того менеджера, бо мене одразу перевели в інший відділ. Увечері попиваючи пивко яблучно-виноградний сік у кафешці, я сказав про це своїм колегам.
— Мене переводять із тестувальників у продакшен. Це зовсім інша країна. — У залі утворилася труна тиша… Хтось із зали сказав:
— Послухай моєї доброї поради: коли викотите деплою в продакшен — не геройствуй. Просто кажи, що ти розробив, а не фахівець з техпідтримки.
Вечір закінчився у тиші.

3. Продакт

Із самого першого дня у продакт-службі було спекотно. Саме готувався черговий великий деплой. Ми з Банею прибули до нового начальника, і він нас з ходу почав вивчати життя:
-Значить так, хлопчики. У мене у відділі лише 2 правила. Перше. За будь-якої можливості запускайте тести. Модульні, інтеграційні, які завгодно!
Тут уривається його помічниця з криками, що всі сервери перевантажені, і треба підрубувати ще. Шеф віддав команди закупити серверів у хмарах Амазона, та не скупитися.
Дивлячись на нього, я напівголосно зауважив Бані: «Схоже, шеф у нас тямущий».
Шеф відразу відреагував і повернувся до нас:
- Так, у мене у відділі 2 правила. Перше – тести. І друге — не надумайте зробити якусь дурість, типу самостійно запиляти фічу або провести агресивну оптимізацію. Я вас обох власноруч задушу.

Чим мені подобалося в продакшені, то це завжди було чим зайнятися. Шефу постійно здавалося, що помічені якісь баги у софті. Він постійно говорив:
- Усім стоп. Дивіться логі!
Ми так і робили. У нас у відділі працювали найкращі хлопці та дівчата країни. Лазня з Арзамаса, Коля з Черняхівська, Лєра з… Я не пам'ятаю, звідки була Лєра.

І ось настав день релізу.
Раптом почали тріщати всі телефони сапорта. Гнівні коментарі на форумі підтримки рвалися із силою гранат. Авіабомбами пройшлися огляди у профільній пресі. Це було пекло.

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

Новий рік

Кожного майбутнього нового року на галері роздавали премії. І карали. Мене, як не дивно, заохотили досить пристойною премією. Був великий банкетний зал, найголовніший викликав усіх за списком і вручав конвертики. Підійшла моя черга, я потис руку Самому і він мені запитав:
— Кажуть, твій баг чарівним чином урятував усю хмару від тотального падіння? Хотів би я подивитись на твій код.
Млинець. Та хто ж йому це розповів? Відкриваю планшет, показую це місце. На що головнюк реагує розширенням очей і зауважує: «Ну синку… Ну ти й шлюбороб…». Кажуть, цей глюк зберіг фірмі не один десяток мільйонів рублів, принаймні фірма збільшила операційний прибуток.
На виході мене зустрічає наш шеф, весь заріс, впитий і неохайний.
- Тобі дали премію? Тобі? Косячнику? Обороннику? Стіва МакКонелла, який не читав «Довершений код»?
- Так, дали.
— Ну, це ж просто чудово!
І закосілий шеф почав завалюватися на бік. Він став володарем золотого тижня.

Що робити? Взяв його за плече і пішли до кафе для програмістів неподалік. Там уже набилася будь-яка публіка, що верещать і кричить, готова зустріти новий рік через пару годин. Нам двом чогось було не весело. Перенесений стрес, напружена робота позначалися на кожній частині тіла. Ми сиділи за столиком з симпатичними панночками і потихеньку зав'язалася розмова.

дівчина:
- Хлопчики, а на чому ви програмуєте?
- Я люблю на ФріПаскалі, - шеф
- А я на Обероні, - сказав я.

Друга дівчина глянула на мене, як на ідіота.
- Ти адекватний? Там навіть дженериків немає? Там рядки як інтегрований тип відсутні?! Та що з тобою?

Шеф підвівся, і звернувся до мене: «Ходімо подихаємо повітрям. Щось душно тут».
До кафе вирішили вже не повертатися. Зверху ліниво та рідко падав новорічний сніг, вдалині стріляв салют і лунали радісні крики.

— Ну, навіщо ти їй сказав, що програмуєш на Обероні?
— Ви самі, Олександре Миколайовичу, перший почали. Про FreePascal на весь зал сказали...
Шеф продовжував філософствувати але вільну тему:
- Ні, ну ти чув? Еджайл те, Еджайл Се, Еджайл зробить вам реліз! Ти чув?! РЕЛІЗ! Та ні біса ейджайл не допоможе. Так поцілуйте ж мене в мою стару волохату дупу!

Загалом, не подобалося йому, коли FreePascal називали «паскакаль», як і мені, коли про Оберон говорили, що його поїзд пішов.

4. Своя фірма

Я вирішив у якийсь момент, що варто організувати свою фірму з якоюсь нехитрою назвою.

Я намагався вигравати тендери, брати участь у конкурсах, але якось не перло. Виявляється бути керівником — зовсім не просто. І я вже почав думати про те, що галера — це було тепле місце.

І тут я дізнаюся, що колишній шеф вийшов на корпоративну пенсію. Я йому розповів, показав про свою витівку, він скривився і сказав:
- Ландо. Тільки не сподівайся, що я тебе називатиму шеф!
- Так, шеф! - відповів я.
І справа пішла на лад. Він знав дуже багато того, що не знав я. Не сказати, щоб ми заробили мільйон, але дещо почали заробляти. Але все одно все закінчилося погано. Через проклятого Обами курс рубля просів, ціни зросли, настала криза і підняття з колін завершилося. Діяльність фірми довелося призупинити, бос пішов на іншу галеру. Жаль, адже які були плани…

5. Завіса

Якось застав свою дочку за переглядом Ютуб-каналу присвяченому Компонетному Паскалю. Ведучий доступно пояснював як працювати з записами, що розширюються, перевизначенням методів і фіналізацією процедур. У свої 14 років вона спокійно сприймає речі, до яких сам зростав лише в інституті. Її молоток набагато майстерніший, потужніший, легкий. Її покоління забиватиме цвяхи куди вправніше, ніж моє. Я думав про те, що ще через 20 років техносрачі на тему горутини проти потоків в Ерланзі здаватимуться смішними та наївними. А може, й не будуть.

Ех… Піду включу свій ZX-Spectrum!

Плюшка для настрою: music.yandex.ru/album/3175/track/10216

PS Величезна подяка Роберту Земекісу та його команді за натхнення.

Джерело: habr.com

Додати коментар або відгук