Happy Devops — сообщество адекватных инженеров – Telegram
Happy Devops — сообщество адекватных инженеров
1.91K subscribers
182 photos
8 videos
2 files
298 links
Сообщество адекватных инженеров | Все про DevOps и эксплуатацию.

Культура, инструменты, подходы и решения

Живо общаемся (чат): https://news.1rj.ru/str/+eNGNnbY_2mVkZTEy

По всем вопросам в бота: @HDFeedBackBot
Web: https://happydevops.ru
Download Telegram
Про факап на $100K

На интервью я люблю спрашивать про факапы, очень нравится мне слушать такие истории. Кстати, если человек говорит, что фейлов у него в карьере не было, то либо мало работал, либо что-то скрывает. Мне скрывать нечего, косяков я напорол достаточно😃 И вот сегодня расскажу вам историю, как я наказал родную компанию на 100 тысяч долларов

Работал я какое-то время назад в компании, которая занималась монетизацией мобильного трафика. И вот, в какой-то момент времени мы купили китайскую компанию поменьше и ее инфраструктуру надо было интегрировать к нам. А особенностью было то, что компания эта существовала довольно давно и у нее был договор с пачкой мелких китайских вендоров, что их (купленной китайской компании) рекламный SDK был на телефоны этих мелких вендоров предустановлен.

Ну и конечно же шло время, обновлялся андроид, версии SDK обновлялись вслед за ним, а поддержкой этих нонейм-девайсов никто и не морочился. В их ценовой категории дешевле было выпустить новый, чем страдать с поддержкой старого. Но эти девайсы все еще оставались онлайн и генерировали безумное количество паразитного, никому не нужного трафика, который приземлялся на эндпоинты этой купленной китайской компании.

Ну а особенности китайского софтописательства заключались в том, что они пытались сохранить некое подобие обратной совместимости и для новых версий SDK использовали (🤪) теже самые эндпоинты и как-то очень хитровыделанно фильтровали это на балансерах, нормальный трафик пропускали внутрь, а по паразитному отдавали код 400 и благополучно отваливались. Документации на все это естественно не было.

Я еще подивился, что у них схема такая необычная, что весь траф проходит сквозь шесть балансеров на каком-то азиатском хостинге и заворачивается в GCP. В процессе общения (кто общался с китайцами на английском, тот меня поймет) я так толком и не понял для чего это и решил разобраться потом, поджимало время.

Хостились мы тогда у замечательных ребят servers.com, я все это добро затащил у нам в контур, поставил под мониторинг и забыл. Через полтора месяца пишет мне СТО мессагу вида: "Андрей, у нас срочный созвон, через полчаса жду тебя в зуме". Прихожу я в зум, а там несколько директоров и CFO с очень странным выражением лица показывает счет от провайдера на 98 с чем-то тысяч баксов и очень недобро смотрит на меня, спрашивая "откуда все это?". Обычный счет на инфру был в районе ~15К в месяц (точно уже не помню) и я прилично охуел.

Пошли разбираться, быстро нашли причину, я понял основания для балансеров на азиатском хостинге (бесплатный трафик конечно же), быстренько соорудил что-то подобное на каком-то уже европейском хостинге без оплаты за трафик и расходы нормализовались.

Но 100 штук-то были уже потрачены. Я сразу сказал (и не соврал ни на секунду), что компенсировать я это не могу, даже если продам себя по частям, а пожить мне бы все-таки еще хотелось. Так что готов ко всему, выкидывайте меня как щенка нашкодившего если хотите, все было сделано по невнимательности и без злого умысла.

На что мне был дан ответ, что "мое обучение уже обошлось компании в 100 килобаксов и выкидывать меня, по меньшей мере, неразумно" (ну как в известной истории с гитлабом, последствия для инженера были такие же). Вот приятно все-таки работать с умными взрослыми людьми.

В итоге я поднапрягся, пару месяцев работал без выходных и с овертаймами, но таки смог оптимизировать расходы по инфре примерно процентов на 20 и нарисовал график, где мой факап постепенно гасится за счет сэкономленного бабла. В итоге даж премию получил, потому как после погашения моего проеба за счет экономии пошла чистая прибыль.

Вот такая вот история. Вы можете справедливо заметить, что сокращение костов и так являлось моей задачей (я работал в должности Head of Infra) и будете правы. Но в свое оправдание я скажу, что ценник всех устраивал, все было нормально оптимизировано, и за косты мне никто ничего не говорил. Я же проделал очень большую работу с закапыванием в код, кучей коммуникаций с разработчиками и приведения в порядок легаси в одно лицо.

Такая вот история🙂
👍19
Про прошлое, настоящее и будущее

