Full-stack web developer/DevOps od 2005 roku. Zaczynając jako ekspert od ActionScript przez całą swoją karierę zdobywał doświadczenie komercyjne kodując w PHP, JavaScript, Node.js i innych technologiach, o których już nikt nie pamięta, aby ostatecznie wybrać TypeScript jako wszechstronny język. Od samego początku związany z tworzeniem aplikacji i stron internetowych, desktopowych opartych o technologie webowe, a także mało i wielkoformatowych ekspozycji multimedialnych i interaktywnych. Od 2011 założyciel software house Qunabu, od 2019 Chief Technology Officer Escola. Twórca pierwszego headlessowego open sourcewego systemy klasy LMS o nazwie Wellms. Autor podcastów technologicznych Escola DevTalk i Filozofii programowania, promotor dzielenia się wiedzą. Trener warsztatów, Juror hackatonów i wielokrony prelegent konferencji technologicznych. Organizator Gdańsk TypeScript Meetup, Zafascynowany funkcyjnym programowaniem, testowaniem automatycznym, historią programowania i DevOpsem.
"O czym nie powie nam metryka 100% Code Coverage?"
Metryka 100% pokrycia kodu (code coverage) stała się często używanym buzzwordem w świecie rozwoju oprogramowania, sugerującym doskonałą jakość testowania. Jednak warto pamiętać, że osiągnięcie pełnego pokrycia kodu nie gwarantuje, że wszystkie możliwe przypadki testowe zostały uwzględnione. Skupienie się wyłącznie na metryce 100% code coverage może prowadzić do nadmiernego skomplikowania testów lub tworzenia testów, które w rzeczywistości nie sprawdzają istotnych aspektów kodu. Ważne jest, aby używać metryki code coverage jako jednego z wielu wskaźników jakości testów, równocześnie skupiając się na znalezieniu i eliminowaniu rzeczywistych słabych punktów w testowaniu i zapewnieniu kompleksowego sprawdzenia logiki i funkcjonalności aplikacji.
Testy mutacyjne to rodzaj testów oprogramowania, które polegają na wprowadzaniu celowo wprowadzanych błędów (tzw. mutacji) do kodu programu w celu oceny jakości testów jednostkowych. W ramach testów mutacyjnych, program jest poddawany serii mutacji, a następnie uruchamiane są testy, aby sprawdzić, czy testy wykryją te zmiany.
Fuzz testing, znane również jako testowanie oparte na przypadkowości, to technika testowania oprogramowania, która polega na wprowadzaniu losowych, zniekształconych lub nieprawidłowych danych wejściowych do programu w celu wykrycia błędów lub luk w zabezpieczeniach. Fuzz testing pozwala na zautomatyzowane generowanie ogromnej liczby testów, co może pomóc w wykryciu trudno dostrzegalnych błędów w oprogramowaniu.
Poziom średnio zaawansowany