Case study 03 · EdTech · K–11 school platform

One learning record, two audiences: a school platform for kids and parents.

Trinity Private School — an IB World School in Limassol — runs on world-class teaching but coordinated learning, homework, and parent updates through scattered chats and spreadsheets. I designed Trinity Learning Hub: a desktop learning experience where students see their next step and track achievements, and a mobile companion that gives parents an honest, early signal the moment a child starts to fall behind.

My role
Lead Product Designer (end-to-end)
Team
Design (NYC) · Eng (Eastern Europe) · School staff (Cyprus)
Platforms
Student desktop web · Parent mobile
Tools
Figma, FigJam, Maze, Linear, Zeroheight
Trinity Learning Hub student dashboard on desktop, leading with the next lesson, active courses, achievements, and today's timetable
Trinity Learning Hub product presentation: a desktop student dashboard in a browser frame beside a parent mobile app, over a study-desk scene, under the headline One learning record, two audiences
Trinity Learning Hub, one product across two surfaces — a desktop home for students and a mobile companion for parents, both reading from the same learning record.
Interactive prototype

Try the student dashboard for yourself

A clickable build of the student desktop home — switch sections in the sidebar, resume a lesson, and submit homework to see the closed loop in action.

Launch prototype

Context

A world-class school, coordinated over chat

Trinity is a licensed IB World School teaching grades 1–11 across two Limassol campuses, with strong academics and an inquiry-based curriculum. But the digital layer hadn't caught up. Learning, homework, grades, and parent communication lived in different places — a learning portal here, a gradebook there, and day-to-day updates over a Telegram "family manager" channel.

For students, that meant logging in to a catalog of material with no clear sense of what to do today. For parents — many of them busy professionals in an international community — it meant finding out their child was struggling only at the term report, when it was already late to act.

The brief: design one coherent platform that helps kids learn and submit work, lets them see achievement build over the year, and gives parents an early, mobile-first warning when a child underperforms.

Research & IA · mine Both product surfaces · mine Design system · mine Curriculum · school staff Build · EE engineering

Approach

My role & approach

As lead product designer, I owned the work end to end — from research and information architecture through both interfaces, the design system, and engineering handoff to a distributed team. Two device decisions anchored everything:

  • Students on desktop. Kids do focused schoolwork — reading, homework, submissions — at a desk, so the student experience is a roomy desktop workspace.
  • Parents on mobile. Parents check in on the move, between meetings and pickups, so the parent experience is a glanceable phone app built around alerts.
  • One shared record. Both surfaces read from a single learning record, so a missed deadline a student sees is the same event a parent gets alerted about — no parallel sources of truth.
  • Designed for the bad news first. The hardest, highest-value moment is telling a parent their child is slipping — kindly, early, and with a next step. I designed that flow before the happy path.

Discovery

I designed around two very different users, in two languages.

Trinity's community is international, so I ran research with students, parents, and teachers — across English and Russian-speaking families — to find where the current setup failed each group, and what "on track" actually meant to them.

19
Interviews with students, parents & teachers
2
Distinct device contexts: desk vs. on-the-go
4
Tools families juggled to answer one question
1
Question parents kept asking: is my child OK?

What the research said

Three failures, three different people

The same fragmentation hurt each group in a different way. Each is a separate, fixable design problem — which is why one generic "portal" was never going to be enough.

“Now what?”

Students drift

Kids opened to a list of everything and lost their first minutes deciding instead of learning — no single, obvious next step.

Source · student interviews + observation
“Too late.”

Parents find out last

Parents learned about a slipping grade at the term report, when the window to help had already closed.

Source · parent interviews
“Where?”

Teachers chase

Homework arrived over chat, email, and on paper, so teachers spent time collecting work instead of teaching.

Source · teacher interviews + audit

That evidence reframed the brief from “build a school portal” to “build two role-specific experiences over one shared record — and make the underperformance signal the product's headline feature.”