"Как причудливо тасуется колода". Как интересно складывается жизнь. Думаю о людях, с которыми мы вместе когда-то давно начинали этот путь. Тогда никто не мог представить, что нам за это будут платить. Моя мама была уверена, что все, что я заработаю — это севшее зрение и геморрой.

Мы собирались в каких-то тесных каморках, которые гордо именовали "Серверная" (именно так, с большой буквы) и там осваивали всю эту премудрость. Наши компьютеры не очень подходили для игр, зато они прекрасно подходили для первых полусамосборных линуксов. Мне все это волшебством казалось. И ведь все добились чего-то сейчас.

Мой Сэнсей (года на 3-4 он меня младше кстати) прошел путь от админа в компьютерном клубе до CIO, потом внезапно пропал. Через какое-то время выяснилось, что он долго работал у Лебедева, а сейчас у него свой интересный бизнес. Другой мой друг радовался первым маленьким заказикам из-за рубежа, а сейчас генеральный директор одной довольно известной IT-компании с представительствами по всему миру. Моя карьера тоже довольно интересно сложилась, звезд с неба не нахватал, но было очень много всякой интересной движухи.

Что объединяло нас? Мы были и остались... ммм, задротами :) Нердами, хакерами в том первичном, сейчас уже фактически забытом смысле. Мы фигачили за идею и продолжаем это делать. За интерес. Из чистого прекрасного любопытства.

Писать эмуляторы x86 на javanoscript, с головой зарывшись в даташиты? Вай нот.
Раскапывать древний кернел, поспорив про то, как считается LA? Погнали.
Ставить OpenBSD, потому что у кого-то нашлась Та Самая Книжка и хочется радостно поностальгировать? Да легко.

Мне 40 почти, а я до сих пор могу не спать ночь, зарывшись в какую-нибудь прикольную хрень. Правда здоровье уже не то, и обычно на подобные развлечения я трачу ночь с пятницы на субботу, чтобы спокойно отоспаться днем. Осталась до сих пор какая-то магия в этом светящемся ночью мониторе и полной тишине. Какое-то вот это чувство, которое никому не объяснить, а тому, кто знаком с ним, и объяснять ничего не надо. Все понятно с полувзгляда, без слов.

Ох, старпёрский ностальгический пост получился🤓 Осень, чето накатило...
Завершить хочу прекраснейшим текстом Гриши Бакунова (aka bobuk), человека, не нуждающегося в представлении. Сотни раз читан и перечитан этот текст, очень крутой
https://github.com/bobuk/addmeto.cc/blob/master/pages/2013-04-19.md
👍2
- Сделал?
- Да
- Работает?
- Нет.

Вынесенный в заголовок диалог, к сожалению, не шутка. Это реальная ситуация при приемке девопс-командой задачи от разработчика, который должен был нам прикрутить "какую-то штучку" (за давностью лет уже не вспомню, какую именно штучку мы просили, да оно и не важно в принципе). Все это как раз про результат, а не про буквальное закрытие задачи. Написание кода, как известно, самый простой и тривиальный момент в работе разработчика. До кода идет планирование, а после кода — интеграция. И оно все гораздо интереснее и обладает большей ресурсоемкостью.

"Сделать задачу" — это как раз про уровень джуниора. На грейдах повыше уже нужно думать и про две остальные стороны. А интегрироваться надо не только, грубо говоря, с кодом своей команды и соседних команд, интегрироваться нужно с бизнес-процессами, которые могут простираться и за пределы ответственности IT-команд. Попытки сгладить углы интеграции — это и регресс-тестировании и какие-то е2е и интеграционные тесты. Но это все равно кусочки мозаики и очень круто, если человек или команда, отвечающие за поставку, эту мозаику у себя в голове сложат
Про выбор

Какое-то время назад я полностью перестал употреблять никотин и алкоголь. Курил я без малого 30 лет, ну и бухал тоже довольно давно. И надо сказать, что эти процессы мне нравились. А потом я увлекся нейрофизиологией и пришел в ужас от того, что действительно скрывается за "рекомендуемым бокалом красного вина" и сигаретами. Ну и надо сказать. что зачадить бутылку вискаря и пачку сигарет под приятный разговорчик я мог легко. Какой уж тут бокал. Надо было бросать, но благодаря знаниям, почерпнутым из той же нейрофизиологии, я знал, что на силе воли бросить не получится. На силе воли вообще ни у кого ничего не получается, это очень ограниченный ресурс и его невозможно использовать долго. (Те, кто кажется, что фигачат на силе воли, используют совсем другие механизмы). Почитав литературу, послушав умных людей и систематизировав знания, я понял, что мне поможет.

Это выбор.

