Обговорюємо постмортем Djinni

О 23:50 в четверми публікували реліз, над яким працювали біля місяця і який мав зробити роботу з резюме більш зручною та безпечною для кандидатів.

Були певні проблеми під час деплою, але о 2 ночі виглядало так, що все піднялось і працює і команда пішла спати

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

Потенціал помилок вище, час на те щоб їх виправити менше. Людей доступних до того щоб терміново поремонтувати менше.

варто подумати як в наступному разі викатувати реліз не в такій час.

наприклад, якщо без даунтайму не можливо, варто прокомуникувати що в період сайт не буде доступен.

Це нормальна бізнес практика, особливо якщо період чітко спрогнозован і завчасно прокомунікован.

Наш скрипт видалив 300 тис «outdated» файлів з резюме, але деякі з них були насправді у використанні і через особливості NFS volume коли почався робочий день всі ці 404 запити спрацювали як DDOS сайту.

єдине чому мене навчило життя це тому що не варто ніколи нічого не видаляти. Диск: дешева штука в сучасному світі.

Або, зробить фейкове видалення, коли деякі файли перестають бути в доступі, і якщо до них не звертаються за місяць, то можна зробити видалення вже по справжньому.

Ми пробували різні варіанти, щоб повернути базу резюме і наш файловий storage до працюючого стану, але врешті решт нам довелось піднімати бекап за 1 червня.

Жахливий експеріенс.

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

Ніхто не переживає більше, ніж розробники, які цей реліз готували. Підтримайте їх сердечком, будь ласка, їм це потрібно.

будь ласка, ніколи не переживайте, це нерви, погано для здоровʼя та апетиту.

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

Якщо із за кожної помилки переживати ніякого здоровʼя не вистачить.

Дуже дякую вам що ви все поправили!

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

👍ПодобаєтьсяСподобалось5
До обраногоВ обраному1
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Я читав цей email ... мене СИЛЬНО вразило що бекап БД був на тільки початок місяця...

1 червня

" - У вас ж є щось з бєкапів?
— Так! Є скріншоти!
— Може всежтаки снепшоти ?
— Ні... тільки скріншоти...."

Інші деталі нема сенсу обговорювати, так можливо часто апгрейди шли без проблем, і цьогу разу допустилися якись помилок, не тестували міграцію і апгрейд на ПРОД лайк обсягах і так інше...
АЛЕ бекапи для відновлення системи та даних робляться САМЕ на випадок НЕпрогнозованих ситуацій, а НЕ ДЛЯ прогнозованих.

В статті йдеться про випадкове видалення файлів, свіжий бекап бд ніяк не допоможе.

Це не міняє підходу. Якщо дані зберігалися в файловій системі (не в БД або чомусь іншому що не має вбудованої підтримки версійності) — то треба мати бекап цих файлів.
Я мав на увазі просто бекап даних — даних що зберігаються в системі, та можуть бути модіфіковані або видалені.

Дякую команді Djinni за видалення моїх резюме, які у них залишилися після видалення мого облікового запису.

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

Базово як це працює. Наприклад, є у вас є обліковий запис з даними на work.ua або rabota.ua — вам ніколи не прийдуть вакансії на Principal і вище. Причина — з погляду бізнесу такі кандидати не якшаються із сайтами, де дуже низька зарплата по ринку.

Аналогічно і з Djinni. Раніше, я видалив свій аккаунт, але все одно отримував від рекрутерів пропозиції на 25-50 доларів на годину.

А ось сьогодні — на $90/h! Тож можливо комусь теж пощастить!

Розумію, що парадоксально — але аналітикам платять не за розрахунок площ, а за додатковий прибуток/економію для компанії. Який взагалі може не корелювати зі знанням формул.

А ось сьогодні — на $90/h! Тож можливо комусь теж пощастить!

О, це ж Леня Голубков www.youtube.com/watch?v=xA1fVyHaNVA
:) Улюблений маркетинговий персонаж електорату.

Чому це нас навчило? з Джині як роботодавцем і сайтем краще не працювать

