Available for freelance & full-time roles

I build web appsmobile appsgamesrealtime tools
people love to use.

Hi, I’m Louie Jay — a full-stack developer in Cebu, Philippines, currently building NativeCamp at Forty Degrees Celsius. I take ideas from first sketch to a live product: interface, backend, database, deployment and app-store build.

4
products built & live
3
platforms: web, Android & iOS
5
languages shipped in one game
PHPLaravelVue.jsCakePHPMySQLTypeScriptReact NativeExpoPhaserThree.jsSupabasePostgreSQLCloudflare WorkersDurable ObjectsWebSocketsCapacitorViteVitestTailwindBlender

01 Selected work

Real products, shipped
and running.

Every project here was designed, built and deployed by me — from the database schema to the last animation.

Isla Lola farm with crops, a nipa hut and the player
Isla Lola town fiesta celebration scene

01 Mobile & web game · 2026 · Solo

Isla Lola

A cozy Filipino island-life game about farming, fishing, cooking and community — built to respect the player’s time.

  • Full in-game year: seasons, typhoons, fiestas and 14 cultural events
  • 10 crops, 12 recipes, villagers, memories and home decoration
  • Android app plus web build, localised into 5 Philippine languages
  • Phaser 4
  • TypeScript
  • Vite
  • Capacitor
  • Vitest
  • Cloudflare Pages
kusinalink.expo.app
KusinaLink landing page on desktop showing today's menu
KusinaLink daily menu on a phone with Add buttons

02 Ordering platform · 2026 · Restaurant client

KusinaLink

Daily-menu ordering for a working restaurant: customers order before the cutoff, the kitchen sees exactly what to cook, everything goes out in one delivery.

  • Live stock — “Only 3 left” and “Sold out” update in real time
  • Vendor dashboard: kitchen totals, handover list, bulk status updates
  • Customers edit or cancel their own orders before the cutoff
  • Expo
  • React Native
  • TypeScript
  • NativeWind
  • Supabase
  • PostgreSQL
jammr — weekend-crew
Jammr group chat on desktop with message bubbles and a Start a jam button
Jammr chat on a phone

03 Realtime web & mobile app · 2026 · Solo

Jammr

A group chat where friends start a “jam” and hear the same song at the same second — on the web or on their phones.

  • Shared queue, autoplay and recommendations, synced across every device
  • Slack-style chat: replies, reactions, ~1,900 emoji, custom emoji, files
  • One edge server per room — no servers to manage, runs on the free tier
  • Cloudflare Workers
  • Durable Objects
  • WebSockets
  • JavaScript
  • React Native
  • YouTube API
adrift-gamma.vercel.app
Adrift: first-person view of the open ocean with floating debris and a forested shore

04 3D browser game · 2026 · Prototype

Adrift

A first-person ocean survival game in the browser: hook debris, craft tools, grow your raft — then swim for a coast full of dinosaurs.

  • Custom ocean and sky shaders with swell, diving and underwater light
  • Gather → craft → build loop with a single hotbar “in hand” state
  • Living ecosystem: herds flee, raptors and tyrannosaurs hunt each other
  • Three.js
  • JavaScript
  • Shaders
  • Blender
  • Python

02 What I bring

One developer,
the whole product.

I’m comfortable at every layer, so nothing gets lost between design, frontend, backend and release.

Web & mobile apps

Responsive, accessible interfaces that feel native on phones and desktops — one codebase where it makes sense.

  • TypeScript
  • Vue.js
  • React
  • React Native
  • Next.js
  • Tailwind CSS
  • HTML & CSS

Game development

2D and 3D games with real systems behind them — economies, seasons, AI, saves — and the feel to make them fun.

  • Phaser
  • Three.js
  • Shaders
  • Game design
  • Blender

Backend & realtime

Data models that hold up, safe concurrent writes, live updates over WebSockets and APIs that scale on the edge.

  • PHP
  • Laravel
  • CakePHP
  • MySQL
  • Supabase / PostgreSQL
  • Cloudflare Workers
  • WebSockets

Shipping & quality

Automated tests, migrations, CI-friendly deploy scripts and store-ready Android builds — not just a demo on my laptop.

  • Vitest
  • Capacitor
  • EAS
  • Cloudflare Pages
  • Git
Product thinkingI ask who it’s for and what “done” means before writing code.
Clear communicationPlain-language updates, written docs and README guides for every project.
Craft & detailEmpty states, slow networks, undo buttons — the edges users actually hit.

03 Problem solving

Hard problems,
simple experiences.

A few of the tricky bits behind the projects above — and how I solved them.

Jammr

Everyone hears the same second