Банальный самостоятельный выбор. Я признал, что алкоголь это прикольная вкусная штука, расслабляющая и раскрепощающая (а я интроверт до мозга костей, мне порой сложно общаться с людьми), но последствия употребления настолько фатальны, что я выбираю трезвость. И каждый раз, когда меня настигает желание выпить, я вспоминаю про свой выбор. Тоже самое и с сигаретами. Да и со всем, чем угодно, в принципе. Сейчас я также работаю с прокрастинацией. Я признаю, что потупить в ютубчик или погамать это крайне приятно и интересно, но я выбираю сделать полезные дела, а потом еще и можно дать себе вознаграждение, если это важно.

Мы высшие приматы, у нас есть свобода воли и она гарантирует нам право делать выбор. И мы его всегда делаем, осознанно или нет, но делаем. Поэтому часто бывает достаточно переключить выбор в осознанный.

Один мой хороший друг задал мне вопрос с любопытной аналогией: "Вот почему когда меня бьет током, то я запоминаю, что это плохо и больше не лезу в розетку, а когда я бухаю и потом страдаю от похмелья, то это меня ничему не учит?"

Дело в том, что любая зависимость, будь то химическая или поведенческая, стимулирует выброс "быстрого дофаминчика", который является мотивационным нейромедиатором. Дофамин выделяется в ответ на приятное для мозга действия, он является вознаграждением за приятное и служит для укрепления нейронных путей в это "приятное". В этом задействованы системы Want и Like. И со временем количество выделяемого дофамина (система Like) уменьшается, но количество рецепторов в нейронном пути продолжает расти (система Want), поэтому необходимо ее постоянно "кормить". Это и есть привычка. И когда бьет током, то действие и результат мгновенны и нейронный путь прокладывается моментально, так работает обучение. А когда бухаешь, то отложенное похмелье и мгновенный дофамин сейчас — это два разных действия для мозга и связать их воедино можно сделав осознанный выбор. Это, конечно, не единственный путь, но довольно эффективный.
👍2
Про бабло

В последнее время IT на хайпе, обыватели думают, что сиди себе на жопе за компом, бешеные тыщи получай и в ус не дуй. Про "сиди на жопе" мы отдельно поговорим, а вот про бешеные тыщи прямо сейчас.

Обычная история "вайтишников" выглядит так: насмотрелись на цифры в вакансиях, прошли курсы, стали откликаться на хх.ру и встретились с жестокой реальностью. Никому они без боевого опыта не нужны. Первый боевой опыт каждый себе зарабатывает по-разному. Кто-то идет работать за миску риса и строчку в резюме, кто-то фрилансит, кто-то находит ментора, который помогает и опыта набрать и на работу устроиться, кто-то хакает систему и придумывает себе боевой опыт, в общем, не суть. Предположим, что человек уже несколько лет в профессии и потирает ручки в ожидании баснословных зарплат (которые сейчас на перегретом рынке растут уж и вовсе неприлично). И опять суровая реальность щелкает по носу. Заветных цифр так и нет. А вот почему так, я попытаюсь сейчас ответить. Говорить буду про девопсов, но применимо ко всем.

С эпохой agile-трансформаций в Айти, трансформировалось и понимание сотрудника. Понятно, что несмотря на все автоматизации, руками работать все равно надо, а вот как работать — это как раз вопрос, на который мы отвечаем. Раньше айти-команда была такой привычной очередью: человек получал извне задачи, делал их и отправлял обратно. Все чинно, благородно и размеренно. За него думали другие люди и всех все устраивало: релизимся раз в полгода, без ТЗ не работаем и прочие вот эти штуки

Аджайл (хуяйл😁) принес нам помимо всего вот этого бреда с манифестами и прочими почти религиозными заморочками очень важную вещь: он существенно сократил время итераций (то есть запуска функциональности на production) и убрал барьер между бизнесом и исполнителем задачи. Но убрал он его из процессов, а из головы людей не убрал.

Ну вот так в итоге и получается. Тот кто думает про business value тех задач которые он получает и тех решений, которые он принимает, кто интересуется, на чем вообще его компания зарабатывает деньги и как лично он может повлиять на эту прибыль, тот остается в профите.

devops — это тоже про деньги и хоть инфраструктура деньги только тратит, но влиять на revenue можно и опосредованно. Строить правильные процессы, сокращать расходы на инфраструктуру, планировать SLO и SLI, укладываться в error budget. Вообще, понимание того, что бизнес любит цифры — это очень хороший скилл.

И вот такие люди фактически становятся партнерами компании и могут расчитывать на хорошее вознаграждение за результатам своей работы. Это сложно, надо думать out of the box, постоянно учиться. забыть про фразу "это не входит в мои обязанности", погружаться в продуктовые процессы и все такое. Зато в итоге, помимо денег, есть еще и удовлетворение от хорошо сделанной работы и понимание всего процесса от начала и до конца.
Про технологии

Почему люди так дрочат на технологии? Неужели им действительно это кажется таким важным?