Research

How I learned what “on track” meant to each family

A mixed-methods study over four weeks, run bilingually so English- and Russian-speaking families could answer in the language they think in. The goal was specific: find the exact moment each group loses trust in the current setup, and what evidence would earn it back.

Method 01

Contextual interviews

19 sessions with students, parents, and teachers — each walked through the tools they actually use to answer “how is my child doing?”

Qualitative · EN & RU
Method 02

Diary study

8 parents logged every moment they wondered about their child’s progress for two weeks — capturing the real triggers, not recalled ones.

Longitudinal · 14 days
Method 03

Tool & artifact audit

Mapped the chats, spreadsheets, emails, and paper that homework and grades flowed through, to quantify the fragmentation teachers described.

4 tools · 1 workflow
Method 04

Concept tests

Two rounds of clickable concepts — the next-step dashboard and the parent alert — tested with 11 participants to validate comprehension and tone.

2 rounds · 11 users

Who I spoke with

19 participants, three points of view

I recruited for the friction, not the average: families who’d been surprised by a grade, students at every band, and the teachers who carry the coordination load.

7
ParentsMix of EN & RU first language · Grades 6–10
8
StudentsGrades 6–10 · grade bands A to C
4
Teachers & a form tutorMaths, Science, English, Humanities

What I heard

Four findings that set the design direction

01

Parents discover problems too late to help

The first formal signal was the term report — weeks after the work that caused it. By then the conversation was about blame, not recovery.

“By the time I see the report, it’s already a fight. I just want to know in the moment, while I can still do something.”Parent · Grade 8
02

Students freeze at a wall of choices

Opening to a full catalog cost kids their first focused minutes. They wanted to be told the one next thing, not to plan their own study session.

“There’s so much on the screen I don’t know where to start, so I just… don’t.”Student · Grade 7
03

A red badge without a next step breeds anxiety

Early concept tests showed a bare alert made parents panic and distrust the app. The fix wasn’t softer wording — it was always pairing the bad news with an action.

“Don’t just tell me it’s bad. Tell me bad, then tell me exactly what to tap.”Parent · concept test, round 1
04

Teachers lose teaching time to collection

Homework arrived across four channels, so staff spent the start of class chasing and reconciling submissions instead of teaching.

“I spend the first ten minutes working out who actually handed in — across three apps and a pile of paper.”Teacher · Mathematics
From evidence to decisions

Every finding became a design move

Parents find out too late
A risk engine that fires an early, in-the-moment alert
Students freeze at the catalog
A desktop home that opens on one prioritized next step
Bare red badges cause panic
Every alert pairs the issue with a one-tap action
Teachers chase submissions
A closed-loop homework flow on a single shared record

Architecture

One data model. Two role-aware experiences.

Before any screen, I mapped the shared learning record and the risk engine that watches it — so a student's desktop view and a parent's mobile view are always two windows onto the same truth.

System architecture diagram: a central learning record (goals, curriculum, submissions, grades, achievements, risk engine) feeding a student desktop experience and a parent mobile experience, with a cross-functional team across NYC and Eastern Europe
The system context: students (desktop) and parents (mobile) both read from one learning record. A risk engine watches submissions and grades and fires the underperformance alert. Delivered by a distributed team — design in NYC, engineering across Ukraine, Poland, and Romania.

Decisions

Key design decisions

Four moves carried the product: give students a next step, make achievement visible across the year, make homework a closed loop, and make the parent alert kind but unmissable.

Decision 01

Open students on the next step, not the catalog

The student desktop leads with one prioritized next lesson tied to a term goal — with lesson position, time estimate, and the progress it unlocks — so a child knows exactly where to start. Everything else (courses, timetable, achievements) supports that one decision instead of competing with it.

Student desktop dashboard with a prominent next-lesson card, active course progress, achievements panel, and today's timetable
Student home: a single next step front and center, surrounded by active courses, achievements, and the day's timetable.
Decision 02

