Test Engineering Notes: Vol.6. Про QA в Microsoft, дублікати багів в Google, злам Retool та розробку аналогів Twitter
Усім привіт.
З вами Олександр Романов — автор каналу Test Engineering Notes та ведучий подкасту Testing Minutes.
Вересень пролетів стрімко й непомітно. Особливо, коли роботи кожного дня вистачає. Але цікавих статей та ресурсів менше не стає — тому запрошую вас до чергової підбірки найцікавішого не тільки зі світу тестування, але й з інженерного та кібербезпекового.
TLDR, або Що у випуску
- як Microsoft позбавилася всіх SDET-ів, та що із цього вийшло;
- коли контрактні тести справді потрібні;
- чи можна автоматизувати перевірку платежів в IOS;
- як інженери в Google боролися з дублікатами багів за допомогою Machine Learning;
- математичний доказ того, чому гучність розмов у великій компанії зростає із часом;
- як «легко» побудувати «вбивць» Twitter — на прикладах Threads та Mastodon;
- чому застосування MFA — це не панацея для вашої кібербезпеки;
- як правильно ставити питання, щоб отримати корисні відповіді;
- багато-багато іншого.
Новини
- 9 вересня я мав нагоду виступити з доповіддю на QA Party Hard у Львові. Якщо вам цікаво послухати про те, «Що таке блокчейн та як його тестувати» — можна подивитися запис мого виступу.
- Подкаст Testing Minutes повернувся з новим сезоном! За цей місяць ми з Артемом Григоренком встигли вже поговорити про відомі баги та про зустрічі 1 на 1. Запрошуємо послухати (попереду ще цікавіше)!
Тестування
- How Microsoft does Quality Assurance (QA) — одна з «найгучніших» статей минулого місяця. У ній йдеться про те, як Microsoft позбавилась від SDET-інженерів та що з цього вийшло.
- Software-testing-mindmaps — величезний набір mindmap-ів на різні теми з тестування. Єдиний мінус — це все скріншоти, тому треба переписувати в xmind.
- Is It Time You Moved On from Quality Engineering? — як зрозуміти, що вам уже час йти «далі» з тестування, та які можливі шляхи розвитку після Senior та QA-ліда.
- The Swiss Cheese Model for Quality Engineering — цікавий підхід до побудови тестової стратегії на прикладі... сиру!
- Contract Tests: A New Hope — цікава розповідь про те, як чергова компанія стикнулася зі складнощами під час інтеграції компонентів між собою та знайшла рішення в контрактних тестах.
- Want to Increase Your Salary as a Tester? Look for a New Job — сувора правда про те, як збільшити свою зарплатню (та чи правда це?).
- The 4 Attributes of Testability: Operability, Observability, Controllability та Reproducibility — дуже «базований» цикл статей про те, що таке testability.
- Manual Testers in an Automated World — чергова стаття від Jason Arbon про те, до чого треба бути готовими ручним тестувальникам в еру тотальної автоматизації та штучного інтелекту.
- Python-mastery — набір матеріалів для тих, хто хоче поглибити свої знання з Python.
- Learn Go with Tests — а якщо ви стартуєте вивчення мови програмування Go, цей безкоштовний гайд точно стане вам у пригоді.
Практика
- Deduplicating software bugs with Machine Learning at Google — автотести в Google самі створюють баги, якщо падають. Але дуже часто таких автоматичних багів стає надто багато. Як боротися з дублікатами багів у масштабі цілого Google?
- How to Write Browser Tests Using Laravel Dusk — у світі PHP створили новий аналог Selenium для роботи з аплікаціями на базі Laravel.
- How to Automate Memory Leak Detection in Your Swift Code with XCTest — а це ще один приклад того, як автоматизувати тестування на різні Memory Leaks в IOS.
- Get started with StoreKit Testing in Xcode — тепер в IOS можна зручно тестувати платежі.
- 5 Snapshot Testing Tools for Android — що таке snapshot-тестування, та які для нього є інструменти в Android.
- The Definitive Guide to API Test Automation With Playwright — великий цикл статей про різні аспекти API-тестування.
- Managing Database Integration With Playwright — як працювати з базами даних в Playwright тестах.
- Efficient Test Debugging with Playwright Trace Viewer — дебажити тести в Playwright тепер стало краще (ніж в Cypress).
Інженерія
- On The Acoustics of Cocktail Parties — пост для справжніх nerd-ів, e якому наводяться математичні докази (!) того, чому на вечірці всі рано чи пізно починають говорити голосно та перекрикувати одне одного.
- An Excruciatingly Detailed Guide To SSH — якщо ви користуєтесь SSH, то корисно було б знати, як він працює та які налаштування є в базових інструментах.
- Death by a thousand microservices — чергова аналітична стаття на тему того, чому бездумний повтор трендів (на прикладі мікросервісів) ні до чого хорошого не призводить.
- Database Architecture — A Deep Dive — непоганий розбір архітектури сучасних баз даних.
- ChatGPT Isn’t Coming for Your Coding Job — «заспокійлива» стаття від Wired про те, що, можливо, ChatGPT усе-таки не забере в розробників роботу. Поки що!
- Why Do Old Books Smell So Good? — ще одна дослідницька стаття, де розкривається таємниця «того самого» запаху старих книжок.
Практичні кейси
- Building Meta’s Threads App (Real-World Engineering Challenges) — не стаття, а ціла оповідь про те, як маленькою командою інженерів та за доволі обмежений час Meta вдалося створити аналог Twitter та залучити аж 100 мільйонів користувачів у перший тиждень. А хто взагалі користується Threads?
- How we reduced the cost of building Twitter at Twitter-scale by 100x — ще одна стаття про те, як будували чергового «вбивцю» Twitter — на цей раз це Mastodon.
- How we built it: Stripe Radar — кейс того, як створювали нову fraud detection-систему в Stripe.
- Processing a 250 TB dataset with Coiled, Dask, and Xarray — пост про те, як сучасними бібліотеками можна дуже швидко обробити 250 терабайтів даних та отримати із цього цікаві інсайти.
- Understanding Request Latency with Profiling — хардкорна стаття про профайлінг в Java.
- Scaling the Instagram Explore recommendations system — практичний кейс того, як працює рекомендаційна система та як її покращували.
Кібербезпека
- When MFA isn’t actually MFA — розповідь про те, як зламали компанію Retool, незважаючи на наявність мульти-факторної аутентифікації, та як зловмисники використали технології deepfake для цього.
- How To Identify Operating System Using TTL Value And Ping Command — чи знали ви, що за тривалістю значення TTL-пакетів можна визначити, яка операційна система встановлена на комп’ютері?
- mTLS: When certificate authentication is done wrong — крутезна стаття про те, як працює протокол TLS, які там були вразливості та як допоможе mTLS.
- Quantum Resistance and the Signal Protocol — захищений месенджер Signal працює «наперед» та вже обрав протокол шифрування, стійкий до зламу на квантових комп’ютерах.
Менеджмент та лідерство
- Asking questions the right way — величезна та дуже корисна стаття про те, як правильно ставити питання колегам, менеджерам та й просто «в інтернетах».
- How many years to senior engineer? — коротка відповідь про те, скільки років повинно бути «справжньому» Senior.
- Never say «no,» but rarely say «yes». — хороша стаття про те, коли варто говорити новим пропозиціям так, а коли — ні.
- The Journey to Staff Engineer: Main takeaways — конспект вебінару від Staff-інженерів провідних компаній. Про те, як же досягти цього рівня у великих компаніях.
- How to Interview Software Developers as a Software Developer — поради про те, як проводити інтерв’ю краще для обох сторін.
- You can’t fix core competency with a stern conversation — поради менеджерам щодо того, що простими розмовами відсутність навичків людини не компенсуєш.
1 коментар
Додати коментар Підписатись на коментаріВідписатись від коментарів