Мне кажется, что причину хорошо раскрыл Виктор Олегыч Пелевин, когда писал: "то, для чего нет слова, для 99,99 % людей не существует вообще". Людям важна не технология как продукт мысли, а важны слова, которые стоят перед ней. Чем больше и разнообразнее этих слов можно напихать в резюме, тем выше их собственная ценность в их же глазах.

Люди не решают задачи, люди изучают технологии. Отсюда и возникают такие вопросы, как "а что нужно знать девопсу? А чем девопс должен владеть?" и холивары типа "а должен ли девопс уметь программировать?" и кто-то на полном серьезе приводит аргументы за и против.

Девопс, как и любой думающий специалист, должен уметь решать проблемы в рамках своей предметной области. Должен уметь сопоставить цель и средства и на их основании вывести оптимальный путь решения поставленных перед ним задач. Технологии, языки программирования, платформы вторичны. Они лишь помогут эффективно решить проблему. Но чтобы ее решить, надо знать, что вообще решать.

Я более-менее активно участвую в одном довольно большом девопсячьем чате и мне с одной стороны радостно, потому что по уровню дискуссий я понимаю, что без работы я точно не останусь. А с другой стороны мне очень грустно, я вижу как люди деградируют и упираются в своем невежестве. И это невежество не "незнания", это невежество "непонимания"
​​Про google

Хочу порекомендовать книжку.

Я очень люблю читать биографии и истории компаний. Это не попытка найти секрет успешного успеха, повторять чей-то путь в надежде поиметь такой же профит — это, по меньшей мере, глупо. Как раз по этой причине я не верю в "секрет успеха от %SOMENAME%", успех — это всегда совокупность везения, трудолюбия и умения разглядеть шанс в обычной ситуации.

Но, в целом, я не об этом. Я о Google. Я купил эту книжку еще в начале лета и она ждала своего часа на полке. И вот на этих выходных в субботу я взял ее с собой в кафе почитать за кофе и в итоге проглотил ее залпом, перевернув последнюю страницу вечером в воскресенье

В книге рассказывается история раннего гугла, от стартапа до выхода на IPO. Крайне интересно наблюдать трансформацию проекта такого масштаба. Книга написана редактором, который работал в Google и пришел туда на очень ранней стадии. И в силу редакторского пера и удачного перевода текст прям очень хорош.

Мне вот интересно, если характеры Ларри и Сергея действительно таковы, как они описаны в книге, то в какой момент и под влиянием каких обстоятельств они изменили своему девизу "Don't be evil"? И изменились ли они сами? Оригинальная книга была выпущена в 2011, когда слоган еще присутствовал в брендбуке гугла, сейчас, по прошествии 10 лет очень интересно сравнивать ту восторженность стартапа, которая прекрасно передана в книге и огромного корпоративного монстра, в которого превратился Google сейчас.

Это ни в коем случае не реклама, все ссылки на книгу, я уверен, вы сможете найти самостоятельно
👍1
В пятницу буду выступать в Яндексе на камерном митапчике на тему ИБ. Буду рассказывать смешную историю как меня хакнули :) Мероприятие планировалось оффлайн, но ковид опять перечеркнул все планы. Заходите послушать
https://cloud.yandex.ru/events/421
​​Опять про технологии

В позапрошлом посте я как-то жестко набросил и могло подуматься, что я говорю, что изучение технлогий совсем уж не важно. Это, конечно, не так. Просто это не должно являться самоцелью. И сегодня я немножко подробнее попробую эту тему раскрыть.

В общепринятой градации есть такое разделение: генералисты, люди которые обладают широким, но поверхностным набором знаний; I-shaped persons, спецы, которые имеют глубокий опыт и хорошо разбираются в чем-то одном и T-shaped persons, спецы, глубоко погруженные в одну тему и обладающие кругозором еще в нескольких соседних тематиках.

И вот когда доходишь до уровня T-shaped person, то вопрос "а как это сделано?" возникает довольно редко, в основном, когда погружаешься в какие-то академические вещи, где pure science и все такое.
А вот вопрос "зачем это сделано?" и "зачем это сделано именно так?" возникает гораздо чаще и обладание более широкой экспертизой позволяет задать этот вопрос более, чтоли, верно. Это про понимание сути вещей. Понимание того, откуда берется твоя зарплата, если угодно :)

Например, одна из сторон шапочки нашей Т вполне может уходить в экономику и бизнес и давать понимание того, на чем мы вообще деньги зарабатываем. И это понимание помогает принимать более эффективные решения в своей основной сфере компетенций. То есть, банально, понимание того, какую задачу мы решаем глобально и зачем мы ее решаем.
👍1
Про боль

Встречал такой вопрос: "а почему со временем меня начинают заебывать пользователи?" Это от девопса про программистов. Задумался над этим прям серьезно. Ведь люди не просто так до вас доебываются, у них что-то болит и вместо лечения причин этой боли они получают условный нурофен, который забивает симптомы ненадолго.