Make a year of achievement visible — and motivating

Trinity wanted students to feel progress across the school year, not just see grades. I built an achievement layer — XP, levels, badges, streaks, and a per-subject mastery view — so each child can watch effort compound. The structure underneath is a simple, honest five-layer model that connects daily work to long-term goals.

  1. Goals

    The student's term goal — the anchor every lesson ladders up to.

  2. Courses

    Subjects mapped to goals, each showing real progress, not a flat list.

  3. Lessons

    Focused units that always resolve to a clear next action.

  4. Homework

    Applied work, downloaded and submitted, that turns content into mastery.

  5. Achievement

    XP, badges, and mastery — visible advancement that feeds back into goals.

Achievement tracker showing overall grade, lessons completed, homework on-time rate, badges earned, a per-subject mastery chart, and a milestone timeline for the school year
The achievement tracker: term stats, per-subject mastery, and a milestone timeline that makes a whole year of growth legible at a glance.
Decision 03

Turn homework into one closed loop

Homework moved off chat and paper into a single flow: students download the brief, see the rubric and weighting, and submit files in one place. The system timestamps submissions, so "on time" is a fact, not a debate — and a missed deadline becomes a clean signal the risk engine and parents can act on.

Homework submission screen with a drag-and-drop upload zone, attached files, assignment details, grading rubric, and a submit button
Homework submission: drag-and-drop upload, transparent rubric and weighting, and a hard deadline that feeds the rest of the system.
Decision 04

Tell parents early — kindly, on their phone

This was the headline feature. The parent app is mobile-first and built around a single promise: if your child starts slipping, you'll know in days, not at the term report. When the risk engine detects a pattern — missed deadlines, a falling predicted grade — it sends a clear, non-alarming alert that names the issue, shows the trend, and offers a next step: message the teacher or book a meeting.

Parent · home Parent mobile home screen showing the child overview, an underperformance alert for Mathematics, and per-subject grades

The parent home opens on “needs your attention” — the slipping subject surfaces first, with the predicted-grade drop spelled out plainly.

Parent · alerts Parent mobile notifications screen with an underperformance alert, homework-due reminder, achievement unlocked, and parent-teacher meeting notification

Every alert is actionable: the underperformance notice leads straight to messaging the teacher, never a dead-end red badge.

Product presentation of the parent experience: three phones showing the report card, the underperformance alert detail, and the teacher message thread, under the headline Know early, act in one tap
The parent flow, end to end: an honest report card, an alert that names the issue and shows the trend, and a one-tap line straight to the teacher.

Beyond the alert itself, I designed the screens a worried parent reaches next — each kept short and scannable so the whole story fits on one phone, no endless scrolling:

Mobile alert detail for Mathematics: predicted grade slipping from A-minus to B, a sparkline trend, missed-deadline count, and a message-the-teacher action
Alert detail

The full alert: what slipped, the trend behind it, and the next step — in one screen.

Mobile report card showing overall grade A-minus, attendance, on-time rate, and predicted grade per subject with trend indicators
Report card

A term snapshot: overall grade, attendance, and a predicted grade per subject.

Mobile message thread between a parent and Ms. Petrova about a child's missed maths homework, with a reply composer
Message teacher

The conversation the alert opens — calm, direct, and already in context.

Mobile achievements and milestones screen with level, XP, badges earned, and a timeline of the child's milestones across the year
Milestones

Good news too: badges, streaks, and a year of milestones worth celebrating.

Process

End to end, across three countries and four time zones.

I ran the project from framing to shipped build with a distributed team: product design in New York, the school's teachers and academic staff in Cyprus, and the engineering team spread across Eastern Europe. Here's how the work actually moved.

01

Frame

Aligned with the school on the riskiest assumption: parents act if warned early.

02

Research

Bilingual interviews with students, parents, and teachers across both campuses.

