Campaign Microsite Platform
One reusable backend powering 14 national campaign microsites.

Backend Developer | 2024 - Present
Backend systems behind national campaigns, contests, and recommendation engines: the problem, what I built, and how it held up.
A shared backend platform behind 14 national campaign microsites across the detik Network — Detikcom, CNN Indonesia, and CNBC Indonesia. Reusable content services, a common publishing flow, and cache-aware read paths let each new event launch on proven infrastructure instead of a fresh build.
Every campaign used to arrive as its own codebase. The same shapes — a landing page, a list, a detail view, a CTA to track — rebuilt each time, and each rebuild carried fresh bugs into a launch day nobody could postpone.
I pulled the recurring pieces into shared backend services behind one publishing flow, so a new event composes existing modules instead of forking a new backend.
Read paths sit behind Redis with invalidation hooks wired into publishing. That is what lets editorial push a correction during peak traffic and see it live without a deploy.
Events delivered on this platform

Adhyaksa Awards 2025
2024 - PresentBackend for the Adhyaksa Awards nomination flow, where nominee, category, and editorial metadata all had to agree with each other on a publication day with a sharp traffic spike.
- The hard part was consistency: nominee, category, and editorial metadata were edited by different people, and any drift between them showed up on the public page.
- I put the core data contracts behind shared services, so the landing, nominee, and highlight sections all consumed the same validated payload.
- High-visibility sections got tuned query paths and selective cache TTLs rather than a blanket cache policy.
- Through the publishing window I ran release checks alongside content and QA to catch last-minute regressions before readers did.

CNBC Awards Campaign
2024 - PresentA multi-phase awards campaign, each phase with its own content priorities and deadlines, backed by reusable data services and a cache tuned to how often editorial actually updates.
- The campaign ran in phases, and each phase wanted different content in front — so the backend had to be flexible without becoming unpredictable.
- I built reusable modules for content retrieval, campaign state, and section-level payloads, which kept phase changes out of the deployment path.
- Redis caching on the high-frequency endpoints, with invalidation matched to the editorial update rhythm, kept expensive reads from repeating.
- The result: faster iteration during phase switches, with response times staying flat under rising concurrency.

CNBC Economic Outlook 2026
2024 - PresentBackend for an agenda-driven event where the timeline and speaker lineup kept moving right up to the keynote, and every section had to reflect each change at once.
- Agenda, highlights, and landing all read from the same schedule, so a single speaker change had to propagate everywhere or nowhere.
- I separated campaign configuration, content retrieval, and page composition into distinct services, which made a schedule edit a data change rather than a code change.
- Heavy read blocks used cache-first retrieval with controlled invalidation, so updates propagated without making the database absorb the traffic.
- That turned the announcement windows — historically the riskiest hours — into predictable ones.

Apresiasi Konektivitas Digital
2024 - PresentAn awards microsite built on the shared campaign modules, tuned for the traffic burst that arrives the moment recipients are announced.
Visit site
CNBC Green Economic Forum
2024 - PresentA forum microsite whose session and speaker content changed often; the shared modules absorbed the edits without a redeploy.
Visit site
CNBC Proper
2024 - PresentRuns on the same campaign backend, with cached read paths so a steady editorial cadence never turns into database pressure.
Visit site
CNBC Semarak Ramadan
2024 - PresentA month-long editorial series rather than a single event — daily publishing, handled by the shared publish flow and its cache invalidation without hand-holding.
Visit site
CNN Awards Campaign
2024 - PresentThe same backend platform serving a different portal — evidence the modules were portable across the detik Network, not wired to one newsroom.
Visit site
Detikcom Awards
2024 - PresentDetikcom's flagship awards night, and the heaviest concurrent audience of any campaign on this platform.
Visit site
Hoegeng Awards
2024 - PresentA public-facing awards microsite on its own domain, which meant the shared backend had to serve a campaign living outside the main portal.
Visit site
Indonesia SEZ Summit 2025
2024 - PresentA standalone summit site — agenda and speaker content on its own domain, running on the campaign modules.
Visit site
Jogja Financial Festival 2026
2024 - PresentA regional festival microsite — schedule and event content served from the same reusable backend as the national campaigns.
Visit site
Pilihan Bunda Awards
2024 - PresentA reader-facing awards campaign where public participation drove the traffic curve, so the read paths had to hold through the peaks.
Visit site
Sekar Agni Negeri
2024 - PresentA campaign microsite on its own domain, assembled from the shared modules and shipped without a bespoke backend.
Visit site
Key impact
- Each new campaign is now assembled from existing modules instead of built from scratch. 14 microsites run on the same backend.
- Cut repeated database reads on listing and detail pages by moving to route-level Redis keys with explicit invalidation on publish.
- Left editorial able to publish minutes before an event goes live, with no backend deploy involved.
Technologies used
- PHP
- Phalcon
- PostgreSQL
- Redis
- Nginx