Вот крик души продакт-менеджера (или менеджерки?🤔):
я задала вопрос не потому что мне нечего делать, а потому что я хочу запустить [сервис] там и чтобы отстали от меня
Понятно, что у каждого из нас очень много задач и построить поток на этом довольно сложно, но нужно дать себе немного времени, посидеть, остынуть и понять, что все эти доебки не рождаются на пустом месте.

Совместная попытка выяснить боль и вместе же решить ее будет более продуктивной, нежели злость и агрессия в обе стороны

И надо просто исправить процесс, интегрировать инструмент, запилить интефрейс, автоматизировать какое-то действие, да хоть просто подумать, что не так и поставить задачку в трекер, чтоб не затерялось) В итоге и мир станет лучше и своего головняка сильно подубавится

P.S. Я вот сам ни разу не ангел и порой у меня подгорает очень сильно, аж прям давление повышается. В таком случае я пользуюсь бессмертным методом Скарлетт О'Хара и решаю подумать об этом завтра. А завтра я уже думаю совершенно в другом контексте, без своих сжигающих в моменте эмоций. И чаще всего удается понять, где именно зарыта бяка
👍1
Про бд

У нас же все-таки технический канал :) Поэтому запилил пост про очень крутую и незаслуженно обойденную вниманием БД.

Это, конечно же. sqlite. Встраиваемая, крутейшая система управления базами данных. Один исполняемый файл, КУЧА фич из коробки, очень легкая и простая в использовании, не требует сервера. Бэкапится, переносится и восстанавливается максимально легко при помощи системных средств ОС🙃 Я имею в виду копирование, ваши данные сохраняются в одном файле. С оооочень удобной REPL-консолью, гуевыми клиентами и даже в виде экстеншена для хрома. Если вы не любите эксель, но хотите в аналитику на кончиков пальцев, то это прям ваш выбор.

Я плотно познакомился с sqlite когда для фана писал свою систему управления БД и sqlite мне очень помогла в изучении "как вообще это все работает" (вот годный туториал кстати, если вам тоже нечем занять свободное время)

Для большинства проектов типа "Блог Я и моя сраная собака" нафиг не нужны всякие громоздкие СУРБД, которые как из пушки по воробьям и только добавляют сложности в поддержке. Я с удовольствием использую sqlite по максимуму и крайне доволен. Чего и вам желаю :) #полезняшки

Хотел писать пост про нее сам, но погуглил и понял, что все написано до меня :)
https://antonz.org/sqlite-is-not-a-toy-database/
Про принцип единой ответственности

Только не в программировании, а в управлении командой. Обязанность руководителя, в основном, это делегирование. В делегировании чисто задач смысла особого нет, потому как это порождает микроменеджмент и постоянное клевание исполнителя на предмет: "а как? а что происходит? а почему ты это сделал так, а не так?" Ничем хорошим это не закончится

Поэтому делегируем мы ответственность, а задача, делегируемая вместе с ней, это, по сути, побочный эффект. (Тут вот референс вот к этому посту должен появиться :)) Если исполнитель знает, как решить задачу по-другому или вообще обойтись без задачи — это очень хорошо, пусть делает как знает. Это — его ответственность

Но понятно, что руководитель должен в итоге все это разделегированное собрать в какую-то понятную систему и презентовать ее дальше, на тот уровень, откуда уже эту задачу делегировали ему

И принцип единой отвественности в этом случае заключается в том, что каждый узел этого дерева отвечает за все, что происходит ниже. Не делает это все самостоятельно, не играет в демократию вида "давайте решим, как мы будем это делать", а непосредственно отвечает за все, что происходит там. И эту ответственность он может порубить на кусочки и делегировать дальше
Интересное про найм

Смотрю я на текущий рынок найма в IT и мне хочется плакать. Дефицит кадров ужасающий, за каждого сотрудника идет реальный бой, HR-ы просто как солдаты на передовой.

Но так ли это на самом деле?

Понятно, что рынок взорвала пандемия и огромное количество бизнесов хлынули в онлайн. В связи с этим понадобилось огромное количество людей, которые смогут все это строить, обслуживать и эксплуатировать. Рынок оказался к этому не готов, зарплаты дрогнули и ломанулись вверх. Стрелочка перевернулась и теперь уже кандидаты придирчиво выбирают, куда пойти работать

Я и сам побывал на обоих сторонах этого любопытного процесса и точно могу сказать вот что. Не только малое количество кандидатов сильно замедляет процесс найма, а еще и чудовищная некомпетентность HR-ов. Причем не в технических вопросах, господь с ними, никто не заставляет их отличать кубернетес от энджинкса. А вот прямо-таки самая что ни на есть их профессиональная некомпетентность.

