Skip to content
BENAA homeالعربية

All work

Education · 2026

School management system and parents app

A system for a group of private schools: admissions and enrolment, timetables, daily attendance, grades and report cards, fees and instalments, and a parents app for absences, results, payments and messages from teachers.

Built by

Tech leadUI/UXFrontendMobileBackendDevOpsQA
Client
Withheld at the client’s request
Users
Admin · Teachers · Parents
Platforms
Web · iOS · Android
Typical timeline
4–5 months
Squad
7 people · 6 disciplines

Technologies

  • Laravel
  • Next.js
  • Flutter
  • MySQL
  • Redis
  • Firebase (FCM)
  • Payment gateway
  • Docker

The product

10 images

01

Brief

Parents heard about absences a week late.

Context

Each school ran its own spreadsheets for students, grades and fees, and parents were reached by printed notes and phone calls.

Problem

Report cards took weeks to prepare, fee follow-ups were manual, and the group had no single view of its students.

Goals

  • Attendance taken in class, seen at home
  • Report cards generated, not typed
  • Fees and instalments tracked
  • One view across every school

02

Team

The squad behind it.

Tech leadArchitecture, academic structure and fee rules×1Senior
Product designerTeacher, admin and parent flows×1Senior
Frontend engineerAdmin and teacher web app×1Senior
Mobile engineerParents app for iOS and Android×1Senior
Backend engineerAcademic data, fees, notifications and APIs×1Senior
DevOps engineerHosting, backups and peak-time scaling×1Senior
QA engineerTest automation and device testing×1Senior

Meet the team

03

UI/UX design

Attendance done before the lesson starts.

Who worked on it

UI/UXFrontendMobile

Teachers mark attendance on a tablet or phone with everyone present by default, so they only tap the absent. Parents see the same day’s attendance, homework and teacher notes in one feed.

Attendance done before the lesson starts
Report card on the phone, downloadable as an Arabic and English PDF
  • Present by defaultTap only the absent students.
  • One feed for parentsAttendance, homework and notes together.
  • Several children, one appSwitch between children in one tap.

04

Frontend

Report cards in a click, not a week.

Who worked on it

UI/UXFrontend

Admins set up years, grades, classes and subjects once. Teachers enter marks per assessment, and report cards are generated in Arabic and English from those marks, ready to review and publish to parents.

Report cards generated from the marks
Admissions: every application by grade and stage, with missing documents flagged
  • Set up onceThe academic year copied forward.
  • Generated report cardsBoth languages, school branding.
  • Fee follow-upOverdue instalments listed per class.

05

Mobile

The school in a parent’s pocket.

Who worked on it

UI/UXMobileBackend

Parents get a notification when their child is marked absent, see grades as soon as they are published, pay fees and instalments online, and message teachers within school hours.

The school day, in a parent's pocket
Paying an instalment by card, wallet or bank transfer, with a receipt
  • Absence alertsSent the moment attendance is saved.
  • Online feesInstalments and receipts in the app.
  • Quiet hoursTeacher chat closes after school.

06

Backend & architecture

One student record from admission to graduation.

Who worked on it

Tech leadBackend

Every school shares one API and database, with each school’s data kept apart. A student keeps a single record across years and transfers between schools in the group, and notifications are queued so a whole school’s attendance can go out in a moment.

Timetable builder: clashes are caught before the timetable is published
  1. Decision 1

    One database, data separated per school

    The group needs combined reports; schools need privacy.

    Trade-off · Every query is scoped by school, enforced in one place.

  2. Decision 2

    Grades calculated, never stored as totals

    Changing an assessment weight updates every report card.

    Trade-off · Report generation does more work at publish time.

  3. Decision 3

    Notifications through a queue

    Morning attendance creates a burst of messages.

    Trade-off · A few seconds’ delay at peak.

07

DevOps

Ready for the first day of term.

Who worked on it

BackendDevOps

Traffic spikes at registration, on results day and at fee deadlines, so the platform scales up on those dates and back down after. Backups run nightly, and every release goes through staging with the real structure and fake students.

Group view: attendance, alerts, report cards and fees across five campuses
  • Planned scalingResults day and fee deadlines.
  • Nightly backupsRestore tested every term.
  • Safe staging dataReal structure, fake students.

08

QA

Checked by teachers before parents see it.

Who worked on it

FrontendMobileQA

Automated tests cover attendance, grading rules and fee calculations. Before each term a group of teachers and parents tries the release on their own phones, and their notes are fixed before launch.

Fees: collection by grade and overdue families with their reminder history
  • Grading rules testedEvery weighting scheme the schools use.
  • Fee calculationsDiscounts, siblings and instalments.
  • Pilot groupTeachers and parents before each term.
School management system and parents app

Arrow keys or a swipe to move · Esc to close

Tell us what you’re building.

A short message is enough. A senior engineer replies within 1 working day.