03

Architect

Mapped the shared record and risk engine before designing a single screen.

04

Design

Built both surfaces and a token-based system in Figma, documented in Zeroheight.

05

Build

Paired async with EE engineering through Linear tickets, Loom, and weekly overlap calls.

06

Validate

Moderated Maze tests with families, then iterated the alert tone and thresholds.

Cross-functional

How a distributed team stayed one team

With design in NYC and engineering 7–9 hours ahead in Eastern Europe, we couldn't rely on real-time chatter. So the collaboration was deliberately async-first, with a small, protected window of live overlap.

DesignNew York, US

Source of truth in Figma + Zeroheight

I shipped tokenized components with documented states and redlines, so engineers in another time zone never had to guess what a spec meant.

Product DesignDesign systemResearch
FrontendKyiv, Ukraine

Component-driven build, mirroring the system

Frontend implemented the design system 1:1, so the student desktop and parent mobile shared the same primitives — and fixes propagated everywhere.

ReactDesign-system parity
BackendWrocław, Poland

The shared record + risk engine

Backend owned the single learning record and the rules that decide when a child is "at risk" — the logic behind every parent alert.

Data modelRisk rulesNotifications
QA & ResearchCluj, Romania

Testing the bad-news path hardest

QA prioritized the alert flow and edge cases — because an alert that fires wrongly, or fails to fire, costs trust fastest.

QAUsability sessions

The operating rhythm: written specs and Loom walkthroughs for everything async, plus one daily overlap hour to unblock decisions live. Linear tied design, build, and QA to the same tickets.

What went wrong

The hard parts — and how we worked through them.

A FAANG-level project isn't one that avoids problems; it's one that surfaces and resolves them honestly. These are the real frictions of shipping this product with a distributed team — and the decision that unstuck each one.

P01

The alert almost did more harm than good

Our first underperformance alert was blunt — a red “Your child is failing” banner. In testing, parents either panicked or dismissed it, and a few teachers worried it would trigger anxious messages at midnight. The signal was right; the tone was wrong.

FixReframed alerts around “needs attention,” not failure: name the specific issue, show the trend, and always pair it with one calm next step. Added quiet hours so alerts batch overnight.
P02

“Underperforming” meant five different things

Design, teachers, and backend each had a different definition of at-risk — a low grade, a missed deadline, a downward trend. Early builds fired alerts inconsistently, which is the fastest way to lose parent trust.

FixRan a workshop with teachers to define risk as a small, transparent rule set (missed deadlines + predicted-grade drop over a window), then designed the alert to explain why it fired so it never felt like a black box.
P03

Two devices, one system — and it kept drifting

Designing student-desktop and parent-mobile in parallel, the two surfaces started diverging — buttons, spacing, and status colors subtly differed, and engineering was rebuilding the same component twice.

FixStopped designing screens and built the design system first: shared tokens and primitives both platforms compose from. Frontend implemented them once, so parity became the default instead of a cleanup task.
P04

The time-zone gap turned small questions into lost days

With NYC design and Eastern Europe engineering barely overlapping, a one-line ambiguity in a spec could stall a ticket for a full day while everyone waited to be awake at the same time.

FixMoved to async-first by default: every spec shipped with a Loom walkthrough and explicit edge-case notes, and we protected one daily overlap hour strictly for decisions that genuinely needed a conversation.
P05

A bilingual, international community broke our layouts

Trinity's families span several languages, and Russian and other translations ran 30–40% longer than English — overflowing buttons, alert cards, and the tight mobile notification rows.

FixDesigned every text container to flex, tested with the longest real strings instead of English placeholders, and set type and spacing tokens with localization headroom built in.

Design system

The system both apps are built from.

Parity across two platforms only held because the system came first. Foundations, type, tokens, and components were decided once, documented, and adopted by engineering 1:1.

Trinity DS · v1.6
L1 — Foundations