На перегретом рынке где спрос перекрывает предложение в сотни раз надо уметь принимать решения быстро, уметь общаться с людьми и уметь принимать также и стратегические решения, которые если не дадут профит здесь и сейчас, то дадут его немного позже. Не надо брезговать нетворкингом, все знакомства так или иначе будут полезны. Не надо мыслить и действовать шаблонами, они уже у всех в зубах навязли. И, конечно же, не надо относиться к несостоявшемуся сотрудничеству как к трате времени. Увы, когда я пытаюсь это эйчарам объяснить, то встречаю просто стену непонимания.

Не все такие конечно, но, к сожалению, большинство.
​​Если кто еще не в курсе вдруг) Сбер запустил свою версию GPT-3 для генерации картинки из текста. Можно ввести любой набор слов и компьютерный разум выплюнет вам свою больную визуальную фантазию на заданную тему. Много поиграться вряд ли выйдет, генерации картинки надо ждать около часа.
У меня получилось вот такая криповатенькая штучка
Про MVP

Смотрел тут интервью со своим сенсеем (мы несколько лет уже фактически не общаемся, слежу вот за ним урывками😁) и он сказал любопытную вещь. Дословно не ручаюсь за точность фразы, но смысл в том, что если MVP нельзя запустить за два месяца, то это хреновый MVP и надо что-то переосмысмыслить. И приводит в пример какой-то сервис, который они как раз за 2 месяца запустили. Ну и очевидно, что он имеет в виду какой-то программный код, который сформировался в фронтенд и какие-то сервисы на фоне

Я подумал, что в моем мире MVP — это совсем про другое. MVP это же minimum viable product, то есть проверка гипотезы, а стадия написания кода, по-моему, это уже прототипирование.
Код имеет смысл писать, когда гипотеза проверена и на ней построена некая бизнес-модель, которую уже надо воплощать в прототипе.

Поэтому запускаться надо, имея на руках дишь идею и проверять ее максимально дешево. Продаешь что-то? Сделай простой лендос на тильде и тестируй канал продаж. Заходишь в b2c? Найди одного поставщика и 10 человек, которые готовы купить переупакованный продукт или услугу. Про b2b можете поразмышлять на досуге самостоятельно, но и там особых отличий в случае с MVP нет 🙂

И идей (ну или вариантов одной идеи) нужно проверить максимальное количество, чтобы среди них найти то, что работает и укладывается в юнит-экономику (которую тоже лучше посчитать пораньше🙃) и вот эту идею уже прототипировать, запускать, питчить ее и искать под нее инвестиции

Но прям подавляющее большинство бизнес-людей (ну или думающих, что они бизнес-люди😁), думают, что MVP — это что-то большое, тяжелое и родное. И вот их уже ждет горькое разочарование. Если идея не взлетит или полетит не так, как это виделось, то бабки-то уже вложены... И начинается клепание франкенштейнов, вида "все равно его не брошу, потому что он хороший"
Случаев, когда гипотеза полетела сразу, ничтожно мало. Поэтому берите сэкономленное на завтраках и пробуйте проверить как можно больше гипотез как можно более дешевым способом. И это уже можно считать первым заданием на сходимость юнит-экономики в вашем потенциальном бизнесе
Про эйчаров (продолжение поста про найм)

Мне тут прилетело душевно за этот пост😁 В первую очередь от эйчаров. Хочу немного прояснить ситуацию и раскрыть свою точку зрения.

В первую очередь, дисклеймер: я очень уважительно отношусь к работе эйчаров и хедхантеров на таком очень непростом рынке как айти. Мало того, что приходится общаться с людьми и так, как правило, не блистающими социальными навыками и софт-скиллами, так еще и надо уговорить их как-то пойти к вам работать. Причем БигБосс поставил потолок в 250к, а нужный вам спец явно стоит за 400...

Да, это все непростой квест и я снимаю шляпу перед эйчарами, которые с любовью подходят к своей работе. Но черт возьми, дамы и господа, большинство из вас заезжают со своей вакансией как с эталоном мечты, инвайтом в дримтим. С печеньками в офисе и оформлением по ТК🤦‍♂️ Ну рили, вы правда думаете, что оформление по ТК это киллер-фича, уникальное торговое предложение? И откуда такая надменность?

И еще последующие жалобы, что человек не заматчился с вашими просьбами. Вы ищете спеца, который будет делать непростую работу, бороться со сложностью систем, о которой вы даже ни малейшего представления не имеете и при этом делаете свою работу откровенно хуево, с жалобами, что вам очень сложно работать с такими людьми. Да, сложно, и эта сложность довольно неплохо оплачивается.

