Ahmed Belhaj
All systems

Platform architecture

Internal Developer Platform

Browser-first developer environments I architected as Technical Manager at Campusna — VS Code online, JupyterHub, VPL auto-grading, and employee intranet on Kubernetes.

KubernetesVS Code ServerJupyterHubKeycloakAuthentikHelmVPLOpenCost

The challenge

EdTech programs in Cloud, DevOps, Cyber, Data, and Software Engineering cannot depend on students configuring local machines. Thousands of learners across international cohorts need browser-accessible IDEs, data science environments, and auto-graded infrastructure exercises — provisioned consistently with proper identity boundaries.

Internal engineering teams need the same discipline: intranet, project management, and monitoring behind one identity plane.

Architecture

Campusna IDE delivers VS Code in the browser with SSO. JupyterHub provisions data science and Hadoop/Spark lab environments. VPL powers auto-graded exercises at curriculum scale. An intranet stack on Kubernetes runs OpenProject, Matrix, and helpdesk tooling for internal teams.

Platform components

  • Campusna IDE — VS Code online with SSO authentication
  • JupyterHub — data labs with OVH-to-AWS migration pipelines
  • VPL and jail configs — auto-graded Cloud, DevOps, Cyber, and programming tracks
  • Intranet — OpenProject, Matrix/Element, Zammad on Kubernetes
  • Holberton international delivery — container registry, lab uploads, project onboarding, and coordination with global Holberton engineering teams
  • Language checkers — Python, Java, C, Dart, JS/TS, SQL, Octave
  • OpenCost — per-student cloud cost visibility in the Teacher platform

Identity & labs

Authentik federates through LDAP into IAM Identity Center. Students receive permission sets mapped to lab accounts in the Students OU. The Teacher platform tracks per-student cloud spend alongside curriculum delivery.

If provisioning a lab takes longer than doing the exercise, the platform has failed.

Delivery approach

Platform infrastructure was delivered through versioned Helm releases on EKS, dedicated SSO services for the browser IDE, and VPL sandbox configurations — maintained by Campusna engineering, not as personal open source.

Results

15+
Moodle plugins
Integrated with lab and grading infrastructure
18
Student AWS lab accounts
7+
Auto-grading language checkers

Key decisions

Browser-first over local setup

VS Code online and JupyterHub remove onboarding friction for international cohorts — essential for Santander, Dauphine, and Holberton pathway delivery.

VPL at curriculum scale

Auto-graded IaC, CI/CD, and cyber labs require isolated sandboxes per submission — not manual TA grading at thousands of learners.

Helm as the deploy contract

Helm charts defined the upgradeable platform surface — Moodle, JupyterHub, intranet, and monitoring as versioned releases the team could roll forward independently.

My role

  • Technical Manager at Campusna — architecture for VS Code online, JupyterHub, and intranet stack
  • Identity integration — Authentik, Keycloak, LDAP, SSO into student lab accounts
  • Platform placement on Kubernetes and lab provisioning patterns
  • Holberton curriculum lab pipelines and cross-campus engineering coordination