Color

A calm indigo base with a violet signal and a warm gold for achievement — chosen once, inherited across both apps.

Ink#0F0A1F
Indigo#2E1065
Signal#7C3AED
Achieve#FBBF24
On track#10B981
At risk#F87171
WCAG AAWhite on Indigo scores 12.8:1 — passes AAA for body text.
L2 — Type & scale

Modular scale ratio 1.250

One ratio keeps hierarchy honest for both a roomy desktop and a tight phone — with headroom for longer translations.

TrinityDisplayClash 600 · 39px
Section headingHeadingClash 500 · 24px
Readable measure for lessons and alerts.BodySans 400 · 16px
grade_meta_codeMonoGeist 400 · 13px
L3 — Tokens

The contract

The shared interface between NYC design and Eastern Europe engineering — change once, propagate to both apps safely.

8--space-unit8px base gridspace
--radius-md12pxradius
--signal#7c3aedcolor
--at-risk#f87171color
--ease-outcubic-bezier(.16,1,.3,1)motion
--shadow-md0 16px 40pxelevation
L4 — Components

Composed patterns

Foundations and tokens assemble into components both apps share — each shipping with built-in states.

Submit homeworkButton / primary3 states
GoalMaster AlgebraInput / labeledfocus · error
Alerts onToggleon · off
On trackStatus / badge4 variants

Outcome

From scattered chats to one trusted system.

2
Role-aware experiences — student desktop & parent mobile — on one record
4 → 1
Tools families juggled, consolidated into one platform
Days
Not term-end: parents alerted to slipping within days
Next-step
Every student session opens on one prioritized action
1 system
Shared design system adopted 1:1 by engineering
Validated
Alert tone & thresholds confirmed with families in Maze
How this was validated

This is a concept commissioned around Trinity, designed and prototyped to a buildable spec rather than launched with live A/B instrumentation — so outcomes are framed as structural and qualitative, not lift percentages. The two-surface architecture, the 4 → 1 consolidation, and the shared design system are design-artifact facts. Next-step clarity and the alert tone come from moderated Maze sessions with students and parents, where the early-warning flow was the decisive test: parents had to understand the alert, trust it, and know what to do next without coaching.

What almost broke

The whole product hinged on parents trusting the underperformance alert. My first version was technically accurate but emotionally tone-deaf — and a warning system parents mute is worse than none at all. The lesson that shaped the final design: with sensitive signals, tone is a feature. Naming the issue calmly, showing the trend, and always offering a next step is what turned an anxiety-inducing red badge into something parents said they'd actually want.

What I'd do next. Instrument the alert in production to tune thresholds against real outcomes — measuring how often an early warning leads to a parent action and a recovered grade — and add a lightweight teacher view so the loop closes on all three sides.

Reflection: the win wasn't a prettier portal. It was deciding the product's real job was an honest, early, kind signal — and designing everything else in service of that.

Business impact · ROI

What early intervention is worth to a school.

For a private school, the business case is retention and reputation: families stay — and refer — when they trust the school to catch problems early. I sized the impact the way a product team would size a bet.

+15–22%
Projected lift in homework submitted on time from the closed loop
−1 term
Earlier intervention — risk surfaced in days, not at report time
↑ Retention
Higher re-enrolment from parent trust & transparency
4 → 1
Tools retired — less admin load on teachers and office staff
↓ Admin
Less time chasing homework and writing manual updates
Referrals
A visible, modern platform as an enrolment differentiator
How this was modeled

These are projections, not measured launch results — stated as ranges to be honest about uncertainty. The on-time homework lift is benchmarked from published EdTech studies on submission tooling and deadline visibility. The retention and referral effects are directional, tied to the fact that for tuition-funded schools a single retained family is worth years of fees, so even a small trust-driven re-enrolment gain dwarfs the build cost. The 4 → 1 consolidation reflects the actual tools the workflow replaced.