Всім привіт. З вами Олександр Романов — автор каналу 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? - як зрозуміти, що вам вже пора йти “далі” з тестування та які можливі шляхи розвитку після сіньйора та 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 - дуже “базований” цикл статей про те, що таке те саме тестабіліті
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 самі створюють баги, якщо падають. Але дуже часто таких автоматичних багів стає дуже багато. Як боротись з дублікатами багів у масштабі цілого Гугла?
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 тепер зручніше.
Інженерія
On The Acoustics of Cocktail Parties - пост для справжніх “nerd`ів”, в якому наводяться математичні докази! того, чому на вечірці усі рано чи пізно починають говорити голосно та перекрикувати один одного
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? - коротка відповідь про те, скільки років повинно бути “справжньому” сіньору
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 - поради менеджерам про те, що простими розмовами відсутність скілів в людини не компенсуєш