Сорри, вайтишников не учат самому главному навыку: как пройти собеседование. А те люди, которых вы хантите, очень редко заинтересованы в этом. И это ваша работа, убедить их хотя бы придти на собес

И почему всегда холодная база?😳 Вот это меня поражает больше всего. 99,9% эйчаров, которые сказали "давайте оставаться на связи", на самом деле просто пропадают в бездну. Я обзавелся несколькими очень хорошими знакомствами в кадровой среде и теперь мы друг другу помогаем по возможности. Вот это действительно "оставаться на связи", они раз в несколько месяцев пишут мне, интересуются карьерными достижениями и спрашивают, не нужна ли мне помощь. А я, в свою очередь, отправляю к ним моих хороших знакомых девопсов, которые не хотят вылезать на рынок в поисках. Почему так не делают все? У меня нет ответа🤷‍♂️

Ну и напоследок. Я, пожалуй, разделяю мнение одного уважаемого бородатого человека в шляпе. Эйчар должен выступать как агент для людей, которых он продает. Вот как у артистов есть менеджеры, так и у айти-спецов они должны быть. И агент знает о плюсах и минусах своих ребят, знает какие из них свободны на данный момент или скоро освободятся. И всегда готов сделать интересное предложение в обе стороны

Я буду очень рад, если кто-то ко мне прислушается. Пишите в бота, я готов пообщаться поподробнее на эту тему. Так как я вынужден сам заниматься наймом в свою команду примерно как раз по описанным выше причинам
👍1
Про культуру без обвинений

В SRE-практиках есть одна, которую наиболее часто обходят стороной в России в силу запредельной токсичности наших команд. Не знаю, в силу менталитета ли или из-за доминирующего чувства собственной важности, но у нас ответ на извечный русский вопрос сильно сдвигает локус контроля в сторону "кто виноват?". А надо бы сдвигать к "что делать?"

Итак, культура без обвинений или blameless culture. В чем профит? Когда происходит какой-то инцидент любого вида, неважно, от упавшего прода до сломанной CI-ки, от критикал до лоу прайорити, то мы зачастую повинуемся древнему инстинкту и ищем виноватого. Чтобы закидать его камнями, оштрафовать, заставить переделывать, словом как-то попытаться научить его не делать больше так на негативном подкреплении, наглядно иллюстрируя про "если коллектив плюнет в тебя, то ты утонешь". Может быть это следствие совковой школьной системы образования, которой не нужны неудачники и любой отстающий становится объектом насмешек и унизительной процедуры "подтягивания по математике". И на этом строится в головах подростков фундамент модели взаимодействия с миром

Культура без обвинений, напротив, не ищет виноватых, а основой своей предполагает, что если что-то пошло не так, то потому, что мы об этом не подумали заранее и допустили такую возможность. Что-то не так в наших процессах. И команда собирается расследовать инцидент не для того, чтобы найти виноватого и отхуесосить его, чтобы надолго запомнил, а для того, чтобы написать постмортем, разобрать его и понять, где дырка в процессах, как так получилось, что чьи-то действия привели к тому, чему привели. И совместными усилиями найти эту дырку, поставить правильные задачи на ее закрытие и отписаться в постмортеме, какие действия были предприняты

Я встречал практику постмортемов (как и blameless culture), почему-то, только у прям больших ребят типа Озона или Яндекса. Почему-то маленькие команды не уделяют этому внимания от слова совсем. И потом вырастают программисты, у которых девопсы — это вахтеры, которые любой ценой стремятся саботировать процесс, и девопсы, у которых программисты настолько тупые, что не могут даже развернуть простейший пайплайн, что уж там говорить про установку кафки или сетапа БД в режиме master-passive. А рядом еще стоят продакты и просто недоумевают, почему те и другие настолько тугие и почему просто нельзя сразу писать без багов?

Ребятки, успешные команды работают вместе на результат, а не выясняют у кого полномочий больше.
​​Про пандемию

Пятничный пост такой. Все, что вы хотели знать об удаленке, но боялись спросить😁
Сейчас, может быть, будет непопулярное мнение, но я прям кайфую от того, что происходит в мире🙂

Я очень долго мечтал, что все компании поняли, насколько у них раздут штат, какое космическое бабло они вкидывают в офисы, которые в таком объеме не нужны по сути, насколько человек может быть более эффективен, будучи не привязан к офису и ритму "с-9-до-6". Я, например, вообще люблю работать очень рано утром, часов в 5.
И, смотрите-ка, мечты сбываются 🔥

Я ужасный интроверт, живое общение с людьми меня больше напрягает, чем радует, поэтому проблема социализации для меня не актуальна, у меня три человека друзей, а близкий вообще один (привет, Дэнчик😁)

