id

Software Engineer (Frontend)

LuthfiAnanda.

Lompii

online · Semarang

↗ pick a reply to keep chatting

01About

Luthfi Ananda
That's me! 👋

I'm Luthfi — most people call me Lompii — a software engineer focused on frontend at PT Mitra Kasih Perkasa (MKP) since April 2024. I work in the Travel Tech unit on Tessera, and help the Parking unit ship the apps its customers use.

On Tessera I led the move to Next.js Multi-Zones, built white-label branding so every corporate client sees its own colours, and started the i18n hook the whole platform now uses. I like the work where architecture and small UI details meet.

I graduated in Informatics Engineering from Universitas Dian Nuswantoro with a 3.93 GPA. Next, I want to go beyond the browser: mobile and MPOS, backend and DevOps.

  • Semarang, Indonesia
  • Mobile, backend & DevOps

Latest education

B.Sc. Informatics Engineering

Universitas Dian Nuswantoro · 2020 — 2024

GPA 3.93 / 4.00 · Thesis published in JTSI (2023): a web marketplace for recyclable waste.

02Skills

No percentage bars — just the tools I reach for every week.

Languages

  • TypeScript
  • JavaScript
  • HTML
  • CSS

Frameworks & libraries

  • React
  • Next.js
  • Electron
  • Tailwind CSS
  • MUI
  • Zustand
  • Redux Toolkit
  • TanStack Query
  • Framer Motion

Tools

  • Turborepo
  • Vite
  • Git
  • GitLab CI
  • Docker
  • Playwright
  • Figma

Currently learning

  • Mobile (MPOS)
  • Backend
  • DevOps

03Projects

A few things I've designed, built and shipped.

Frontend engineer · ~970 commits, #2 contributor2025 — Now

Tessera

A micro-frontend travel booking platform — bus, flight, hotel, KAI & European rail, ferry, PELNI and attractions — for corporates (B2B) and consumers via Tessera Lifestyle, live inside GoPay. I led the move to Next.js Multi-Zones and built per-corporate white-label branding with CSS design tokens, dark mode and a custom i18n hook.

  • Next.js 16
  • Multi-Zones
  • Turborepo
  • TypeScript
  • MUI
  • Tailwind
  • Zustand
  • TanStack Query

Freelance · sole frontend engineer2026

Retroppies Photobooth

A photobooth franchise system for vintage cafés, built as three apps on one Go backend — the kiosk guests use, the dashboard each café runs, and the page where guests pick up their photos.

  1. 01

    Kiosk · Electron

    A fullscreen touchscreen kiosk on Windows: pick a package, pay by QRIS or cash, shoot 4 photos plus clips, lay them on a template, pick a filter, then print borderless (A4/A6) and send results by QR and email. GIF and iOS-ready MP4 via ffmpeg; one-file installer and updater.

  2. 02

    Café dashboard · React + MUI

    Multi-tenant admin: each café manages its products, photo templates, timers and vouchers, and tracks revenue and transactions; superadmins switch between tenants. Page access follows backend permissions.

  3. 03

    Result viewer · PWA

    Guests scan the QR to view and download their photo frame, 4 raw photos, GIF and video — no login, the session code is the key, kept for 7 days.

  • Electron
  • React
  • TypeScript
  • WebGL
  • ffmpeg
  • MUI
  • TanStack Query
  • Playwright
  • PWA

Main author · ~97% of commits2024 — Now

Membership Parkir Web

A mobile-first web app that parking operators use to register and renew members on-site, live at Kawasan Industri Maspion, Gresik. Find a member by plate, card or phone; scan their prepaid card over NFC; pay by QRIS, Virtual Account or card (with re-issue for pending payments); then sync the member to the parking system. Free vs. paid members and per-tenant quotas follow each operator's role, with signed requests and encrypted local state. One of the products growing the Parking unit's service-fee revenue.

  • React
  • Vite
  • TypeScript
  • Redux Toolkit
  • Tailwind
  • shadcn/ui
  • React Hook Form
  • Zod
  • Web NFC

Frontend · Parking widgets2024 — Now

UDBM Parking Widgets

A library of 45+ self-contained React widgets, built with Babel and installed as a package into the UDBM dashboard, which mounts each one and feeds it merchant data and permissions through props. I'm the main author of its 20 Parking widgets: transaction reports by shift and period, members and member cards, cancel approvals, re-sync and re-settle of transactions, tenant management and analytics — with Excel export.

  • React
  • MUI
  • Highcharts
  • Formik
  • Yup
  • ExcelJS
  • Babel

More things I've made

04Journey

  1. Apr 2026 — Now

    Software Engineer (Frontend) @ PT Mitra Kasih Perkasa

    Travel Tech unit — Tessera, a 10-app booking platform for B2B corporates and Tessera Lifestyle in GoPay — while still helping the Parking unit.

    • ↗ Led the migration to Next.js Multi-Zones
    • ↗ Built white-label corporate branding on --tsr-* design tokens
    • ↗ Dark mode across 10 products
    Work
  2. May 2026 — Now

    Freelance Frontend Engineer @ Retroppies

    Sole frontend engineer on a photobooth franchise system: Electron kiosk, tenant dashboard and guest PWA.

    Work
  3. Apr 2024 — Mar 2026

    Junior Software Engineer (Frontend) @ PT Mitra Kasih Perkasa

    Built Membership Parkir Web and Parking widgets for UDBM, then joined Tessera across Bus, Flight, KAI and European rail.

    • ↗ Membership Parkir live at Kawasan Industri Maspion, Gresik
    • ↗ Started Tessera's custom i18n hook
    Work
  4. 2020 — 2024

    B.Sc. Informatics Engineering @ Universitas Dian Nuswantoro

    GPA 3.93 / 4.00 · Thesis published in JTSI (2023): a web marketplace for recyclable waste.

    Education
  5. Aug — Dec 2022

    MSIB Batch 3 · Front-End Web @ Dicoding × Kampus Merdeka

    Led a team of 4 on Reforma Trash Project, which won Best Capstone Project.

    Education

05Beyond code

Story games, late-night streams, and a fighting-game community I keep showing up for.

Player 1Tekken 8
Luthfi AnandaMain · Jin Kazama

Lompii

Luthfi Ananda · Rank: God of Destruction 5

Execution
88
Ship speed
91
Kopi intake
99
Ranked patience
37

Special move

Ship it

type S D P or ↓ → P — or tap the keys

Player 1

Lompii

Back side — coming soon

Community · Tekken 8 · FGC Semarang

Semarang Gelut Xtreme

Tekken 8 is where I spend my competitive energy. I'm a member of Semarang Gelut Xtreme and often end up on the committee for our tournaments — and on the mic as caster.

  • Member
  • Crew
  • Committee
  • Caster
  • On the mic as caster
    On the mic as caster
  • 3rd place — Amateur League, ELS.ID
    3rd place — Amateur League, ELS.ID
  • Runner-up — Starcomp
    Runner-up — Starcomp

06Contact

Have a project, a role, or just want to talk about frontend? My inbox is always open.

ESC

Navigate

Actions

Links

↑↓ to navigate