Skip to content
Mostafa Mahmoud

All work

One workspace for a QA team

A web app that pulls a QA team's Jira tickets and TestRail runs into one place, so engineers stop switching between tools. Mostafa's own product.

Role
Product owner and builder.
Period
2026 – present
Status
MVP
Stack
Next.js 15, Supabase, Jira REST API, TestRail API, scheduled sync
  • 15 minsync interval
  • ~1,860test cases synced
  • ~640tickets synced

Architecture

System steps in order

  1. Sources
    1. Jira API (Input). Feeds: Scheduler every 15 min
    2. TestRail API (Input). Feeds: Scheduler every 15 min
  2. Sync
    1. Scheduler every 15 min (Logic)
    2. Ingest and classify (Logic)
    3. Tickets, cases, runs, results, comments (Data). Feeds: Daily brief
  3. App
    1. Daily brief (Output)
    2. Coverage matrix (Output)
    3. Smart rerun (Output)
    4. Comment to Jira (Output)
  4. Next (planned)
    1. Role-scoped AI assistant (AI)
    2. Test case generation into TestRail (AI)
    3. Duplicate-bug detection (AI)

The problem

QA engineers lose time moving between Jira, TestRail and chat to answer simple questions: what changed, what failed, what needs a rerun.

What I built

A sync that refreshes Jira and TestRail data every 15 minutes into Supabase, and an app on top: a daily brief, ticket hierarchy with defect origins, a story-to-suite coverage matrix, smart rerun selection, classified comment feed, and posting Jira comments with mentions.

Key decisions

  1. Integrate, do not replace. Jira and TestRail stay the systems of record.
  2. Honest freshness. The UI shows when each source last synced.
  3. Cost per seat is a design constraint for the AI layer, so models are chosen per task.

Results

MVP in pilot use with an EdTech QA team. Numbers above are from the pilot data set.

All work