Всім привіт. З вами Олександр Романов - автор каналу Test Engineering Notes та подкасту Testing Minutes.
Літо пролетіло дуже швидко. Попереду осінь та можливе пожвавлення на ринку праці. Щоб не опинитись за бортом компанії - треба вміти вправно та майстерно володіти вашим “веслом”. (Та збирати докази того, що саме ваше весло приносить найбільше користі). Крім того, підтримка та розвиток ваших скілів - це ваше надійне рятівне коло у бурхливому океані пошуку роботи.
Тестування

- Цікава новина для тих, хто працює з end-to-end Web UI тестами: Microsoft почав бета тестування хмарної платформи для запуску тестів на Playwright. 
Теорія
- Велика стаття про деякі з останніх багів в безпеці та чи можна було їх уникнути якщо у вас є достатньо розвинута культура тестування. 
- The Very Idea of Test Cases - дуже формальна та теоретична розповідь про те, що таке тест кейси з математичної та інженерної точки зору. 
- Mastering T-Shaped Skills - багато хто говорить, що треба розвиватись у “різні боки” та бути T-Shape спеціалістом. В цій статті автор пояснює, що це значить в контексті автоматизації. 
- Test design techniques - якщо ви забули, які техніки тест дизайну існують, можна трохи освіжити свої знання. 
- Demystifying Unit and Integration Tests: Understanding Their Significance and Differences - чергова стаття, яка намагається пояснити різницю між модульними та інтеграційними тестами. А ви розумієте цю різницю? 
- WHY IS BDD CONFUSED WITH TESTING? - здається питання з BDD вже вирішено. Але ж ні. Час від часу треба нагадувати людям, що цей підхід працює на усюди, завжди та для всіх. А навпаки. 
- Quality gates and Test orchestration strategy in one slide - якщо ви ще не до кінця зрозуміли де та коли запускати ваші (та й не тільки ваші) тести - у цій статті ви знайдете чудову візуалізацію пайплайнів та різних тестів. Для тих, хто ще не розуміє слова пайплайни - ласкаво прошу почитати окрему статтю. 
- Contract Testing: Navigating Through Common Pitfalls - декілька корисних думок щодо того, які підводні камені вас чекають з контрактними тестами. 
Практика
- Testing Language Models (and Prompts) Like We Test Software - велика та змістовна стаття про те, як жеж тестувати оці модні LLM системи типу ChatGPT. А деякі люди ще й застосовують інші цікаві підходи до такого тестування. 
- Deterministic Simulation: A New Era of Distributed System Testing - тестувати розподілені системи важко. Але й тут технології не сидять на місці - постійно створюються нові інструменти та підходи. 
- API Testing 101: A Beginner's Guide to Testing Nodejs APIs with Jest and Supertest - швидко інтро в API тести для новачків у JS та Jest. 
- Test Flakiness – Methods for identifying and dealing with flaky tests - розповідь про те, як Spotify бореться з нестабільними тестами 
- Winning With Imposter Syndrome: A Community Effort - цікавий опис того, як різні люди та компанії допомагають тестувальникам пороботи синдром самозванця. 
- How Google and Facebook Test Code | Simon Stewart - інтерв’ю з розробником Selenium про те, як тестують у великих FAANG компаніях. 
Інструменти
- React testing libraries: A comprehensive comparison - задаєтесь питанням, яку бібліотеку для тестування аппки на React обрати? Тоді рекомендую почитати цю статтю. 
- Effortless Performance Testing with k6: A Comprehensive Guide - практичний гайд про те, що таке той k6 та як почати з ним працювати. 
- Utility to mock REST endpoints in real-time - черговий інструмент для створення моків - MiMock 
- Cypress panic (if there even is one) - стаття, що змусить усіх адептів Cypress заспокоїтись. Бо цей інструмент не “вмирає”, а навпаки - більше й більше розвивається. 
Інженерія

Теорія
- A jargon-free explanation of how AI large language models work - перед тим, як тестувати ChatGPT непогано б зрозуміти, як такі системи працюють. 
- Багато хто з нас працює з протоколом HTTP (так чи інакше). Але чи в курсі ви - які зміни несе HTTP/3? Якщо ні, то маю для вас дуже глибоке пояснення змін у протоколі - у першій, другій та третій частинах. 
- Challenging algorithms and data structures every programmer should try - вивчили усі алгоритми? Нема нічого дійсно складного та цікавого? У цій статті наводяться декілька прикладів нетривіальних алгоритмів. 
- An introduction to graph theory - а тим, хто копає в сторону теорії графів - маю навіть вичерпну книжку з цієї теми. 
- Коли ми стикаємося з проблемами в системах, доволі часто нам спадає думка - а може варто переписати усю систему замість того, щоб намагатись “їсти кактус”? Декілька інженерів мають поради щодо таких ситуацій: порада перша та друга. 
- What we talk about when we talk about System Design - набір порад для тих, хто зайнятий системним дизайном. 
Практика
- Readability: Google's Temple to Engineering Excellence - нащо в Google є окремі люди, що перевіряють пулл реквести на readability? Чи є в цьому сенс? Та чому це важливо? 
- What helps people get comfortable on the command line? - багато хто вважає, що користуватись командною стрічкою - то занадто складно. Але в цій статті Julie Evans розповідає, чому працювати з терміналом може бути корисно та круто. Як приклад - командна стрічка може обробляти дані у 235 разів швидше, ніж Hadoop кластер. Як тобі таке, Ілон? 
- Building and operating a pretty big storage system called S3 - завжди цікаво почитати про еволюцію великих розподілених систем - як-от розподілене сховище даних Amazon S3. 
Інструменти
- Top 6 tools for text-based UML sequence diagrams - архітекторське (й не тільки!). Набір інструментів, щоб малювати UML діаграми. 
Кібербезпека
- Compromised Microsoft Key: More Impactful Than We Thought - ретельний огляд останнього злому Microsoft - коли китайські хакери отримали паролі від поштових аккаунтів менеджерів. 
- Encryption-breaking, password-leaking bug in many AMD CPUs could take months to fix - тут в кінці липня знайшли багу в AMD процессорах. 
- The Bangladesh Bank Heist: A Lesson in Cybersecurity - приклад того, як банківську систему, навіть дуже захищену, можна зламати та “майже вкрасти” мільярд доларів. 
Перфоманс
- Наскільки швидко працює ваш код? Чи можна зробити його ще трохи швидшим? У цій серії статей ви познайомитесь з оптимізацією кешу, викликів фунцій та навіть бранчів у коді. 
Менеджмент, лідерство та софт скіли

- How platform teams get stuff done - як завжди у блозі Мартіна Фаулера - базована стаття із купою практичних прикладів. Цього разу розмова йде про те, хто такі платформені команди та як правильно організувати їх взаємодію з іншими департаментами. 
- What Being a Staff Developer Means at Shopify - основні речі, які робить Staff розробник (на прикладі компанії Shopify) 
- Should I change job? Earn, learn or quit. - коли вам дійсно треба звільнятись та шукати нову роботу? Ця стаття (дуже коротка) допоможе знайти відповідь на таке важливе питання. 
- When your coworker does great work, tell their manager - чи знаєте ви, як правильно хвалити своїх колег? 
- Remote work requires communicating more, less frequently - чим відрізняються комунікації в офісі та на повному ремоуті. 
- Agile performance reviews and compensation - стаття про те, як непросто переглядати зарплати в командах. 
- Managing difficult software engineers - дуже корисна та практична стаття про різні типи проблемних інженерів у команді та як правильно підходити до їх управління. 



