Skip to content
All work

Point Kikou and A-Gel

Three connected Japanese apps: a partner system, a consumer app and a shop app.

3

connected products

Partner System, User App, Shop App

3 months

to release the core User and Shop apps

A milestone inside a longer engagement, not the whole build

10

people on the team I led

In short

A Japanese points ecosystem in three parts. The Partner System manages a three-level agency hierarchy and onboarding. The A-Gel User App lets people find shops, hold coupons and use points. The A-Gel Shop App lets merchants enter purchases and award points. I designed the system architecture and core modules, implemented the frontend of all three, and led a team of ten.

Who it is for

Agencies and their businesses use the Partner System. Consumers use the User App to find shops, hold coupons and spend points. Shop staff use the Shop App at the counter to enter purchases and award points.

The problem

Point Kikou needed a points programme that worked from three sides at once: agencies onboarding and managing businesses, consumers discovering shops and spending points, and merchants awarding them at the counter. The three had to share one model of businesses, users and points.

What I delivered

  • Designed the system architecture and the core modules across the three applications.
  • Implemented the frontend of all three products: Next.js for the Partner System, React Native for the User and Shop apps.
  • Built the Partner System's three-level agency hierarchy, with businesses and projects associated to that hierarchy.
  • Built agency onboarding: dynamic forms, public onboarding links, agency invitations, administrator visibility, announcements, hearing forms and third-party reputation checks.
  • Implemented role-based access with Cognito on Amplify, and resolved the integration problems that came with combining it with dynamic forms.
  • Built shop discovery on Google Maps, the coupon catalogue, and points use in the User App, including supported card, NFC and points interactions.
  • Built merchant purchase-amount entry, available-points display, point awarding and QR and NFC interactions in the Shop App, against the backend point calculations.
  • Analysed requirements, managed team tasks and gave technical direction to the client's product team.
  • Later implemented selected GraphQL APIs.

Architecture

How the pieces fit together, from the client down to data and external services.

System topology
shops, coupons, pointspurchase amountPARTNER SYSTEMA-GEL APPSPLATFORMThree-level agency hierarchyNext.jsOnboarding and dynamic formspublic linksA-Gel User AppReact NativeA-Gel Shop AppReact NativeAuth and rolesCognito + AmplifyREST and GraphQL APIsAWSPoint calculationteam-builtDataRDS

Engineering challenges

  • Dynamic forms with role-based access

    Onboarding forms are defined dynamically, and what a given user may see or do depends on where they sit in the three-level hierarchy. Getting that to hold together with Cognito and Amplify was the hardest part of the Partner System, and resolving it was my work.

  • Two apps, one points model

    The User App spends points and the Shop App awards them, but both read one backend calculation. I built both frontends against that shared model so a counter transaction and the consumer's balance stay consistent.

  • Leading while building

    I ran task management and technical direction for a team of ten, including direction to the client's own product team, while implementing the frontend across all three products.

Outcome

The team released the core User and Shop apps on both the App Store and Google Play within three months. That milestone sits inside a longer engagement that also delivered the Partner System, which shipped after its integration issues were resolved.

  • Core User and Shop apps live on the App Store and Google Play within three months
  • Three-level agency hierarchy with Cognito role-based access
  • Led a team of ten and gave technical direction to the client's product team

References

Product pages and store listings for this work. They show the product, not a breakdown of who built which part.