Це не так працює. Дивіться на конверсію, для шукача це вихід на роботодавців та швидкість знайдення місця роботи із хорошими умовами. Для роботодавця це швидкість закриття вакансії, якісним кандидатом. Тут написали, що було втрачено 22 тисячі резюме, не знаю як це взагалі вдалось врахувати і т.д. в більшості випадків були би зверення до підтримки «а де ?» чи якісь гнівні пости і т.п. тобто ніхто би навіть не помітив нічого, доки не було звернень в сапорт.
ІМХО це усе просто маркетингова мулька, дропнули шум — та сворили прециедент, із «так вийшло» щоб народ прийшов перевірити та оновити данні. Хто назад не прийде — той не прийде і правильно дропнули тоді. Тобто виглядає усе так, що процесс насправді на 100% під контролем.

Мене більше час роботи співробітників цікавить... інше пояснення не потребує, розуміння цього ресурсу у кожного є

Підтримую. Дві години ночі. Ніхто не загине від того, що реліз буде зранку.

Якісний, це такий який максимально чітко підходить під профіль вакансії, бо якість як відомо, це сукупність властивостей які відповідають придатності чогось бути викорастаним за призначенням. Відповідно профіль вакансії є детальним описом вимог на певну посаду в компанії. Включає вимоги до : освіти, досвіду роботи, професійних знань та навичок (hard skills), та особистих навичок (soft skills) наприклад рівня вододіння іноземними мовами, та знання іноземної бізнес культури і правил бізнес комунікації.
Ведення курсів із Exel для великої группи посад, швидше за усе є не релевантним досвідом не подібним для цієї посади і який не буде враховуватись наймаючис менеджером, принаймні в позитивному ключі, а навпаки може трактуватись як потенційний конфлікт інтересів.
P.S. От чого не вистачає в того же Джинні, це якраз того, що переважна кількість наймаючих менеджерів не вміють формувати профіль вакансії в не завжлм є доаомога поофесійногг HR, так само як і більшість кандидатів не вміють складати CV, усе ще.

сенйор і такі нісенітниці кажете.

Підтримайте їх сердечком, будь ласка, їм це потрібно.
  • Дайте мені, будь ласка, оту червону плюшеву сраку...
  • Шановний, як вам не соромно, це серце!
  • Пані, я кардіохірург з двадцятипʼятирічним стажем, я знаю як виглядає серце. Так що дайте мені оту червону сраку.
Диск: дешева штука в сучасному світі

Як би ти знав, що MS бере з корпорацій $13000 на місяць за 10 Tb простору під Application Insights, то так би не писав :)

все правильно я сказала, якщо в вас vendor lock in, то vendor може виставити вам абсолютно будь-яку ціну з голови.

Ціна диска ось:

en.wikipedia.org/...​er_memory_and_storage.svg

en.wikipedia.org/...​er_memory_and_storage.svg

До речі, вже як два роки ціни на HDD (не SSD) ростуть, а не падають. Знаю це, бо кожні півроку купляю HDD на 18 Tb, і от помітив таку тенденцію.

А нащо кожні півроку купувати 18 Тб? Якщо є потреба в зберіганні подібних об’ємів, то є сенс один раз витратитись на LTO писалку, і картриджі до неї. Бо плівка має гарантію зберігання 30 років, а диск може посипатись, від того, що просто полежав декілька років. Плюс HDD зараз мало того, що дорогі, так виробники ще й на механіці економлять.

Ну у вартість Application Insights входить щось набагато більше, чим просто storage, чи не так? Хоча це не відміняє факт того, що ціна дійсно завищена в порівнянні з ціною аналогічного за ємністю кластеру Azure Data Explorer.

У інформаційного шуму насправді суттєва паразитна ціна, це взагалі проблема усієї мережі.
Особливо актуальна для усіх прибуткових систем, бо вони створюють паразитну собівартість. Зазвичай шум накопичується на першочергових етапах розвитку бізнесу, бо банальну кількість інформації викорсиовують як маркетингові KPI, зокрема для внвесторів, доки проект не вийшов на прибутки та окупність якщо він взагалі не нього вийде.
Нажаль, позбавлення шуму для сталих бізнесів потім перетвориться на дуже велику проблему, і технічну і організаційну.

