Стрімкий розвиток LLMів та ремоуту значно ускладнили оцінку кандидатів на тепле місце де заробляєш легкі гроші.
Якщо є можливість шахраювати, щоб отримати роботу — всі будуть це робити. Так працює ринок.
Тому гадаю що час повернутися у середину нульових — співбесіди в офісі та програмування на дошці або папірці, без комп'ютерів.
Саме так я і проводив значну частину співбесід, коли ще не так були популярні дзвінки...
Є такий термін в англійській який я не знаю як нормально перекласти
(«суб'єктність» — шляпа). Зазвичай під цим мається на увазі здатність людини
активно діяти та змінювати світ довкола себе.
Це людина якій треба більше всіх. Яка тягне проєкти та двіжухи за собою, на якій
все тримається.
Зазвичай ці люди роблять щось своє, але якщо вони достатньо clueless
[https://www.rozhkov.me/loyalty-and-comfort-zone/], то можуть...
Найбільше мене харить коли код проєкту неможливо запустити локально.
Коли є мільйон залежностей, кафки-хуяфки, редіси-хуєдіси, бридка трійця
S3/SQS/SNS, мерзенний OAuth 2.0 та інша шляпа яка не запускається або складно
запускається на вашому комп'ютері.
Коли для підйому адмінки проєкту над яким ти працюєщ тобі пропонують докер
композ на більше рядків ніж сорци кожного мікросервісу, з яких він складається.
Коли їхав мікросервіс через...
В далекому 2010 році, коли долар був по 8, я працював на ентерпрайзному проєкті
разом з консультантами з компанії Thoughtworks. Тієї, звідки Мартін Фаулер,
тієї, що публікує Technology Radar [https://www.thoughtworks.com/radar], за
яким, ви, ймовірно стежите.
На нашому проєкті не було тестів, тому що в компанії на той час не було культури
тестування. Власне, мінусів у такому підході я не бачу, але то...
Нещодавно один відомий консультант по перформенсу рельс написав твіт, де
стверджував що більшість Rails апок тримають 1.5 req/sec на одному ядрі
[https://twitter.com/nateberkopec/status/1791927521895985417] й тому треба
мільйони vCPU, пам'яті та серверів, щоб воно хоч якось працювало.
Надзвичайно контроверсійна заява яка породила відповідну реакцію спільноти, де
різні люди заявляли що в них все працює як мінімум в 10 разів...
Проходжу зараз туторіал по Rust [https://rust-exercises.com/], дійшов до розділу
про інкапсуляцію.
Там як завжди: публічні поля у структур може змінювати будь-хто тому треба їх
зробити приватними, а назовні вистромити гетери/аксесори.
Цю історію я чув ще з далекого 2004 коли починав програмувати на Java. Тоді про
це не задумувався, ну дійсно, несолідно щоб ми писали user.name = "Vova", має
бути user.setName(...
Час розваг! Місяць тому я рефакторив @Donate1024Bot [https://t.me/Donate1024Bot]
, щоб прибрати node.js та npm з білдчейну
[https://www.rozhkov.me/clown-programming/].
Через кілька днів помітив що кнопки на інтерфейсі попердолило. З'ясувалося що
кудись дівся CSS який відповідав за теми, і замість того щоб зафорсити світлу
тему, воно вмикало системну, відповідно частину UI пердолило, бо вона не була
заточна під темну. Замість...
Знадобилося тут попрограмувати трохи (поганий той штурмовик що забув як
програмувати), поки прокрастинував та думав як краще організувати новий проєкт,
дай думаю оновлю старий.
Ласкаво просимо до проклятого світу веброзробки!
Зробив bundle update, запустив локально, прогнав тести, „на моїй машині
працює!”, пушу в репозиторій, build failed. Причому failed на тих самих тестах.
WTF, в мене ж все працювало!
Іду розбиратися, виявляється що в релізі Rails 7....
— „Краще працювати в продукті, ніж в аутсорсі”
— „Ні, це залежить від того який продукт і який аутсорс, буває цікавий аутсорс”
— „Потрібно видавати людям овнершип та контекст, щоб вони самі робили задачі”
— „Залежить від того яка робота, на конвеєрі тобі потрібні прості виконавці які
не вимахуються”
— „Робота має мати сенс та приносити задоволення”
— „Залежить від обставин, є ситуації коли просто потрібні гроші”
І так далі.
На кожне...
Продовжую тему з токсичними колегами
[https://www.rozhkov.me/toxic-water-cooler-talks/], цього разу говоримо про 1:1.
Такі мітинги з безпосереднім керівником вже досить давно стали ±стандартом в
індустрії. Зазвичай ні менеджер, ні підлеглий не знають, як правильно
використати цей час, і вони перетворюються на формальність, яку до того ж
менеджер має звичку переносити й забивати на неї.
Менше з тим, 1:1 це асиметричні мітинги. Ваш...
Читачки та читачі знають що я людина яка декларує гру на перемогу, а не на
процес, та постійний розвиток. На ділі мені не завжди вдавалось цього
дотримуватися, але я стараюсь.
Одна з речей які мене ніколи не приваблювали це робота на чілових проєктах та
умисне уникнення відповідальності (і відповідно зростання).
Таких проєктів, де можна почілити, було досить багато. Зараз не знаю як, але
підозрюю що вони...
У благословенні офісні часи, коли не було великої війни та коронавірусу, люди
значно більше спілкувались наживо. Найбільше звичайно під час
обіду/чаювання/кавування на кухні та перекуру у курилці. Американський термін
water cooler talk дуже влучний для опису цього явища.
На кухні можна було підслухати останні інсайди, розкладки та нахрюки, вклинитися
в чужу розмову, або розпочати свою.
Я часто користувався цим і розводив непродуктивні та токсичні...
Один з методів мотивації людей, якому навчають майбутніх керівників це давати
підлеглим відповідальність за рішення щодо виконання задачі.
Одразу наведу приклад.
Ситуація 1: приходить техлід каже — «зроби контролер SessionsController з трьома
методами: GET /login, POST /login, DELETE /signout».
Ситуація 2: техлід каже — «нам треба, щоб користувачі мали персоналізовані
сторінки на сайті, гадаю що треба робити авторизацію, що скажеш?».
У першому випадку у вас не так багато...
Нещодавно потрапив у ситуацію. Команда мала набір задач, виконувала їх, але одну
не вдалось зробити через технічні причини.
Начальник попросив звіт, після чого сказав — «так у вас нічого не вийшло
зробити».
🤦♂️
Бомбануло в мене знатно, не допомогло навіть розуміння чому він так вважав.
Я багато разів був в ситуаціях, коли проєкт, зроблений на 95% клієнтом або
начальником вважався таким що не зроблений. Тобі здається, «та тут...
«Що робити, як це вирішити?» — в армії не можна ставити такі питання.
В будь-який момент часу ви повинні чітко розуміти яку задачу ви виконуєте та
змогти пояснити це будь-кому старшому.
Якщо цього не зробите, то вашу долю вирішуватимуть за вас.
Наприклад є потреба розвантажити машину, ви собі йдете повз, і попадаєтесь на
очі відповідальному за розвантаження який може вас долучити до цієї важливої
місії. Якщо ви...
Організовував нещодавно одну зустріч щодо співпраці. Так вийшло що мій керівник
не мав змоги потрапити на неї та відправив свого заступника, якому довіряє.
Я знав що то не дуже хороша ідея, але ніяк не зміг на це повпливати.
Зустріч пройшла чудово, далі ми з заступником прийшли до керівника, розповіли
йому що до чого, але той, коли почув деталі, відмовився від співпраці.
Ні я, ні заступник не...