Technical documentation
People Analytics — Platform Guide
An on-premises people analytics platform that turns HR data from your existing systems into governed metrics and dashboards — without data ever leaving your infrastructure.
What the platform is
#People Analytics transforms data from your HR systems (HRIS, payroll, ATS, files) into governed metrics and dashboards — entirely inside your perimeter.
No public runtime dependencies — ready for air-gapped environments.
Employee identity is protected by cryptographic pseudonyms throughout the analytical layer.
Every transformation, metric and model is declarative, versioned, validated and audited.
Capabilities activate per license, per module, with dedicated roles.
Deployment model
#Docker Compose on your infrastructure — a single HTTPS port, everything else internal.
| Aspect | Detail |
|---|---|
| Form | Docker Compose on your infra (single host or dedicated VM); Kubernetes/OpenShift as a later target |
| User access | Browser → HTTPS → web app (single exposed port, configurable) |
| Network | Internal components are never exposed; only explicitly configured identity endpoints and data sources are contacted |
| Install | Guided installer or offline bundle for environments without internet |
| Data | PostgreSQL (configuration and metadata) + local storage for the data lake |
Supported data sources
#Connect files, databases and APIs — every source is tested, schema-discovered and sensitivity-classified before it lands.
| Source | Details |
|---|---|
| CSV / XLSX files | Upload via UI or pull from SFTP; data is taken as-is (formulas and macros never execute) |
| PostgreSQL, MySQL, MS SQL Server | Read-only connectors with verified TLS; full or watermark-based incremental extraction |
| Generic REST/JSON | GET/POST, pagination (page/offset/cursor), Bearer/Basic/OAuth2 client credentials, path & body parameters |
| Vendor HRIS | Via declarative plugins — signed, scoped and tested per vendor |
- Connectivity test and schema discovery on every source
- Per-field sensitivity classification
- Manual or scheduled refresh — fixed interval or cron expression with configurable timezone
- Freshness monitoring and a certified historical coverage window
Data model & mapping
#A canonical model with 30 entities, governed extensions and full lineage — from source row to metric.
- Canonical model — 30 entities: core workforce (person, employment, organization, position) + optional domains (absences, compensation, performance, training, recruiting, engagement, planning, benefits, time, skills, talent/succession, employee relations).
- Governed domain extensions — organization-specific attributes (
x_*) are declared in an administered registry with data type and allowed values; they become queryable only after declaration and stay traceable. - Visual mapping + governed SQL mode: each source field gets a sensitivity classification; transformations are declarative and safe — no free-form code.
- Fan-out — one source row can produce multiple records (skill lists, repeated columns like
salary_2023), with controlled limits. - Quality: per-field rules, sample preview, versioned mappings with publish/rollback.
- Quarantine — records violating critical quality rules are diverted to a separate zone instead of blocking the whole job, with a documented reason and reprocessing or manual resolution by authorized operators.
- Full lineage — every Gold record traces back to the source, job and mapping version that produced it.
Analytical capabilities
#Governed metrics, board-ready dashboards, scheduled reports, AI and ML — all inside the same trust boundary.
Governed metrics
- Core: headcount, FTE, hires/separations, turnover, average daily headcount — plus custom metrics built in the UI on the semantic model.
- Event-driven: metrics on the event ledger — external hires, re-hires, organizational transfers, exits, internal mobility, net headcount change, early retention/attrition, median tenure, contractor share, point-in-time and average FTE. Events (hire / rehire / transfer / termination) are derived from employment period history, not source labels — an internal move never shows as a hire/exit.
- Module metrics — activated with each license: absences (days, rate, mean duration), recruiting (applications, offer acceptance), training (completion rate, hours), performance (average rating), engagement (mean score), compensation (mean variation), planning (plan vs. actual variance).
- Organizational health: hierarchy depth, average span of control, promotion rate.
- Historical coverage: each source has a certified coverage window — metrics outside it show “unavailable”, never a misleading zero.
- Small-cohort protection: values computed on groups below the configured privacy threshold are automatically suppressed (including complementary suppression on adjacent groups) with a visual indicator — contributor counts are never shown. Sensitive domains (pay, absence, surveys, performance) have dedicated thresholds.
Dashboards, reports & executive briefing
- Interactive dashboards with drag-and-drop editor, deployment-wide validated themes for accessibility, controlled sharing.
- Executive Briefing — a board-ready page with governed KPI tiles (headcount, flow, retention, mobility, FTE, org health), month-over-month / year-over-year comparisons, visible states for suppressed or unavailable values, and one-click PDF/PPTX export — honoring the same scopes, cohort thresholds and licenses as the rest of the platform.
- Scheduled reports delivered over email (corporate SMTP) or webhook, PDF/PPTX export.
- Data endpoints — controlled exposure of governed data over API with dedicated tokens.
Alerts & notifications
Rules on metrics and data-quality events; in-app notifications; delivery over configured channels.
AI & ML
- Conversational assistant for questions on governed data, with usage budgets and automatic PII redaction before anything reaches the language model (emails, phone numbers, national identifiers).
- AI Agents — defined with a restricted set of approved tools (mapping suggestions, metric explanations, dashboard drafts).
- ML Studio — curated models deployed locally (regressions, clustering) over governed features; zero external dependencies. Model registry with a draft → approved → retired lifecycle, model cards (intended use, limitations, evaluation metrics) and dual approval — the author cannot approve their own model.
Data catalog & quality
Data dictionary with classifications, source profiling, canonical quality rules (with quarantine for diverted artefacts) and cryptographic integrity checks on the audit chain.
Operational monitoring
- System Health console — configuration, secrets, database, jobs and audit checks (pass/warn/fail).
- Operational metrics endpoint in standard format (Prometheus): API traffic, job queue & duration, lake size, triggered alerts.
- Job correlation tracing for fast diagnosis.
Optional licensed modules
#Capabilities activate per deployment with dedicated roles; disabling a module never deletes data.
| Module | Coverage |
|---|---|
| Absence & Leave | absence periods, rates and hours |
| Salary | salaries, pay review, compensation bands |
| Performance | reviews, objectives |
| Training | courses, certifications, learning paths |
| Recruiting | requisitions, candidates, applications, funnel |
| Engagement | aggregated survey responses |
| Workforce Planning | headcount plan, cost centers, plan vs. actual variance |
| Benefits | enrollment |
| Time & Attendance | time tracking, shifts |
| Skills | competency assessments |
| Talent & Succession | internal mobility, succession plans, talent pools |
| Employee Relations | ER cases (restricted) |
| AI Agents / ML Studio | governed AI capabilities |
Roles and access control
#RBAC, deny-by-default, with organizational scopes and a recursive management hierarchy.
| Role | Sees / can do |
|---|---|
| Admin | platform administration, sources, users, modules |
| Developer | builds mappings, models, metrics (draft); does not see sensitive data by default |
| Analyst | authored content, dashboards, analysis within granted scope |
| Manager | published dashboards + metrics for their own team (recursive hierarchy) |
| CHRO | enterprise-level people dashboards, within cohort-policy limits |
| CEO | executive dashboards and approved summaries |
| Viewer | consumes shared dashboards |
- Scopes on organizations and, optionally, on persons (direct/recursive reports).
- Authentication via corporate IdP (OIDC); group → role mapping.
- Break-glass access — time-boxed role elevation with mandatory reason and separate approval; grants expire automatically, are revocable and fully audited.
- Every query is re-authorized server-side for the current viewer — UI visibility never replaces authorization.
Security & data protection posture
#Defense-in-depth by default — cryptographic pseudonymization, chained audit, controlled egress.
OIDC authorization-code with PKCE; revocable sessions; CSRF and origin checks; login throttling.
RBAC deny-by-default, organization scopes, recursive management hierarchy, sensitive-column controls.
person_id is a cryptographic pseudonym (HMAC) — names, emails and staff numbers never enter the analytical layer.
TLS at the edge and to sources (verified modes); secrets live in protected files, never in the database or config.
Cryptographically chained event log (hash-chain) with signed checkpoints; in-app audit console (filters on action/result/object/range) and SIEM export (CSV or CEF/ArcSight).
Only explicitly configured endpoints are reachable; no CDN, telemetry or external calls at runtime.
Provided scripts; documented procedures.
Offline health-check utility for support — no secret exposure — plus the in-app System Health console.
Compliance & privacy
#Privacy controls are enforced by the platform itself — not by policy documents alone.
- Data never leaves your infrastructure; no telemetry, no “phone home”.
- Mandatory sensitivity classification on every source field; special-category fields cannot be mapped into analytics.
- Automatic small-cohort suppression — aggregates below the configured threshold are never shown; the threshold applies consistently across metrics, dashboards and visualizations.
- Data subject rights (DSR): controlled subject lookup (raw identifiers are never stored — only pseudonymous forms), right-to-erasure with an approval step and propagation through every data layer including quarantine, with an auditable proof-of-deletion (tombstone).
- Governed retention: configurable retention policies per data layer (including indefinite retention), scheduled sweeps honoring legal hold — an active hold blocks deletions on its perimeter.
- Identities across different sources stay separate by default — linking records belonging to the same person happens only via an audited governed decision (approve/reject/reassign), never automatically.
- The AI assistant honors the same scopes and masks as normal queries; personal data typed into conversations is redacted before reaching the model.
Typical flows
#The four core operating loops, from onboarding a source to day-to-day operation.
- 1Source onboarding
Admin → add source → connection test → schema discovery → field classification → activate refresh.
- 2Mapping
Developer → create mapping → preview → quality rules → publish (audited).
- 3Analytics
Governed metrics → dashboard → sharing → scheduled report or alert.
- 4Operations
Job monitoring (with on-demand cancellation of running executions), freshness, quality; audit journal; periodic health check.
Operations & maintenance
#- Upgrade: new pinned bundle, verified, with documented migration steps; documented rollback.
- Modules: enable/disable via license; disabling never deletes data.
- Support: locally-generated diagnostic report for support sessions, without exposing secrets.
What the platform does not do
#Deliberate limits — the platform complements your HR systems instead of replacing them.
- It is not an HRIS — it analyzes data from your source systems rather than replacing them.
- It executes no arbitrary user code (free SQL, scripts, macros) — every transformation is declarative and validated.
- It has no mandatory cloud dependencies and sends no data outside your perimeter.
- It does not guarantee GDPR / AI Act compliance out of the box — it provides the controls; policies (retention, purpose, cohort thresholds) remain your decision.
See it running
Explore the live demo environment or talk to our team about a proof of concept on your own data.
Request a demo