APLIKACJA DO TESTÓW ON-LINE

Oprogramowanie do testów programistycznych na żądanie

System informatyczny służy do przeprowadzania testów, mających na celu szybką preselekcję kandydatów na konkretne stanowiska programistyczne. Wysoka automatyzacja i prosty dostęp do przeprowadzanych testów ma na celu optymalizację pierwszych kroków rekrutacji.

ZADANIE

Zaprojektowanie i stworzenie rozwiązania, które pozwoli na:

  1. tworzenie jednorazowych testów on-line
  2. zapewnienie bezpieczeństwa danych i zgodność z wytycznymi GIODO i RODO
  3. natychmiastowy dostęp do poglądu testów w trakcie, zakończonych i planowanych
  4. automatyzacja czynności zorientowana na zmaksymalizowanie wydajności procesu rekrutacyjnego
  5. agregacja i raportowanie danych z wynikami testów
  6. przeciwdziałanie wyciekowi pytań z systemu
  7. edycje pytań testowych na interfejsie webowym
  8. łatwą i bezpieczną integrację z zewnętrznymi systemami

ROZWIĄZANIE

Opracowaliśmy oprogramowanie typu CRM, które pozwala szybko i wydajnie testować duże ilości kandydatów. Dostęp do systemu jest osiągany z dowolnego miejsca przez przeglądarkę internetową.

 

System testuje kandydatów i zwraca wyniki na wyspecjalizowany do tego widokach. Osoba rekrutująca ma wygodny wgląd we wszystkie testy, co pozwala na sprawne przetwarzanie i preselekcję dużej ilości kandydatów.

ROLE

Aplikacja posiada następujące role:

  1. Administrator
  2. Rekruter
  3. Edytor pytań

które mają różne funkcję i dostępy do danych w zależności od potrzeb.

 

Kandydat dostaje ograniczony czasowo link do systemu testującego. Testy zawierają pytania jednokrotnego wyboru z ograniczeniem czasowym. Rekruter śledzi przebieg testów i decyduje o wyborze kandydatów do następnych etapów rekrutacji.

PROCES

Projekt jest wykonany w technologiach opartych na języku Java. Użyte technologie Java 8, Spring Boot, Maven, Junit, GhostJS + Selenium, Thymeleaf, Bootstrap, JQuery, Hibernate, H2 DB. Do hostowania projektu została użyta usługa Git Lab, na której znajduje się repozytorium kodu, project management i system continuous deployment. Instancja produkcyjna umieszczona jest na platformie Digital Ocean, zapewniając bardzo duży uptime, bezpieczeństwo danych, rozszerzalność i backup.

 

Po każdej zmianie w kodzie aplikacja testowana jest automatycznie testami jednostkowymi i E2E. Ponadto wykonywana jest zautomatyzowana migracja bazy danych środowisk deweloperskich i produkcyjnego, backup bazy produkcyjnej i update stanu budowania do ogólnego wglądu. System continuous deployment jest zaprojektowany z myślą o minimalizacji czasu turn-around (całość procesu zajmuje 10 minut od commitu kodu do uruchomienia zaktualizowanej aplikacji), wczesnego wykrywania błędów i one-click kompletnego deploymentu na produkcji.

WYNIK

Platforma testowa została z powodzeniem wdrożona. Obecnie w większości zajmujemy się utrzymaniem, refactoringiem włącznie z podbijaniem wersji zależności, w celu utrzymania kodu w jak najlepszej kondycji. Nowe funkcjonalności dotyczą powiększania bazy testów i zapewniania coraz lepszej wydajności i dostępności danych.