Або, зробить фейкове видалення, коли деякі файли перестають бути в доступі, і якщо до них не звертаються за місяць, то можна зробити видалення вже по справжньому.

Ось.

Диск: дешева штука в сучасному світі.

Ні. Тому ви праві:

не варто ніколи нічого не видаляти

Автор права, нема чого інженерів заставляти вночі працювати

Так джині і треба

А джині в Україні ще актуальний?
Кількість вакансій там щось пічаль -_-

до мене регулярно пишуть рекрутери звідкі

Хмм за моїм фільтром як було майже пусто так нічого особливо не змінилось.
До війни було 12-16 сторінок з вакансіями зараз ВСЬОГО 12 вакансій )))

я здивований що команди рівня Джинні роблять бекап раз в 3-4тижні — хорошою практикою є зробити бекап перед релізом, тоді відкат до нього матиме мінімальний ефект

а шо дивного то?
судячи з якості ресурсу і його «розвитку» я не здивуюсь якщо там «команда» усього в дві людини, причому другого взяли коли перший вже почав не вивозити

там менеджерів, аналітиків і прочих «спеціалістів» купа, а ось с технічної частини скоріш за все пара фулстеків і все

Респект що не було типового булшіта про компіляцію, ддос і все таке інше. Чесність в комунікації тільки піднімає довіру

Наш скрипт видалив 300 тис «outdated» файлів з резюме, але деякі з них були насправді у використанні

22 тис. актуальних резюме видалили, поганенько скрипт тестували. Треба напевно розділити маркування на видалення (перейменувати) і саме видалення файлів. Всі нормальні адміни насправді так і роблять — замість rm -rf database/ — mv database database.bak

У приличного софта для массовых изменений всегда есть режим dry-run.

Дивно що з бази не зробили бакап. А взагалі це усе схоже на маркетингову пургу, щоби заохотити людей прийти оновити CV. Насправді тримати в себе гигабайти сміттєвих застарілих данних, які не монетизуються дуже суттєва фінансова проблема для будь якого сервісу. Вони виїдають грощі на диски, кеши, погано впливають на швидкість пошуку тощо. А жодному рекрутеру нафіг не теба резюме 5-ти річної давнини. В нормальній умові сервіс висилає email абоненту кожні пів року здійснити лновлення, після чого наприклад архівує акант, а ще через пів року цей архів видаляється якщо не відновленно.
В e-commerce застарілі та твін (коли оне і та же особа рееструється по дікілька разів) акаунти покупців це взагалі суттєва проблема, там йдеться про терабайти не актуальних данних які створють дуже суттєву паразитну собівартість.

Яким чином бекап бд допоможе відновити файли?)

Мені цікаво як вони взагалі розрізняють актуальні і не актуальні резюме? Бо якщо є сталий алгоритм і при тому не було зроблено бакап, власне і не зроблені бакграунд алгоритми яки чистять нойс в риалтаймі, ну тоді лажа трапилась. Тим не менше можна перечитати користувацьку домовленість, там 100% дисклеймер із відмовою від гарантій.
Та це усе набагато більше схоже на банальний маркетинг, з ціллю покращити якість данних із актуальністю резюме та підняти воронку продажів і конверсію сервісів. Це ну дуже в стилі Макса, який полюбляє шокові методи. Розсилати «будьласка оновіть CV» працює сильно гірше за «Ваше CV видалено! Негайно оновіть!». Як відомо найцікавіший кандидат, це той який не шукає роботу, а просто зараз працює на конкурента. А нафіг тим хто працює і не шукає нову роботу оновити своювати резюме, окрім як про усяк випадок.

Djinni треба переписати на Go

так проблема виникла не із-за мови взагалі)))

Але якщо б Джинні був написаний на Го, вони змогли б видалити ці резюме набагато швидше)

«кожна жаба своє болото хвалить» XD

І свою гадюку.

Підписатись на коментарі