Ну и конечно treat others as you want to be treated, я никогда не прессую людей за жопочасы и никогда не требую никаких отчетов по времени (ну кроме случаев, когда я плачу за время) и никакого рабочего графика. Меня интересуют только закрытые задачи, так что burndown chart — это единственная метрика в плане контроля работ, за которой я слежу.

Многие топят за мифическую офисную культуру, типа если ты можешь поговорить вживую с человеком, то это как-то повысит вашу синергию и вы оба будете просветленными и охуенно эффективными. А уж если вы вместе на доске порисуете, то это все, перфоманс растет по экспоненте. Это, конечно, говно на палке, офис нужен только для того, чтобы твой работодатель был уверен, что ты не ебланишь за его деньги. Я считаю, что если задачи закрываются нормально и в срок, то ты не ебланишь по определению. А как ты их закрываешь, мне, честно говоря, не очень интересно, я за результат

Еще одна не очень умная тетя втирала мне, что офис дисциплинирует. Ну типа вот ты каждый день должен встать, отгладить свой дресс-код, помыть моську и заставить себя выйти в снег/слякоть/мороз/дождь/адовое пекло, и все эти мужественно преодоленные сложности дают тебе ачивку "Мужественное преодоление сложностей". А в офисе-то, прям кайфы начинаются. Коллеги приветливые, обстановка настраивает на рабочий лад, встречи у кулера — кладезь новый идей и озарений.. Ну а дома ты зарастаешь жиром, не моешься, жрешь фаст-фуд и всячески деградируешь. Ну в общем, такой обычный бред от человека с обезьяньей какой вместо мозга.

Ну что я могу сказать про это? Если самодисциплина отсутствует как класс, то тебе никакой офис не поможет🤷‍♂️ Я уже много лет работаю удаленно и раньше почему-то это считалось привилегией. За это время я научился работать самостоятельно, планировать свое время, понимать насколько я эффективен в разное время и в разных обстоятельствах, научился работать в аэропортах, парках и барах. Вообще, на эту тему рекомендую книжку Сергея Жданова "Легко и просто. Как справляться с задачами, к которым страшно подступиться", мне очень зашла.

А пока я работал в офисе, то, по факту, я приходил, надевал наушники и просто молча работал, никого не слыша. Иногда ходил налить себе чаю. А когда бросил курить, то живое общение с коллегами сократилось до переговорок. Сейчас, сюрприз-сюрприз, все абсолютно точно также, только я не трачу время на коммьют.

Ну и пока я работаю удаленно, я объездил полмира не отрываясь от работы (да, вот закрытые границы, это существенный минус пандемии конечно. Но рано или поздно они откроются, а удаленочку у нас уже никто не отнимет🤗) и воспитал в себе дисциплину, которая очень хорошо помогает мне и в остальных сферах жизни. Чего и вам желаю :)
Про отладку

8 часов отладки, явные сомнения в своем психическом здоровье, кубернетесы-шмубернетесы и эти вот ваши облачные дела :)
В формат поста в телеге явно не поместится, поэтому вот
https://teletype.in/@happydevops/metabase-debugging
Про вкладки

Всем наверняка знакома повседневная картинка: браузер с сотней-другой открытых вкладок и таббар уже настолько забит, что это тупо просто полоска, на которой уже даже иконок не видно.
Я буду говорить про работу, но применимо ко всему, в принципе.

Вкладки в браузере — это как задачи в таск-трекере. Мы используем трекер для того, чтобы планировать свою активность, ко вкладкам имеет смысл относиться точно также. Я вечером, после окончания работы, закрываю все вкладки, вообще все.

Это стимулирует декомпозировать задачи хотя бы до одного дня (в идеале меньше), не загромождать букмарки (в которые никто и никогда не возвращается) и всегда иметь перед собой актуальное состояние работы. (Хотя вот в новом сафари появилась функция "создать группу закладок из открытых вкладок", подбивают на плохое, нехорошие люди😁)

Куча открытых вкладок — это прокрастинация. Это тайная надежда на "я когда-нибудь прочитаю эту статью", "эта страничка нужна мне для вооооон той задачи", "а здесь я начал отвечать какому-то мудаку, но меня отвлекли". Этого ничего не случится, вам это не нужно. Один раз приняв это решение, начинаешь относиться к работе гораздо более вдумчиов

Можно утащить лайфхак из ГТД с их пустым инбоксом. Если что-то мне реально прям нужно, я кидаю это в Saved Messages в телеге. И каждую субботу я это разгребаю. Превращаю в реальные задачи, которые идут в таск-трекер (рабочий или личный), открываю и читаю (или чаще просто закрываю, думая "что я вообще интересного здесь нашел?🤷‍♂️") или выполняю какое-то конкретное действие: отправляю кому хотел, пишу письмо или заказываю вот эту симпатичную штучку на озоне

Относиться уважительно к своему времени и не перегружать свой контекст отложенными действиями — это залог продуктивной работы