Разработчик под ником Ludic*, автор технического блога Ludicity, сэкономил своей компании полмиллиона долларов за пять минут. Это больше, чем он заработал для работодателей за всю его карьеру, поскольку сфера деятельности, о которой далее пойдёт речь, — обман. Он всего лишь нажал на пять кнопок.
Под катом Ludic рассказывает, как так получилось, и почему ему обидно, что произошедшая ситуация возможна в принципе.
*Обращаем ваше внимание, что позиция автора может не всегда совпадать с мнением МойОфис.
Предыстория
Начнем с предыстории: кажется невероятно диким, что проблема, на устранение которой мне потребовалось пять минут в панели конфигурации графического интерфейса, существовала так долго. Мы расторгли чей-то контракт за неделю до того, как я это сделал. Кто-то потерял работу, поскольку коллеги не могли собраться с силами и нажать на указанную мной кнопку.
Несколько лет назад компания, в которой я работал, решила создать аналитическую платформу, руководствуясь общим курсом «на усиление работы с данными». Для осуществления этой идеи они наняли невероятно талантливых специалистов и в пять раз больше идиотов.
Тогда я только закончил учёбу и пришёл в компанию в качестве специалиста по обработке данных. Разумеется, мы не занимались никакой data science, организации это не требовалось. Вообще говоря, ей стоило бы уволить большую часть сотрудников и оставить в каждой команде пару человек, действительно разбирающихся в их предметной области, а затем объединить их с толковыми инженерами для выстраивания оптимальных процессов и систем. Вместо этого компания наняла группу консультантов из крупных фирм. Вы наверняка уже догадываетесь, к чему это привело.
Тем не менее, я был молод и поверил организации на слово. Руководители постоянно говорили нам, как рады тому, что мы внедряем новые инициативы в области ИИ (а потом, ссылаясь на нехватку времени, просили просто передать им тот или иной отчёт в виде электронной таблицы), и я обращался к машинному обучению для выполнения каких-то вычислений или даже настройки конвейеров данных.
Это никогда не срабатывало. Нам сказали, что нужно дождаться развёртывания платформы расширенной аналитики (AAP). Сейчас, видите ли, декабрь, а запуск состоится в январе.
В январе мне посоветовали набраться терпения — все произойдёт в марте. В июне мне сообщили, что проект приостановлен из-за COVID — это было крайне удобное оправдание, поскольку руководство уже полностью провалило проект, но получило в распоряжение ещё немного драгоценного времени. К декабрю следующего года я покинул компанию; AAP в ней так и не появилась.
Перенесёмся на три года вперед. AAP наконец-то готова к запуску. Оказывается, ни одна из необходимых мне функций в реальности никогда не планировалась, так что, полагаю, перед моим уходом компания просто мне солгала.
В течение одной недели компанию покидают четыре инженера. Я общаюсь с руководством, поскольку знаю, что им нужен толковый инженер, которого они не могут найти. Я не настолько опытный инженер, как многие из моих читателей, но способен читать документацию, не впадая в панику, — что в моей стране считается высокой квалификацией. Моим условием была большая зарплата. Они согласились и включили меня в команду AAP, поскольку это единственная команда с серьёзными ресурсами.
Это полный отстой
То, с чем я столкнулся — большая паутина технического долга, причём ей всего около недели. Вот несколько забавных подробностей.
Я нанял своего друга (большого поклонника кумовства), и он в первый же день обнаружил в репозитории проекта файл, который удаляет прод с помощью наших конвейеров CI/CD, если он попадает не в ту папку. Файл поставляется в комплекте с ключом и паролем, необходимыми для учётной записи администратора. Создал его ведущий инженер, перешедший на новую должность до того, как грехи прошлого настигли его.
Все это скрепляется вместе с помощью электронных таблиц, которые разбираются Python, передаются в S3, разбираются Lambdas в другие S3, файлы S3 подхватываются MongoDB, затем записи MongoDB передаются другой Lambda в S3, файлы S3 попадают в Snowflake через Snowpipe, новые данные Snowflake преобразуются хранимой процедурой Javascript в реляционный формат... и именно так редактируется чей-либо доступ к базе данных. По сути, весь этот процесс — загрузка CSV-файла размером 2 КБ в базу данных, в которой заданы роли её пользователей.
Такой подход считается более контролируемым.
Все преобразуется в CSV, поскольку команда безопасности требовала чего-то, что можно было бы легко сканировать на наличие вредоносного контента. При этом они так и не развернули инструмент сканирования, и мы получили все недостатки CSV без каких-либо преимуществ.
Каждая лямбда-функция, основа всех конвейеров ETL, начинается с counter = 1 , потому что одна из ранних итераций использовала счётчик, и люди просто копировали эту строку снова и снова. Старшие специалисты по обработке данных копировали эту строку снова и снова.
Наборы тестов в конвейерах CI/CD не работали месяцами, потому что кто-то во время отладки решил использовать Linux-команду tee для записи любых ошибок в stdout и в файл одновременно, а успешно выполненный tee перезаписывал код ошибки из неудачных тестов.
Чтобы получить доступ к паролю для любого API, который нам нужен, мы ищем что-то вроде service-password в сервисе AWS, который возвращает значение... service-password (то есть буквально все значения совпадают с ключами), а затем используем его для поиска фактического пароля в совершенно другом сервисе. Никто не знает, зачем мы это делаем.
Сценарий, который генерирует файлы конфигурации для наших конвейеров, начинается с 600 строк комментариев: старшие инженеры закомментировали эти строки на случай, если они понадобятся позже. Эти строки просто задают одним и тем же переменным разные значения, и все они в любом случае есть на GitHub.
И это в организации, которую некоторый процент читателей, находящихся в моей стране, узнают по силе бренда.
Я ещё даже не приступил к главному — но пока нам придется остановиться, поскольку я сейчас загорюсь. Описываемые мной детали важны, чтобы передать масштаб операционной некомпетентности, которая позволяет тратить на обработку <1 ТБ данных в день больше денег, чем составляет суммарная зарплата целой команды.
Бюджет
Следующее, что нужно осознать, — у этой платформы никогда не было шансов заработать деньги для организации. Они проделывают небольшой бухгалтерский трюк (читай: лгут), о котором я расскажу в другом посте, и пытаются создают впечатление, будто добились огромного выигрыша, но на самом деле это просто во много раз дороже, чем наша предыдущая операционная модель.
Мы делаем вид, что вся команда чем-то занята, и не выходим за рамки бюджета, потому что организация не может позволить себе тратить бесконечные деньги на эту социальную фикцию. Однако бюджет расходов на базу данных был резко превышен. Я не знаю точно, какова была первоначальная смета, по-моему, она предполагала что-то около 200 тысяч на год работы, но сейчас мы приблизились к миллиону долларов.
Несколько фактов:
В качестве базы данных мы используем Snowflake, которая взимает плату в зависимости от количества компьютеров, которые используются для выполнения запросов.
Мы платим только за компьютеры, пока они включены.
Мы выполняем, вероятно, несколько тысяч запросов в неделю, в основном разработчики экспериментируют с небольшими твиками для отчетов PowerBI, которые никто не читает, и в среднем на их выполнение уходит около 2 секунд.
После каждого запроса компьютеры простаивают 10 минут.
Я заметил это примерно через месяц после прихода в команду и предложил, э-э... не заставлять компьютеры работать на два порядка дольше, чем нужно для каждого запроса. Я буквально не помню, что было сказано — какая-то Agile-ерунда про Discovery, но потом просто ничего не произошло.
Просто сделать!
Как бы то ни было, спустя несколько месяцев мне наконец выдали карточку с надписью «Discovery: Оптимизация расходов». Теперь мне нужно оптимизировать расходы, чтобы было что сказать на следующем стендапе, и, к счастью, я знаю, что именно делать! Я проверю свою гипотезу о том, что все это — больная шутка, и нажму на кнопку, которую, по моему тайному мнению, явно следовало нажать.
У нас в команде появился новый человек, он кажется мне отличным специалистом. Я спрашиваю руководство, могу ли я дать ему полномочия администратора, поскольку нам нужны компетентные люди. Они отвечают отказом. Я передаю ему некоторые полномочия базы данных нижнего уровня — технически, мне не запрещали этого делать, поскольку они не являются полномочиями администратора, — и он поддерживает мнение, что мой план сэкономит деньги. В 4 часа дня в последний день недели я пишу в чат, где много хороших инженеров и нет менеджеров, чтобы убедиться, что я не собираюсь всё испортить, а затем просто делаю это.
Царство хаоса
В следующий понедельник я возвращаюсь на работу. Я подозревал, что мои действия сэкономят кучу денег, и знаете что: наш прогнозируемый счёт упал с миллиона до полумиллиона долларов, все сходят с ума.
Моя команда представила это как огромную экономию, хотя на самом деле мы просто применили огнетушитель к куче денег, которую подожгли.
Другие команды нападают на мою, настаивая, что это не может быть совпадением: новый парень присоединился именно тогда, когда мы это сделали, и как могло случиться, что без его помощи мы не знали, как произвести столь масштабную оптимизацию? Они говорят так для поддержания своего статуса, но это справедливый вопрос.
Хотя мои руководители очень довольны, они спокойно говорят, что, возможно, не стоит распространять изменения на все компьютеры (я произвел изменения только на нескольких, чтобы перестраховаться), потому что отдел будет слышать о нас целыми днями. И это вызовет нежелательные вопросы. Подтекст таков: если мы будем делать все это достаточно медленно, может показаться, что оптимизация потребовала больших усилий, а не просто нажатия кнопок, которые, как я сказал, должны были быть нажаты почти год назад.
Меня попросили сделать несколько презентаций, включающих фразы вроде «тщательный статистический анализ моделей поведения пользователей показал возможность более эффективного распределения ресурсов», подразумевая, что всё в порядке, просто нам нужно собрать больше данных, прежде чем принимать решение не позволять дорогим машинам простаивать весь день.
Каждый день я боюсь, что кто-нибудь попросит меня объяснить, в чем именно заключалось изменение. Ведь тогда мне придется «раскрыть» некоторых менеджеров, которые мне нравятся, — но они говорят об этом изменении без умолку, поскольку для них это единственный шанс заявить о своем влиянии на итоговый результат. И многие из них на самом деле достойные менеджеры, просто весь этот отдел, как и многие другие отделы, выступает лишь инструментом странной психологической операции для повышения руководителей. Они притворяются настоящим бизнесом, и совет директоров считает, что их костюм сидит убедительно.
Последствия и выводы
Выделив горстку хороших инженеров и пойдя на полное самоуправство, мы без особых усилий превзошли весь отдел. Компетентные люди есть, просто их сделали абсолютно бессильными, и я всё ещё убежден, что эта компания, возможно, лучше, чем условная средняя организация.
Я прошу руководство о прибавке в 30 тысяч долларов после того, как сэкономил 500 тысяч, и мое сообщение до сих пор не прочитано. Подозреваю, что в итоге я получу либо ничего, либо 5 тысяч.
Теперь у меня еще больше совещаний, потому что все хотят поговорить о том, как мы сэкономили деньги. Мне пришлось сделать презентации. Убейте меня.
Лучше бы я ничего не делал. Пусть это станет для вас уроком. Вы слышите меня? Я потратил пять минут, добился величайшего успеха в своей карьере и тут же был за это наказан. Учитесь на моих ошибках, умоляю вас.
Комментарии (88)
ivantgam
04.01.2024 12:00+44Суть оптимизации, в том, что поменяли дефолтное значение AUTO SUSPEND TIME в Snowflake с 10 до 1 минуты?
tokarev
04.01.2024 12:00+5я надеялся что он потушил весь кластер и никто ничего не заметил :)
а так, да - просто поменял дефолтное значение, но количество бесполезной работы от этого не уменьшилось :(
Elena-314
04.01.2024 12:00+3шикарный текст. Интересно из какой компании автор)
Ivan22
04.01.2024 12:00+35да это может быть любой энтерпрайз типа кока-колы, байера, форда, боинга или бритиш петролиума. Везде примерно одинаково
Ulrih
04.01.2024 12:00+1В них то как раз тонны древнейшего кода чуть ли не на фортране
Ivan22
04.01.2024 12:00+1ну вот переезжают потихоньку в клауды, кудаж без этого, но подходы все теже: "работает не трогай", прямо как и в этой статье, что прямо как революция подается - слегка потрогать то что и так работает
arheops
04.01.2024 12:00+5Лет 5 модно нанимать 100500 дата сайнс и 10+ амазон архитекторов.
А потом, думаете, чувак который умеет работать только молотком - просто вставит шурупик? Неа.
Тут этого описанного в статье чувака потом еще и уволят, ибо он бюджет менджеров сократил. Надо не только достижения, но и общий бюджет.
Psychosynthesis
04.01.2024 12:00Это иносказательное описание половины крупных государственных компаний РФ.
MaxKitsch
04.01.2024 12:00+28О, этот милый наивный миф об эффективных западных компаниях, в которых умеют считать деньги.
Psychosynthesis
04.01.2024 12:00+3Как из моего комментария вы пришли к выводу о том, что я считаю будто западные компании эффективны?
Напротив, у них и вовсе половина современного айти это вообще цирк с конями и дебилами, он работает исключительно потому что его бабками заливают.MaxKitsch
04.01.2024 12:00+4Прошу прощения. Поддался стереотипу: обычно фраза из предыдущего комментария подразумевает такое противопоставление.
Psychosynthesis
04.01.2024 12:00+3Просто я в нескольких наших работал, так что точно знаю какое там шапито, вот и написал про то в чём уверен.
А про западные у меня инфа скорее от знакомых, из статей, а также из опыта взаимодействия с их продуктами (взять несколько амазоновских сайтов, например).
Efimov_pr
04.01.2024 12:00Потом выяснится, что из Мелкософта, например) Когда челу влепят иск за какое-нибудь нарушение NDA. Но он окажется негром-геем и отсудит лям за харассмент.
fire64
04.01.2024 12:00+32Сидели инженеры в отделе, делали вид, что работали, менеджеры пилили бюджет и все были довольны... Нет, надо было прийти великому оптимизатору, которому хотелось бы навести порядок.
Нет, я понимаю автора, он хотел прибавку к ЗП хорошую, но по факту, чудо что его после этого не уволили.
shasoftX
04.01.2024 12:00+13чудо что его после этого не уволили.
Он сэкономил полляма, так что сразу уволить нельзя. Подождут немного и уволят.
fire64
04.01.2024 12:00+3На самом деле была похожая история, только с другими цифрами.
Менеджер в компании, где я работал, хотел в последних числах декабря отгрузку сделать на достаточно серьезную сумму, не согласовывая ее с бухгалтером. В итоге компания в конце года попала бы на НДС в районе 200 тысяч рублей, которые не чем было бы закрыть.
После моего вмешательства, отгрузку перенесли на начало января, тем самым позволив перенести расходы на следующий год.
Получил с этого премию 20к за финансовую экономию от дира и подзатыльник от менеджера, за то что лезу куда не следует и мешаю выполнять ему план продаж.
shasoftX
04.01.2024 12:00+11Ну так вполне логично. Менеджер хотел сделать план ДО Нового Года чтобы получить премию поэтому ему было пофиг на эти переплаты. А благодаря вам он, вероятно, пролетел.
akakoychenko
04.01.2024 12:00+11Где-то читал о случае еще интереснее. Там или аудитор, или новый дата аналитик заметил, что, почему-то, почти все заказы, оформленные в последние пару дней каждого месяца, в итоге отменяются.
В итоге выяснилось, что где-то числа 3-го, или 5-го подбивали итоги предыдущего месяца и выписывали премии менеджерам за заказы с датой создания этого месяца. Вот менеджеры, начиная с числа 29-го, и начинали создавать заказы от балды, чтобы, как только месяц рассчитают, сразу же их отменить.spbru
04.01.2024 12:00+1Во всех нормальных компаниях бонусы выплачивают за полностью отгруженный и оплаченный заказ. И документы должны быть подписаны.
Странно, что где-то можно получить премию просто за циферки забитые в 1с.
akakoychenko
04.01.2024 12:00Мне кажется, что это превратит алгоритм расчёта бонусов в ад, если речь о б2б продукте с долгим циклом продаж, сложными расчётами, всякими факторингами, лизингами, рассрочками, пилотными проектами и так далее.
Если сделать втупую, и просто, условно, платить 3% от любого оплаченного инвойса, то менеджеры-новички вообще не будут иметь возможности выйти на хороший доход за первые год-два (и, соответственно, будут выгорать быстрее, чем пойдёт поток, сопоставимый со ставкой), а "старички", наоборот, будут рубить серьёзное бабло на старых заказах ничего не делая, и будут почивать на лаврах.
Если же иметь KPI и платить в зависимости от его выполнения, то, снова таки, бонусный период будет, условно, Q1 2023, а понимание, кто достоин бонуса, появится где-то к новому году, что будет весьма странным, ведь все уже и забыли, что там, 9 месяцев назад, было.
Короче, как не крути, но, для продукта с неочевидным путем от создания заказа до поступления платежа, всегда придётся делать какую-то аппроксимацию успеха менеджера по продажам, которая с одной стороны коррелирует с доходом (или даже чистой прибылью, если у менеджера есть большая вольность в плане определения цены), а с другой - позволяет рассчитать этот показатель быстро, чтобы можно было оценить работу и дать обратную связь не через год.
rinac
04.01.2024 12:00Ну так аппроксимация это же не плохо, только не выплачиваете сразу всю премию, а, скажем, треть. Полную же премию выдавать в конце года по всем итогам.
Ivan22
04.01.2024 12:00+1будь менеджер поумнее, договорился бы с итшником потихому, чтобы отчет о продажах делал по дате договора, а не отгрузки, и вуаля - план сделан
piton_nsk
04.01.2024 12:00+1Когда это выяснится, а это выяснится, "айтишнику" кирдык.
Ivan22
04.01.2024 12:00+1пф, я такое наблюдал лично и не в одном месте, ничего никому не было
piton_nsk
04.01.2024 12:00Либо мы имеем в виду разные вещи и говорим о разном, либо вы работали в каких-то очень странных местах.
Ivan22
04.01.2024 12:00обычные места, от банков до иностранных компаний, где менеджеры абьюзили расчет KPI в своих личных интересах.
piton_nsk
04.01.2024 12:00А в чем интерес айтишника и как так получалось что изменения в отчетах никто не замечал? Или всем пофиг было что сначала считалось так, потом сяк? И как вообще такие изменения делались, что в таске писали, кто таску заводил?
SamaRazor
04.01.2024 12:00+4Как же меня бесит этот корпорейт буллщит.
Выдайте премию продажнику, выдайте тому кто нашел, все равно все в плюсе.
Тем более учитывая что дошли до директора, а не двумя уровнями ниже - почему бы и не решить этот вопрос.
evoq
04.01.2024 12:00вообще корпорации частный случай. если присмотритесь, то это работает во всех соц. группах разного рода. это просто психология, а именно эгоизм, тщеславие, лень, боязнь, зависть, жадность. все эти аспекты влияют на тактики и стратегии поведения людей и соц.групп. после начала войны этот буллшит более ярко выражен на уровне государства даже, нежели в корпорациях. хотя для тех кто приглядывался и до войны это видел. просто в корпорациях мирок меньше и видно лучше яркие случаи, но амплитуда случаев все-таки поменьше, нежели при ситуациях вывода граждан и властей из зоны комфорта или хотя бы зоны ожиданий.
Hlad
04.01.2024 12:00+2Я наоборот видел: когда отгрузку товара, который просто пипец, как нужен клиенту ДО нового года, пытались перенести на "после праздников". Со словами "ну, за декабрь мы план по любому уже сорвали, эта отгрузка нас не спасёт, а так хоть за январь премию получим"
LeetCode_Monkey
04.01.2024 12:00Сидели инженеры в отделе, делали вид, что работали, менеджеры пилили бюджет и все были довольны... Нет, надо было прийти великому оптимизатору, которому хотелось бы навести порядок.
Вот вот. Или автор нашёл и вскрыл чью-то консерву, припасёную на случай когда надо срочно бустануть свой KPI. Ну, молодо, зелено. Подрастёт, поймёт как надо работать в корпорациях.
Breathe_the_pressure
04.01.2024 12:00+11Да в любой компании можно чего-нибудь наэкономить, но этого никто не будет делать по многим причинам. Наиболее емкая - инициатива наказуема.
Отъявленные оптимизаторы иногда забывают, что они как наёмный персонал, зарабатывают деньги не компании, а себе, используя компанию.
ALexhha
04.01.2024 12:00+1It depends. У нас есть finops team, которая следит чтобы ты в облаке не накрутил счет на 100500$. И если что то не так - сразу сообщают тебе.
rusik2293
04.01.2024 12:00Что за облако такое странное? В Яндекс, например, администратору и так все видно, а не администратор вряд ли может что-то накрутить
Ratenti
04.01.2024 12:00+3Так администратор может не следить за суммами, а вот команда это и контролирует
ALexhha
04.01.2024 12:00У нас тут сотни devops, а к биллингу имеют доступ далеко не все. Плюс вот ты начал работать и будешь каждый час смотреть счет ?
P.S
Облака стандартные AWS, GCP, Azure
Loggus66
04.01.2024 12:00Зачем всем иметь доступ к биллингу? Сделайте какой-нибудь dashboard, в Grafana, пусть сервисная учётка смотрит, alerts туда же, и команда сможет получать уведомления по какому-нибудь порогу или irate.
Хорошо, когда есть целый finops отдел для озвучивания мониторинга и придумывания метрик вместо той же обязанности на SRE/админах, когда и админишь и отвечаешь перед начальниками, почему внезапно счёт вырос и как можно сэкономить. Я вам по-хорошему завидую.
ALexhha
04.01.2024 12:00Та понятно, что костылей можно напридумать сколько угодно, но удобно когда это делает отдельная команда, а ты концентрируешься на задаче.
Аналогично и с security. Отдельная команда следит и мониторит. Тебе только уведомления приходят
sdfgdsfdsfsdfdsf
04.01.2024 12:00Вопрос в цене
ALexhha
04.01.2024 12:00Вопрос в цене
не только в ней, но еще и в удобстве.
Если очень приближенно, то представим, что каждый девопс тратит 15-30 минут в день на подобного рода мониторинги. А теперь умножаем на 100, и получается, что намного выгоднее взять 3-5 человек под это дело, чем забирать время у каждого человека. Я конечно сильно утрировал, но суть примерно такая
jackcrane
04.01.2024 12:00+30200 метров джаваскрипта грузят текста 300 байт
я элита программист а не какой-то раздолбай.
megamrmax
04.01.2024 12:00+14неа. а вот как только прочитаете до дыр пару книг про паттерны проектирования и зарешаете 100500 задачек по алгоритмам и на хабре про это напишите - вот тогда поймете, что ваши 200 метров это говнокод - должно быть минимум в 5 раз больше!
Ivan22
04.01.2024 12:00+11еще через полгода они догадаются что PBI зарпросам можно вместо варехауса размером XL выдавать X-Small - и съекономят еще полмиллиона.
kiloper
04.01.2024 12:00+7подобное сплошь и рядом, парень хотел признания и денег, а всего лишь сделал ту работу, за которую ему платят
dimaaannn
04.01.2024 12:00+5Ведь тогда мне придется «раскрыть» некоторых менеджеров, которые мне нравятся
Почему вам нравятся некомпетентные бездельники?
Прикрывать их стоит лишь в нескольких случаях:Вы извлечёте из этого финансовый профит
Вас переведут на более комфортную должность
На их место будут поставлены ещё более некомпетентные люди
Зачем оставаться в фирме где в благодарность за результат вам не дают денег и накидывают работу которой вы не хотите заниматься? Или у вас есть сомнения в поиске более подходящего места?
vassabi
04.01.2024 12:00+2фразы
Я нанял своего друга (большого поклонника кумовства)
и
Они притворяются настоящим бизнесом, и совет директоров считает, что их костюм сидит убедительно.
намекают, что это какой-то локальный отдел большой (возможно транснациональной) конторы.
Вы не будете ссориться с родственниками и друзьями в странах, где большие семейные кланы ;)
alavd
04.01.2024 12:00Я нанял своего друга (большого поклонника кумовства) - представилась схема - амер читающий доки без паники и индус лопатящий код на удаленке в субнаеме ))
autuna
04.01.2024 12:00+7Я не настолько опытный инженер, как многие из моих читателей, но способен читать документацию, не впадая в панику, — что в моей стране считается высокой квалификацией.
Расскажите мне, плиз, что это за страна. Ну пожалуйста....
Didimus
04.01.2024 12:00+1Индия?
olartamonov
04.01.2024 12:00+3Для Индии английский слишком хороший.
P.S. Австралия.
Ratenti
04.01.2024 12:00+1Написано же в этой статье, что он живёт в Австралии по визе
https://ludic.mataroa.blog/blog/performing-technical-responsibility/
Dolios
04.01.2024 12:00+1Тут он про Австралию пишет: https://ludic.mataroa.blog/blog/performing-technical-responsibility/
vashu1
04.01.2024 12:00+4Теперь история наоборот.
Тестовый энвайронмент аналогичный продакшону выключается на ночь и выходные. Как то раз для тестирования его держат включенным 24/7 в течении месяца с лишним.
Какой-то вумный оптимизатор это видит и без согласования с командой резервирует инстансы.
Самое смешное - цена на зарезервированные инстансы не отличается от той что платилась раньше.
Теперь выключать энв бесполезно. Расходы взлетают - дополнительные полмиллиона в год.
Всем по барабану, даже переговоры об отключении резервирования с облаком ведут вяленько. Через 9 месяцев случается очередной месяц рекордных трат по компании, начинается кампания экономии и наконец статус резервирования убирают за 3 месяца до того как он бы закончился сам собой.
smokevadim
04.01.2024 12:00А почему резервируемые инстансы не отличаются по цене? Судя по комментарию это были On-Demand? Или всё-таки Spot?
vashu1
04.01.2024 12:00Строго говоря отличались. Но там туча дополнительных скидок и программ, так что на самые дорогие разница получалась всего единицы центов в час. Гримасы ценообразования.
Jeshua
04.01.2024 12:00+4Как же тяжело читать англоязычные тексты, даже в переводе. Они там совсем не умеют мысли линейно выражать? Как они вообще друг друга понимают с такой кашей в голове?
ekini
04.01.2024 12:00+2Не смог читать в переводе, но в оригинале вполне ясно и понятно. Наверное, перевод такой.
propell-ant
04.01.2024 12:00+1Есть вещи и пострашнее: например перевод с русского на английский в стиле "Пользователи, которым нужен отчет ..." => "Users, for whom the report is needed ..."
Люди ведь всерьез полагают, что слова в разных языках должны следовать в одинаковом порядке, как в гугл-переводчике.
olartamonov
04.01.2024 12:00Это не «не умеют», это в принципе другая структура построения фраз в другом языке. Она по-своему прикольная, хотя с непривычки и трудно дешифруемая — но, например, я сейчас ткнулся в оригинал, мне читается легко и приятно. Но у меня письменный английский где-то там в районе «очень маленькие яйца», я художественную литературу в оригинале читаю.
А в переводе получается действительно ужасно, потому что вы в русском ждёте характерной для русского языка структуры, идиом, выражений — а оно по большей части калькой с английского дано. И это всё царапает мозг.
Хорошо перевести художественный текст на русский — сложно, и это скорее будет пересказ, чем перевод.
mgyk
04.01.2024 12:00+6Автор статьи действительно сделал ужасную вещь. Откручивал бы каждый месяц на 1 минуту. Получил бы бонус в конце года который хотел. Сразу было бы видно, что человек занят и усердно работает.
Ratenti
04.01.2024 12:00+1Так ему по agile должны были карточку выдать discovery чтобы он мог что-то делать
NNikolay
04.01.2024 12:00+3Что это вообще за слова такие? Какие карточки? Какой дискавери? Я ничего не понял. Его попросили поискать пути снизить косты?
arheops
04.01.2024 12:00+1По агайл он не может делать то, чего его не попросили. Он может попросить, чтоб ему выдали разрешение - карточку, если ее выдадут то он может делать. Дискавери - исследовательская карточка(результат документ с описанием чего делать, а не код)
Тоесть человек ЗНАЕТ как снизить косты, но ему нужен документальный след, чтоб работа была оплачена и зачтена. Он должен выступить на спринте и сказать, хочу вот это делать, знаю как. Менеджер решит да-нет и тогда через месяц-другой-год он получит разрешение это делать.
khacsam
04.01.2024 12:00+2Менеджеры - суть зло! В любой сфере.
mrise
04.01.2024 12:00+5Ваше утверждение ложно.
Менеджеры сами по себе - это замечательный инструмент для разработчика, который позволяет переложить с больной головы на здоровую такие вещи как планирование, аудит сроков, работу с командой, работу с заказчиками, etc., etc.
Я не могу отрицать, что построенная директорами система управления порой, особенно в больших компаниях, стимулирует их заниматься какой-то нецелевое деятельностью, вроде офисной политики и покраской красных лампочек метрик в зелёный.
Однако неправильное или нецелевое использование инструментов не делает сами инструменты плохими. Умная команда из пяти разрабов-стартаперов скорее всего сама наймёт себе менеджера, потому что иначе бардак на проекте будет расти и расти.
eton65
04.01.2024 12:00+1Умная команда из пяти разрабов-стартаперов скорее всего сама наймёт себе менеджера, потому что иначе бардак на проекте будет расти и расти
Вы говорите о менеджере, назначенном снизу - да, тут польза конечно есть. Менеджеры же, назначенные сверху, это почти 100% источники проблем.
mrise
04.01.2024 12:00+3Я бы даже сказал, что в компаниях с жёсткой централизованной структурой, где у сотрудников нет права выбора или даже возможности высказаться, и начальники ставятся сверху в приказном порядке, всегда будет огромное колличество растрат, гонки за сломанными показателями, самодурства, подковёрных игр, фаворитизма, непотизма, дурацких неработающих правил и дырявых процессов.
Я бы так сказал, но Хабр не для политики, поэтому я благоразумно промолчу.
vodevel
04.01.2024 12:00+26Тоже как-то сэкономил компании лям благодаря своим кривым рукам и... Хабрахабру.
Компания использовала сторонний (но отечественный) сервис по вводу/выводу денег пользователей. Во время очередного рефакторинга я накосячил, и ID кошелька превратился в 0. Удивившись, что API не выдало ошибки, капнул чуть глубже, и... пробил дно)
Оказалось, что пользователь может вывести деньги с чужих кошельков на свои реквизиты всего парой строчек JS.
Дрожащими от предвкушения руками расписал тикет безопасности в техподдержку сервиса. Уже думал, куда поставить феррари, которую мне безусловно вручат за найденную уязвимость. Все-таки даже у нас там было пользовательских кошельков на сумму больше лимона y.e., а ведь были конторы и покрупнее. Но не тут-то было.
Ответили не сразу и без энтузиазма. В максимально сдержанном стиле поблагодарили за подробное описание и сказали, что пофиксят проблему в одном из следующих плановых релизов.
Я выпал в осадок... В течение недели пытался достучаться до них, объясняя всю критичность найденного. Бесполезно. Отвечали медленно, неохотно. Ускорять выход фикса не собирались, давать вознаграждение - тем более.
Контраст между ожиданием и реальностью был так силен, что я даже подумал, что веду беседу с неэтичными сотрудниками, которые сами собираются воспользоваться уязвимостью. Попросил связать с лидом отдела безопасности. Отказали и добавили, что собираются закрыть тикет, если у меня больше нет вопросов.
И тогда, просто из вредности, я написал примерно так: "Вопросов нет. Просто не хотел, чтобы ваше руководство удивилось, когда прочтет об этом на Хабре".
И тут случилось чудо! Ответ последовал буквально в считанные минуты! В нем просили встречи на уровне руководителей компании в удобное нам время. По итогу, выдали бессрочный платиновый аккаунт сервиса, а меня назвали молодцом.
P.S. Кстати, в то время у меня даже не было аккаунта на Хабре xD
Wesha
04.01.2024 12:00+3И тут случилось чудо! Ответ последовал буквально в считанные минуты!
"Ёж — птица гордая: пока не пнёшь — ни за что не полетит!" (c)
Fodin
04.01.2024 12:00+1Уязвимость-то пофиксили по-итогу?
vodevel
04.01.2024 12:00+1Да) Причем сначала втихую пропатчили так, чтобы при попытке использовать уязвимость генерилась сырая ошибка. Затем выпустили официальное обновление, в котором уже возвращался JSON. В описании к релизу был пункт аля "Исправлен формат ответа для некорректных сценариев использования API".
auddu_k
Ах, ах, ах, как тут сделать репост ????