IDSpeaker
IDSpeaker is a web platform that connects event organizers with professional public speakers. Visitors can browse a curated directory of speakers, explore topics and ready-made package programs, and build a full event reservation
Tech Stack :

idSpeaker — Public Speaker Booking Platform
Overview
idSpeaker is a web platform that connects event organizers with professional public speakers. Visitors can browse a curated directory of speakers, explore topics and ready-made package programs, and build a full event reservation — selecting speakers per session, submitting a request, and tracking it through to payment. A role-based admin dashboard gives the internal team full control over speakers, bookings, site content, and pricing.
I was brought in to build/extend the platform end-to-end — from the public booking experience down to the operational dashboard used by staff to manage the business day to day.
The Problem
Booking a speaker for an event is normally a manual, back-and-forth process — emails, phone calls, spreadsheets. The client needed a self-service platform where organizers could discover the right speaker, request a booking with specific schedules, and pay — while staff could manage everything (availability, pricing, confirmations) from one place, without touching code for routine changes.
What I Built
- Speaker & topic discovery — public-facing catalog of speakers, professions, topics, and bundled package programs.
- Event reservation flow — a guided "Event Planner" where organizers assemble a full event: multiple sessions, each with its own speaker lineup, tracked through a clear status pipeline (requested → processing → payment → confirmed → completed).
- Manual payment workflow — bank-transfer payment with proof-of-transfer upload, admin confirmation, and automatically generated PDF quotations.
- Role-based admin dashboard — separate access levels for admins, agents, and company/personal accounts, each scoped to what they're allowed to manage.
- Business-configurable settings — homepage content, contact info, bank details, and speaker pricing markup are all editable from the dashboard, so the client's team never needs a developer for routine content or pricing updates.
- Bilingual experience — full Indonesian/English support across the public site.
Notable Engineering Challenges
- Working with an inherited/legacy database — the schema predated my involvement, requiring careful, non-destructive migration work to bring it under version control without breaking existing data.
- Structured, multi-session booking logic — validating and persisting a nested reservation (event → schedules → speakers per session) while keeping the flow simple for end users.
- Secure, shareable booking links — reservation identifiers are encrypted in URLs so booking details can't be guessed or tampered with.
- Decoupling business content from code — building a settings/options layer so pricing rules and homepage content are data-driven rather than hardcoded.
Outcome
The client's team now runs the entire booking-to-payment lifecycle through the platform — from a visitor's first browse of a speaker profile to a confirmed, paid event — with day-to-day content and pricing changes handled entirely through the dashboard.
