Skip to case file
Front pageGROUP PROJECT2026 · 1ST PLACE

Subject of investigation

B2U is a group project that helps student developers learn, build practical skills, find freelance opportunities, and direct their earnings either to themselves or toward university fees. My work covered the interactive learning module — including a system that generates a personalized exam after each lesson, scoped to that lesson's content and built from the mistakes the student made while learning it — plus Stripe-based payment flows.

STATUS

Group Project

RECOGNITION

1st Place · Bal des Projets 2026

MY ROLE

Learning · AI · Payments

AI

Generates per-lesson exams from student mistakes

PAYMENTS

Stripe Checkout + Connect

Opened 2026 · Closed 2026

Case file opened — 2026

Student Freelance Platform

A student freelance platform where every exam is generated from the mistakes you just made in the lesson before it.

E-001 · LEARNING PLATFORM

STUDENT LEARNING EXPERIENCE · B2U

FIG. 01 OF 06

Section 02

CASE INTAKE · A student-focused freelance platform linking skill development with paid opportunities.

Static courses don't know what a student actually struggles with. B2U generates each exam from the mistakes a student just made in the lesson, not a fixed question bank.

B2U brings learning and freelance work into one platform for student developers. Students can progress through structured lessons, practice coding, identify weak areas, and prepare for opportunities.

My contribution was the learning loop: interactive lessons, coding exercises, mistake tracking, AI guidance, and personalized exams based on what a learner actually gets wrong.

I also implemented the payment side of that journey: contract escrow, Stripe Checkout, approved payouts, and routing earnings to either the student or their university.

Intake form

PRODUCT
Student freelance platform
MY WORK
Learning · AI · Payments
AI
Local Ollama + Qwen 7B
PAYMENTS
Escrow and earnings routing

Directive

Follow the student journey from learning and practice to escrow-backed freelance earnings.

Section 03

INTERFACE EVIDENCE · Learning, practice, exams, escrow, and university-fee flows.

Visual evidence from the project

ARCHIVE SHELF / CASE CASE 025 EXHIBITS ON FILE

Section 04

RECONSTRUCTED ARCHITECTURE — REV. B

System architecture of the Business To Universities platform

Diagram 02 — Data flow10 nodes · 9 links

Open fullscreen to interact with the system diagram.

Node — serviceLive traffic

Section 05

TECHNICAL COMPOSITION · A focused stack for learning, local AI, and payments.

The technical stack behind the platform

  1. T-01

    Angular

    Frontend

  2. T-02

    Spring Boot

    Backend services

  3. T-03

    PostgreSQL

    Data storage

  4. T-04

    Apache Kafka

    Events

  5. T-05

    Ollama + Qwen 2.5 7B

    Local AI

  6. T-06

    Stripe

    Payments

  7. T-07

    Keycloak

    Identity provider

  8. T-08

    Spring Cloud Gateway

    API gateway

  9. T-09

    Docker

    Local infrastructure

Order: layer of concern — from interface to persistence.

File 06

ENGINEERING RECORD · Practical decisions made in the learning and payment modules.

Major technical challenges and how they were resolved

Evidence board — drag the cards, drag the cork to pan

100%

Case file

Business To Universities

7 obstacles · closed

  • Challenge CH-01: Coding exercises needed to work across several programming languages.. Decision: Built separate runners for Python, JavaScript, TypeScript, and Java with test-case execution and timeouts.. Result: Students receive consistent code feedback across supported languages..
  • Challenge CH-02: Qwen 7B could not reliably generate a complete executable exam in one response.. Decision: Split generation into smaller requests and used database-backed code templates for test cases, inputs, and expected outputs.. Result: AI personalizes the exam while server-side logic keeps it valid and executable..
  • Challenge CH-03: Personalized practice needed to use real learner weaknesses.. Decision: Stored failed quizzes and code submissions, then used those records when selecting exam content.. Result: Practice targets topics where the learner needs more work..
  • Challenge CH-04: Stripe payment confirmation can arrive more than once or after the user returns from Checkout.. Decision: Saved webhook events, checked payment state, and added a Stripe synchronization fallback.. Result: Escrow funding is tracked reliably without duplicate state changes..
  • Challenge CH-05: A completed contract may need to pay a student or their university.. Decision: Checked the student's fee ledger before creating the Stripe Connect transfer.. Result: Earnings go to the student when fees are settled, otherwise to the linked university..
  • Challenge CH-06: Services needed to know who the caller was without each one re-validating JWTs.. Decision: Centralized JWT validation in the gateway, then forwarded identity via X-User-* headers.. Result: Services trust the gateway's headers instead of validating tokens themselves..
  • Challenge CH-07: Students could paste answers or leave the tab to look up solutions, but a quick accidental tab-switch shouldn't fail someone.. Decision: Added a focus-loss timer instead of an instant trigger, plus a strike system so one slip doesn't end the exam.. Result: Real cheating still gets caught, but a brief alt-tab doesn't cost the student their exam..

Section 08

FINAL FINDING · A group project recognized at ESPRIT's Bal des Projets, 2026.

Final report on the Business To Universities case

GROUP PROJECT · AWARD WINNER

Filed 2026
by the case engineer

MY CONTRIBUTION

I built the learning module, AI-assisted practice flow, personalized exam generation, and payment logic.

LEARNING

The experience combines lessons, quizzes, coding exercises, progress tracking, mistakes, and feedback.

LOCAL AI

Ollama + Qwen 7B supports personalized exams using learner mistakes while validated templates protect grading logic.

PAYMENTS

Stripe Checkout funds escrow and Stripe Connect sends approved earnings to the correct recipient.

RECOGNITION

B2U won 1st place at ESPRIT's Bal des Projets, 2026.

E-009 · FINAL REPORT

TEAM B2U · 1ST PLACE · ESPRIT BAL DES PROJETS 2026.

B2U connects student learning with real freelance workflows, while keeping assessment and payment state grounded in the system.

End of investigation

End of file — document CASE 02


Explore the systems I built for practice, personalized AI exams, and student-focused payments.

B2U · Group ProjectLearning · Local AI · PaymentsESPRIT Bal des Projets · 1st Place

Next case file — CF-019

Green & Red Flag

Social Discussion Platform · Status: Filed

A multilingual discussion platform for voting on Tunisian dating scenarios as green or red flags.

Open case file