Skip to content
Alexandru Lungu
All work
2025 – 2026

SocioHR Play

Assessment and recruitment platform for a university department - five quiz engines, one data model

SocioHR Play landing page: the “Flight Identity Scanner” quiz for the FSAS faculty with a start button
Ledger
Quiz engines
5 - assessment, personality, multiple intelligences, crossword, questionnaire
Data model
20 routes · 9 collections · 3 roles
Minors' data
responses stored unlinked from contact details, enforced in rules
Consent
versioned capture · age gate at Romania's 16-year threshold
Hardening, Sep 2026
CI gate · security-rules test suite · submission validation · WebP-only uploads
Figures as of 2026-09-12
Context
Role
Sole developer - product, engineering, deploy
Client
Department of Sociology, West University of Timișoara
Stack
React 19TypeScriptFirebaseCloud FunctionsRechartsTailwind CSS 4

Five engines sharing one pipeline

Each format has its own authoring UI, scoring rules and result presentation - weighted points with partial credit, answers mapping to outcomes, top-three profiles, word-by-word crossword matching, unscored Likert questionnaires - over one data model, one player and one export path. The partial-credit algorithm is built to resist answer-all gaming.

Holding teenagers' data responsibly

Consent is captured versioned, with an age gate reflecting Romania's 16-year digital consent threshold. Responses live in a separate collection from contact details and are never linked, which the security rules enforce rather than the client. That split is what lets the department export data for sociological research without exporting anyone's identity.

A live-event failure, fixed at the root

At an event, ad-blockers and a restrictive venue network silently blocked Google API domains and the quizzes stopped loading. Reads now route through a same-origin Cloud Function endpoint, so nothing the app needs is on a domain a blocklist would recognise.