Umiejętności
Agile Methodolgy
Android
Continuous Delivery
Espresso
iOS
Java
Jenkins
Ruby
Selenium
Zarządzanie zespołem
Planowanie testów
Automatyzacja testów
Continous Integration
Języki
angielski
biegły
niemiecki
podstawowy
Doświadczenie zawodowe
Team Leader
Issuu
Zarządzanie zespołem developerów.
Rozwijanie aplikacji mobilnych Android oraz iOS
Budowanie kultury testowania w firmie Issuu.
Jako zespół w ciągu 6 miesięcy odwróciliśmy spadające statystyki obu platform (iOS i Android). Uruchomiłem process Continous Deployment, który umożliwił nam zwiększenie częstotliwości wypuszczania nowych wersji produktu z 2 rocznie do 1 miesięcznie co pozwoliło nam szybciej reagować na opinie naszych użytkowników. Zdecydowanie podnieśliśmy stabilność aplikacji (z 90% crash free na 99,6%) co zaowocowało 40% dłuższym czasem sesji na aktywnego użytkownika.
Całkowicie zmieniliśmy architekturę aplikacji co pozwoliło nam na bezstresowe wprowadzanie zmian w różnych obszarach kodu. Wprowadziliśmy unit testy oraz testy akceptacyjne oraz przejęliśmy kontrolę nad testami manualnymi, dzięki czemu czas poświęcony na wypuszczanie kolejnych wersji zmalał z dwóch tygodni do 1 dnia.
Głównie pracuję w językach: Java, Ruby, Python, Swift.
Rozwijanie aplikacji mobilnych Android oraz iOS
Budowanie kultury testowania w firmie Issuu.
Jako zespół w ciągu 6 miesięcy odwróciliśmy spadające statystyki obu platform (iOS i Android). Uruchomiłem process Continous Deployment, który umożliwił nam zwiększenie częstotliwości wypuszczania nowych wersji produktu z 2 rocznie do 1 miesięcznie co pozwoliło nam szybciej reagować na opinie naszych użytkowników. Zdecydowanie podnieśliśmy stabilność aplikacji (z 90% crash free na 99,6%) co zaowocowało 40% dłuższym czasem sesji na aktywnego użytkownika.
Całkowicie zmieniliśmy architekturę aplikacji co pozwoliło nam na bezstresowe wprowadzanie zmian w różnych obszarach kodu. Wprowadziliśmy unit testy oraz testy akceptacyjne oraz przejęliśmy kontrolę nad testami manualnymi, dzięki czemu czas poświęcony na wypuszczanie kolejnych wersji zmalał z dwóch tygodni do 1 dnia.
Głównie pracuję w językach: Java, Ruby, Python, Swift.
Test Leader
Budowanie kultury testowania w zespołach deweloperów oraz całej firmy.
Utworzenie i zarządzanie zespołem Test Engineering.
Innowacyjne podejście do testowania, gdzie zespół tworzący produkt jest odpowiedzialny za jakość tworzonego oprogramowania. Zespół testów jako serwis, który tworzył narzędzia dla programistów oraz zapewniał wsparcie w zakresie teorii testowania.
Narzędzia, które stworzyłem przyśpieszyły proces produkcji oprogramowania i podniosły poziom jakości produktów:
- framework do testów akceptacyjnych dla platformy Android (napisane w języku Java)
- framework do testów akceptacyjnych dla platformy iOS (Ruby)
- narzędzie do równoległego uruchamiania testów UI (Ruby: https://github.com/ssmiech/rubotium)
- Continous Deployment dla platform iOS i Android (Go, Ruby)
- narzędzie pomagające w ocenie jakości testów
- Mobile Test Lab złożony z telefonów Nexus 4 i komputerów mac mini, na którym każdy deweloper mógł uruchomić testy za pomocą jednej komendy (Scala + Java)
- oraz wiele innych narzędzi i testów
Utworzenie i zarządzanie zespołem Test Engineering.
Innowacyjne podejście do testowania, gdzie zespół tworzący produkt jest odpowiedzialny za jakość tworzonego oprogramowania. Zespół testów jako serwis, który tworzył narzędzia dla programistów oraz zapewniał wsparcie w zakresie teorii testowania.
Narzędzia, które stworzyłem przyśpieszyły proces produkcji oprogramowania i podniosły poziom jakości produktów:
- framework do testów akceptacyjnych dla platformy Android (napisane w języku Java)
- framework do testów akceptacyjnych dla platformy iOS (Ruby)
- narzędzie do równoległego uruchamiania testów UI (Ruby: https://github.com/ssmiech/rubotium)
- Continous Deployment dla platform iOS i Android (Go, Ruby)
- narzędzie pomagające w ocenie jakości testów
- Mobile Test Lab złożony z telefonów Nexus 4 i komputerów mac mini, na którym każdy deweloper mógł uruchomić testy za pomocą jednej komendy (Scala + Java)
- oraz wiele innych narzędzi i testów
Wlasciciel
Implementacja procesu testowania w metodologii SCRUM
Pisanie scenariuszy i skryptów testowych.
Opracowywanie dokumentacji technicznej poszczególnych funkcji aplikacji.
Dbałość o jakość aplikacji.
Automatyzacja testow.
Testowanie aplikacji pod kątem bezpieczeństwa danych.
Szukanie błędów wraz z analizą kodu źródłowego.
Sporządzanie raportów jakości oprogramowania.
Pisanie scenariuszy i skryptów testowych.
Opracowywanie dokumentacji technicznej poszczególnych funkcji aplikacji.
Dbałość o jakość aplikacji.
Automatyzacja testow.
Testowanie aplikacji pod kątem bezpieczeństwa danych.
Szukanie błędów wraz z analizą kodu źródłowego.
Sporządzanie raportów jakości oprogramowania.
Senior Test Engineer
Implementacja procesu testowania w metodologii SCRUM.
Testowanie aplikacji na platformy mobilne (HTML5) oraz frameworków javascriptowych.
Zarządzanie zespołami testerów.
Tworzenie i zarządzenie systemami raportowania błedów.
Utworzenie i zarzadzanie serwerem Continous Integration(HUDSON CI).
Implementacja procesów continuous deployment (od kodu to działającej produkcji)
Tworzenie i automatyzacja testow z wykorzystaniem narzedzi Cucumber oraz Selenium-webdrier w jezyku Ruby.
Tworzenie scenariuszy i skryptów testowych.
Dbałość o jakość aplikacji. Analiza kodu zrodlowego.
Sporządzanie raportów jakości oprogramowania.
Testowanie aplikacji na platformy mobilne (HTML5) oraz frameworków javascriptowych.
Zarządzanie zespołami testerów.
Tworzenie i zarządzenie systemami raportowania błedów.
Utworzenie i zarzadzanie serwerem Continous Integration(HUDSON CI).
Implementacja procesów continuous deployment (od kodu to działającej produkcji)
Tworzenie i automatyzacja testow z wykorzystaniem narzedzi Cucumber oraz Selenium-webdrier w jezyku Ruby.
Tworzenie scenariuszy i skryptów testowych.
Dbałość o jakość aplikacji. Analiza kodu zrodlowego.
Sporządzanie raportów jakości oprogramowania.
Tester
DePoel
Implementacja procesu testowania (zmiana z Feature Driven Development na Feature Test Driven Developement).
Pisanie scenariuszy i skryptów testowych.
Opracowywanie dokumentacji technicznej poszczególnych funkcji aplikacji.
Dbałość o jakość aplikacji.
Testowanie aplikacji pod kątem bezpieczeństwa danych.
Szukanie błędów wraz z analizą kodu źródłowego.
Sporządzanie raportów jakości oprogramowania.
Pisanie scenariuszy i skryptów testowych.
Opracowywanie dokumentacji technicznej poszczególnych funkcji aplikacji.
Dbałość o jakość aplikacji.
Testowanie aplikacji pod kątem bezpieczeństwa danych.
Szukanie błędów wraz z analizą kodu źródłowego.
Sporządzanie raportów jakości oprogramowania.
Test Analyst
Testowanie oprogramowania urządzeń mobilnych (smartphony)
Dział: OMA, Device Management, Remote Sync, SyncML, Client Provisioning, USB, WLAN, Bluetooth, WAP push Messaging, Sony PC Suite, iSync
Testowanie i weryfikacja błędów w Open Source Platform (Symbian i UIQ).
Testowanie ponowne wykrytych wcześniej błędów, dodawanie analizy technicznej (kontrola kodu źródłowego) i przydzielanie ich do odpowiednich grup developerów w celu naprawy.
Sprawdzanie czy wyprodukowane oprogramowanie spełnia wymagania dokumentacji technicznej.
Pisanie scenariuszy testowych oraz wykonywanie testów manualnych (używając Mercury Quality Centre).
Zakres przeprowadzanych testów: User Acceptance Tests, Regressions, Integration Testing,
Dział: OMA, Device Management, Remote Sync, SyncML, Client Provisioning, USB, WLAN, Bluetooth, WAP push Messaging, Sony PC Suite, iSync
Testowanie i weryfikacja błędów w Open Source Platform (Symbian i UIQ).
Testowanie ponowne wykrytych wcześniej błędów, dodawanie analizy technicznej (kontrola kodu źródłowego) i przydzielanie ich do odpowiednich grup developerów w celu naprawy.
Sprawdzanie czy wyprodukowane oprogramowanie spełnia wymagania dokumentacji technicznej.
Pisanie scenariuszy testowych oraz wykonywanie testów manualnych (używając Mercury Quality Centre).
Zakres przeprowadzanych testów: User Acceptance Tests, Regressions, Integration Testing,
Projekty
Rubotium
Narzędzie do równoległego uruchamiania testów integracyjnych na platformę android. Automatycznie wykrywa podłączone telefony, nagrywa Video z testów oraz produkuje raport końcowy.
Założenie: dostarczyć wystarczającą ilość informacji aby nie trzeba było powtarzać testu i zrozumieć na czym polega błąd.
Założenie: dostarczyć wystarczającą ilość informacji aby nie trzeba było powtarzać testu i zrozumieć na czym polega błąd.
Szkolenia i kursy
ISTQB Intermediate Certificate in Software testing
ISTQB Foundation Certificate in Software testing
Negotiation Skills Training,
ISTQB Foundation Certificate in Software testing
Negotiation Skills Training,
Specjalizacje
IT - Rozwój oprogramowania
Programista Android
IT - Rozwój oprogramowania
Programista aplikacji mobilnych
IT - Rozwój oprogramowania
Testowanie
IT - Rozwój oprogramowania
Zarządzanie projektem
Zarządzanie jakością
QA
Zainteresowania
Szachy
Inne
Umiejętność budowania efektywnych zespołów.
Znajomość językow programowania:
Ruby, Java, Python
Znajomość narzędzi do automatyzacji testów:
Espresso, Robotium, Selenium, Pisanie własnych frameworków do testowania
Znajomość językow programowania:
Ruby, Java, Python
Znajomość narzędzi do automatyzacji testów:
Espresso, Robotium, Selenium, Pisanie własnych frameworków do testowania