Madrasatna Plus — maintenance engineering on Egypt's national e-learning platform
Maintenance engineering on Egypt's official MoE e-learning platform — shipping Ionic, Angular, and .NET bug fixes across a large multi-team codebase, and integrating the in-house Question Bank service as the platform's quiz-taking module.
View live product شاهد المنتج مباشرة- Platform users
- 1M+
- Integration time
- 2 weeks
- Layers
- Mobile · Web · Backend
- Platform
- National MoE
Tech stack المجموعة التقنية
- Ionic
- Angular
- TypeScript
- .NET
- REST APIs
Situation
Madrasatna Plus is Egypt’s official Ministry of Education e-learning platform, serving students across the K-12 curriculum. The codebase spans an Ionic mobile app, an Angular web app, and a .NET backend — maintained by multiple teams over several years, with the scale and complexity that comes with a government-backed national product.
Two things needed attention concurrently: ongoing cross-stack maintenance (bugs surfaced by QA and field reports), and an integration — wiring the in-house Question Bank service (see the adjacent case study) as the quiz-taking module used by students.
Task
I joined as a contributor focused on two workstreams:
- Bug triage and fixing across the stack — Ionic, Angular, and .NET — as tickets came in from QA and users.
- Integrating the Question Bank service as the quiz module backing the platform’s quiz flows.
Action
Question Bank integration. Mapped the Question Bank’s student-facing API to the quiz module inside Madrasatna Plus: question shapes, signed media URLs, attempt persistence, submission and scoring flow. Added a thin adapter layer on the client so the platform’s existing UI didn’t need to understand Question Bank internals.
Bug fixes — Ionic. Worked through a backlog of mobile issues: state-management bugs, rendering glitches on specific Android versions, offline/online sync edge cases. Each fix landed with a reproducer, a targeted patch, and a minimal regression test where feasible.
Bug fixes — Angular. Component bugs, routing edge cases, RxJS subscription leaks, and styling regressions. Standard maintenance work — read the code, reproduce, fix close to the root cause.
Bug fixes — .NET backend. API issues: pagination, timezone handling, edge cases in role-based access. Followed the existing architecture rather than imposing a new one — maintenance, not rewrite.
Result
- Question Bank integration live as the quiz-taking module inside a nationally-distributed MoE platform.
- Bug backlog reduced across three layers (Ionic / Angular / .NET), with fixes shipped against the platform’s release cadence rather than re-architecting anything.
- Hands-on experience in maintenance on a large multi-team codebase — a different skill set from greenfield engineering, and the skill many enterprise engagements actually need.
Why this case study is short
This was maintenance and integration work, not greenfield architecture. The value was the combination of breadth across layers (Ionic, Angular, .NET), bug-fix discipline, and landing in a big unfamiliar codebase without breaking things — which is exactly what long-lived enterprise products need.
Got a project with similar shape? عندك مشروع بشكل مشابه؟
Let's talk — quick email, 24h reply. دعنا نتحدث — إيميل سريع، رد خلال 24 ساعة.
Get in touch تواصل معي