arrow_backBack to projects
Platform Engineering·Peaqock Financials·2023–2024

B2B Matchmaking Platform

Built the complete frontend for a global B2B matchmaking platform — real-time meetings, deal pipelines, and videoconferencing for hundreds of companies at international trade events.

Overview

Every year, large-scale trade events bring African and international businesses together to form partnerships. This platform digitized and accelerated that process — giving companies a space to discover matches, schedule meetings, negotiate deals, and conduct video calls, all in one place, in real time.

The Challenge

The platform had to support hundreds of concurrent users during live, high-stakes events with no margin for failure. Meeting scheduling, deal workflows, and videoconferencing all had to work simultaneously in real time — with every state change instantly visible to all relevant participants.

My Role

I owned the full frontend — matchmaking UI, meeting lifecycle, deal pipeline, real-time sync via WebSockets, and the videoconferencing module built on AWS Chime SDK. This was the most complex frontend system I'd built — multiple real-time channels, formal state machines, and a third-party SDK integration, all running together.

Architecture Decisions

WebSockets for all real-time state

Used Socket.IO to broadcast state changes (meeting confirmations, deal updates, new matches) to all connected clients — instant sync with no polling.

AWS Chime SDK for video

Chose Chime over raw WebRTC — its managed infrastructure handled ICE negotiation, TURN relay, and connection recovery automatically, reducing complexity significantly.

Formal state machine for meetings

Meetings had 6 states (requested → confirmed → scheduled → in-progress → completed/cancelled). A formal state machine made invalid UI transitions impossible and simplified event handling.

Role-based component rendering

Exhibitors, buyers, and admins had entirely different views of the same data. Built a role context provider that switched component variants by user type — one route, multiple experiences.

Hard Problems Solved

  • 01

    Video reconnection — dropped connections mid-meeting required reconnection without re-triggering the Chime session setup. Built a heartbeat + recovery system for transparent reconnection.

  • 02

    Concurrent deal conflicts — two users editing the same deal caused conflicting updates. Solved with optimistic updates + server-side conflict resolution and UI diff indicators.

  • 03

    Event-time load spikes — 400+ active users simultaneously during peak hours. Optimized WebSocket message batching and debounced non-critical UI updates to maintain responsiveness.

Impact

  • check_circle

    Processed 50,000+ corporate data points per minute during live trade events without UI slowdown

  • check_circle

    Hundreds of companies completed meetings and signed deals directly through the platform at the live trade summit

  • check_circle

    The in-house video module replaced an external Zoom integration — keeping users inside the product

Tech Stack

ReactAngularNext.jsTypeScriptWebSocketsSocket.IOAWS Chime SDKAWS CognitoAWS ECSRedux