W tym odcinku gościmy Krzysztofa Witczaka z Global App Testing, który zagłębia się w crowdtesting — podejście do testowania wykorzystujące globalną społeczność 80 tys. testerów ze 190 krajów, dostępną 24/7. Krzysztof tłumaczy, jak taki „crowd" pozwala wyłapać edge case'y nie do wykrycia w klasycznym QA, i dlaczego cały model tak mocno przypomina znane z bezpieczeństwa programy Bug Bounty i bug hunting. Rozmowa schodzi też na rolę AI w automatyzacji testów oraz na znaczenie compliance dla firmy działającej w skali globalnej.

KW
Gość: Krzysztof Witczak
Head of Engineering, Global App Testing

Transkrypcja

Pełna transkrypcja odcinka
AndrzejW zasadzie mamy dwóch Krzysztofów. Krzysztof jeden, Krzysztof dwa.
AndrzejO tak, to nawet się łapię. Krzysztof, ja od razu mam takie pytanie, nazwijmy to z grubej rury, uderzę cię. Czym się zajmujesz jako Head of Engineering at Global App Testing? Już nie tylko czym ty się zajmujesz w swojej roli, ale czym w ogóle zajmuje się ta firma? Co robicie? Bo to nazwa coś z testowaniem, ale jest więcej do opowiadania niż mogłoby się wydawać.
AndrzejTo ja mam tutaj już jedno pytanie. Czy mógłbyś trochę przybliżyć i Rzucić jakimś przykładem takich ciekawych jakichś edge case’ów, które można wyłapać właśnie korzystając z usługi crowd testowej, która w takim normalnym wydaniu Quality Assurance gdybyśmy mieli np. swój własny działk trudno byłoby coś takiego wykryć.
AndrzejFajny edge case.
AndrzejI teraz mam takie, nazwijmy to follow up question. Przykładowo mamy taki przypadek, to jak w takim, nie chodzi mi teraz o takie mocno niskopoziomowe operacyjne rzeczy, ale jak na dużych klockach wygląda taka komunikacja takiego testera, bo zakładam, że to nie jest tak, że po prostu mają dostęp do Jiry i zakładają tikety, tylko robią to, mają jakiś proces wokół tego, macie jakieś, nie wiem, apki mobilne czy webowe i to tam jest jakoś wypełniane. Chodzimy głównie o to czy taka osoba testująca działa tak jak normalny tester QA czy nie.
AndrzejI technicznie jeśli jakaś instancja baga wyszła większej ilości osobom to jest to potwierdzenie, że statystycznie jeżeli puścimy tam produkcję to więcej użytkowników będzie też miało styczność z tym bagiem. Nazwijmy to krytyczność albo waga tego baga rośnie.
AndrzejWłaśnie. Bo to dla mnie brzmi jako coś, gdzie osoba, która chciałaby wejść do branży może wykorzystać jako pewnego rodzaju drogę, którą przejść, żeby nauczyć się pewnych rzeczy i wykazać, że umiem to robić.
AndrzejJa od razu.
AndrzejI bug bounties. I bug bounties, dokładnie.
AndrzejJak zacząłeś właśnie o tym mówić, ja słyszałem wcześniej o crowdtestingu, ale tak naprawdę nie wchodziłem w temat. Keyword znałem, ale to tyle. Ale jak zacząłeś o tym mówić, to cały czas mi… To wygląda jak Bug Bounty. Czyli koncept znasz. Tak, tak.
AndrzejTak, tym bardziej, że ja zawsze lubię to powtarzać, bezpieczeństwo jest pod zbiorem jakości, więc No jeśli dbamy o jakość, czyli szukamy bugów, no to podatności to końcem końców bug tylko taki, który ma implikacje związane z bezpieczeństwem, ale to też jest po prostu bug. I podobało mi się też to, że wspomniałeś o tym, że a co jeżeli kilku testerów znajdzie tego samego buga, bo przykładowo w Bug Bounties jest podobny problem, co jeśli kilka osób zgłosi tą samą podatność. i teraz komu zapłacić? Bug Bounties. najczęściej się to rozwiązuje tak, że płaci się temu tej pierwszej osobie, która zgłosiła, a reszcie się mówi, że to jest duplikat. Ale jest też pewnego rodzaju edge case, gdzie co? jeśli jakiś błąd albo podatność zostanie zgłoszona, zostanie oceniona jako informacyjna. Okej, to jest problem, ale nie musimy go rozwiązywać. A potem ktoś inny przyjdzie zgłosić tą samą podatność bez żadnych innych dodatkowych problemów. I jednak pokaże jakiś impakt i krytyczność pójdzie do góry. I teraz kto powinien dostać bounty? Ta pierwsza osoba, która zgłosiła, czy ta druga, która już uargumentowała swoje zgłoszenie? Co o tym myślicie? To pytanie otwarte.
AndrzejTak i teraz biorąc pod uwagę, że no ale to było wcześniej zgłoszone, to teraz powinniście, gdybyście to wyprowadzili wtedy, kiedy wam to zgłosiłem, to by inna osoba nie mogła tego wykorzystać? Więc może priority byłoby niższe i albo byś nie musieli wypłacać albo mniejsze bounty byłoby wypłacone. I technicznie jeżeli naprawicie tego buga no to dlaczego go naprawiać? Wcześniej uważaliście, że nie jest problemem, nie? Co o tym sądzisz? To jest takie pytanie otwarte. Jak ty byś do tego podszedł? Bo ja wiem, że na szybko to trudno powiedzieć, ale Pytasz jak do tego podchodzimy. To jak do tego podchodzicie?
AndrzejPrzy tym abuse to jeszcze dodam, że faktycznie w tym moim przypadku krańcowym, bo miałem taką rozmowę niedawno, parę dni temu z Grzegorzem Niedzielą. Myślę, że słuchacze będą kojarzyć. Na Twitterze i oczywiście counter argument to jest taki, że No ale jeśli będziemy płacić tym, którzy pierwsi zgłosili, no to co stanie się, że ja zgłaszał każdego buga, licząc na to, że jeśli ktoś kiedyś udowodni większą severity, no to ja dostanę za to wypłatę. No był prosty abus. I to pokazuje, że Nie jest łatwo rozwiązywać takie systemy, no bo ludzie też się uczą i tam, gdzie wchodzą do gry pieniądze i jeszcze w momencie, gdy dla tej drugiej strony te pieniądze mogą być znaczące, bo jeżeli ktoś na przykład z kraju trzeciego świata zarabia 100-200 dolarów, to dla niego to jest dość dużo w jego ekosystemie, no to oczywiście, że będzie ta incentywa, żeby oszukiwać system. To jest ludzka natura. Każdy to ma. Mamy to wbudowane.
AndrzejAutomat mógłby odrzucić i czekać, a tak naprawdę no jeśli ktoś już to miał, a nie może teraz tego zrobić, no ale on to już wykonał pracę i zgłosił jedno.
AndrzejJa mam tutaj jeszcze pytanie, już takie w zasadzie biznesowe, bo jesteś wysoko w organizacji. Czy myśleliście kiedyś, czy w ogóle rozważaliście, żeby pójść w tym kierunku? No bo jesteście w takiej pozycji, że technicznie moglibyście rozszerzyć wachlarz usług i po prostu dodać to jako pewną linię biznesową. I znowu ja też nie chcę mówić, że a to po prostu sobie dodamy i będzie. jest jakiś nakład pracy, pieniędzy, to jest koszt, inwestycja. Ale czy w ogóle myśleliście o czymś takim? No bo Bug Bounty to nie jest nic nowego. Te platformy już działają od wielu lat i możecie na nich popatrzeć jako pewnego rodzaju konkurencję lub wzór i przemyśleć, a może byśmy poszli w tym kierunku, a może nie. Mieliście takie przemyślenia w ogóle czy nie?
AndrzejTo jest to co rozumiałeś mi przed nagrywaniem tego odcinka, że w zasadzie to można rozszerzyć nie tylko na produkty takie techniczne jakiejś aplikacji ale również na jakiekolwiek projekty medialne podcasty właśnie czy kanały YouTube. Powszeczka jest wyżej konkurencja jest większa i niejako wskakując już trzeba mieć wyższy poziom niż było to powiedzmy dekadę temu.
AndrzejNiestety, rośnie to w górę.
AndrzejTak, prompt injections i wszystko związane z hackowaniem LLM.
AndrzejJa teraz mam pytanie trochę takie niezwiązane z tym, trochę z boku cię zaatakuje. Jak to wyszło, że z programisty w zasadzie zostałeś head of engineering i w takiej nietypowej domenie biznesowej, no bo wiem, że byłeś inżynierem, ale oprogramowaniem, dewelopowałeś, czyli pisałeś kodzik za pieniądze od 9 do 17.
AndrzejZwykle pisze się dłużej.
AndrzejRuby najlepsze.
AndrzejTak, dokładnie.
AndrzejTeż zauważyłem wzrost.
AndrzejCoś tam się znajdzie w tym security.
AndrzejSzczególnie, że wy działacie worldwide, więc macie klientów z różnych krajów i ja z doświadczenia wiem, że szczególnie jak firmy wychodzą z Polski gdzieś na zagranicę, żeby oferować usługi czy produkty, to wtedy zaczyna się takie przebudzenie pod kątem formalizacji bezpieczeństwa w organizacji, czyli różnego rodzaju ISO czy SOKI.
AndrzejPrzydadzą się.
AndrzejTak, trzeba monitorować cały czas.
AndrzejI reassessment. Ale podobało mi się to stwierdzenie, które użyłeś, że właśnie z monitorowania bąbelkują projekty techniczne, że tak naprawdę te projekty techniczne one się nie biorą znikąd. To nie jest tak, że ktoś tam nagle się budzi i sobie myśli, a kurcze wdrożyłbym sobie coś tam, coś tam. Nie, to z czegoś wynika i teraz jeśli przykładowo jesteśmy niżej w organizacji na poziomie operacyjnym, i chcemy iść wyżej to dobrze zdawać sobie sprawę z czego to wynika bo na koniec dnia biznes po to żeby zarabiać pieniądze a nie po to żeby robić wewnętrzne techniczne projekty, które nie przynoszą pieniędzy.
AndrzejDokładnie.
AndrzejTak, dokładnie. Cel jest taki, żeby to po prostu zrobić i przed samym sobą móc jasno powiedzieć, Albo inwestuję w security, albo w nie. Nie inwestuję, ale mam jakąś argumentację, czemu tego nie robię. I ogólnie szerzej w jakość, bo to dotyczy całej jakości.
AndrzejWipeout?
AndrzejPodlinkujemy, podlinkujemy w odcinku.
AndrzejJa powoli się wystrzelałem.
AndrzejTak, przy czym mi bardzo się podobał ten wątek kompliansowy i ISO, bo często jest, szczególnie od osób, które z krwi i kości są inżynierami, jest trochę takie spychanie tego tematu, że a to tylko komplians, a to jakieś tam ISO, to są wymysły. I z jednej strony tak, ale z drugiej strony nie. I raczej takim zdrowym podejściem jest to o czym wspomniałeś w książce The Phoenix Project, którą znowu po raz kolejny każdemu polecam. To jest klasyka. Każdy kto pracuje w IT powinien przeczytać Phoenix Project. Bo poświetnie opisuje i świetnie pokazuje co jest celem, a cel zależy od kontekstu, więc to jest ważne. Bardzo Ci dziękuję za rozmowę Krzysztofie. Tobie Krzysztofie również. Dziękuję obu Krzysztofom. Dziękuję Andrzeju. I do usłyszenia kiedyś gdzieś w przyszłości.
AndrzejChallenge accepted.
AndrzejBędzie o czym rozmawiać. Będzie. Będzie. Z AIem to będzie sporo zabawy.
Newsletter

Damy Ci znać, gdy opublikujemy coś nowego.

Artykuł albo odcinek podcastu. Bez spamu. W każdej chwili możesz się wypisać.

Zapisując się, akceptujesz politykę prywatności.

Referencje i wzmianki: Global App Testing; portal Testerwork; Bug Bounty i bug hunting; Common Vulnerability Scoring System (CVSS); ISO 27001, SOC 2; RODO (GDPR); Wipeout (open source, anonimizacja danych); OpenAI / GPT; The Phoenix Project.