The server never streams audio or a playhead. It stores “position P at server time T”; each client estimates its clock offset with NTP-style pings and corrects any drift over 1.5 s. New songs start 1.5 s in the future so every device can buffer and begin together.

Result: tight sync across browsers and phones with almost no server load.

KusinaLink

Never sell the last plate twice

Stock is deducted at the moment an order is placed, inside a single atomic Postgres function — so two customers racing for the last serving can’t both win. Cancellations return stock, and orders snapshot the name and price they were bought at.

Result: the kitchen’s numbers always match reality.

Isla Lola

A game that grows without breaking saves

All game rules live in a pure, renderer-free state module covered by Vitest suites. Saves are versioned and migrated forward (v1 → v6), so every new season, crop and feature arrived without wiping anyone’s progress.

Result: new seasons ship without resetting anyone’s progress.

Jammr

Unlimited music on a 100-search budget

YouTube allows ~100 searches a day. I built a matching pipeline that tries free sources first — MusicBrainz by ISRC, then the artist’s official channels — and only searches as a last resort, caching every match and pre-matching chart songs on a cron.

Result: most songs never touch the search quota.

KusinaLink

Deploys that really went live

The hosting alias sometimes kept serving the previous build after a production deploy. My deploy script stamps each build with a unique ID, polls the live site for it and re-promotes until the new version is actually being served.

Result: one command, and production is verified fresh.

Isla Lola

Speaking the player’s language

A small i18n layer with English keys ships the UI in English, Filipino, Cebuano, Ilocano and Hiligaynon — with a glossary that deliberately keeps the characters’ Taglish dialogue intact, because that’s how they really talk.

Result: a game that feels local, not translated.

04 How I work

From idea to live product,
without the guesswork.

  1. 01

    Understand

    We agree on who it’s for, what success looks like and what’s out of scope — written down, so nothing gets lost.

  2. 02

    Design

    Flows and screens first, then the data model. Decisions you can see and react to before they’re expensive to change.

  3. 03

    Build in slices

    Working features every few days on a live preview link, so you can click through progress instead of reading reports.

  4. 04

    Ship & support

    Production deploy, docs and a handover — then iteration based on how real people actually use it.

Portrait of Louie Jay Ceniza
Made in the Philippines

05 About me

I care about the people on the other side of the screen.

I’m Louie Jay, a web developer at Forty Degrees Celsius, Inc. in Cebu, where I work on NativeCamp. Outside work I build my own games and apps — useful, warm and genuinely local, like a lunch-ordering app for a neighbourhood kitchen or a cozy game about island life with Lola.

I love the whole journey: shaping a fuzzy idea, choosing the right tools, sweating the small interactions and getting it into people’s hands. I write things down, explain trade-offs plainly and finish what I start.

Experience

  1. 2024 — now
    Web Developer · Forty Degrees Celsius, Inc.

    Cebu IT Park · the engineering team behind NativeCamp, one of Japan’s largest online English conversation schools

    I build and maintain the web front end that learners use every day — modernising legacy pages onto a newer stack and keeping them pixel-matched with production on desktop and mobile.

    • PHP 8
    • CakePHP
    • MySQL
    • Vue.js
    • jQuery
    • Tailwind CSS
    • Laravel
    • Next.js
    • TypeScript
    • Docker
  2. Feb — Jul 2024
    Web Developer / QA Intern · Blenditoro Corp.

    Philippine team of BlendIT, an Estonian software company (Tallinn · Bohol · Cebu) delivering web, mobile and UX projects for clients with human-led, AI-assisted development

    Tested client web apps end to end — checking new features, finding bugs and verifying UI/UX against specs — and documented issues for the developers. Explored the stacks BlendIT delivers in, and built my main project on a headless Laravel + Vue.js architecture:

    Drive — a Google Drive–style cloud storage app

    Nested folders, drag-in file and whole-folder uploads with progress, search, favourites, trash with restore, sharing with other users by email, and one-click zip downloads of any selection.

    • Laravel 11
    • Vue 3
    • Inertia.js
    • Tailwind CSS
    • MySQL
    • Docker

Education

  1. 2020 — 2024
    BS Information Technology · Cebu Technological University

    Cebu City, Philippines

  • Based inCebu, Philippines · GMT+8
  • WorksRemote, worldwide
  • SpeaksEnglish · Filipino
  • Now buildingIsla Lola for Google Play

06 Contact

Have a project in mind?
Let’s build it.

Tell me a little about it and I’ll get back to you with next steps.

  • 1A reply with questions and a rough plan
  • 2A clear scope, timeline and quote
  • 3Working previews you can click, every week
What do you need?

Opens your email app with the message ready to send.