Print / Save as PDF

Chairul Akmal

Software Engineer

mail@chairulakmal.comMobile (JP)Tokyo, JPAvailable immediatelyLinkedInGitHub

Summary

Full-stack Software Engineer working in TypeScript (React, Next.js, Vue/Nuxt) and Ruby on Rails. Built and deployed three production web applications in Tokyo: FSM-driven workflows, spaced repetition, server-side validation, and Playwright E2E coverage. Previously a software engineer at Blossom Finance, a regulated US fintech, and a JavaScript instructor at Hacktiv8. AWS Certified Cloud Practitioner; open-source contributor to Nuxt and Ghost.org; Tohoku University alumnus.

Portfolio

May – Jul 2026

Full-stack job application tracker with FSM status transitions enforced server-side. Rails 8 API with JWT auth, Solid Queue jobs, Resend email, and Claude Haiku job-posting pre-fill; paired with a Next.js 16 + TypeScript frontend, Playwright E2E coverage, and continuous deployment on Railway.

Jun – Jul 2026

Mobile-first JLPT vocab trainer covering 8,800 words N5–N1, with FSRS spaced repetition and a multiple-choice quiz mode. AI example sentences generated offline via Claude Haiku and stored per-word; Next.js 16, Prisma, and PostgreSQL backend; deployed on Railway.

May – Jun 2026

Full-stack JLPT N3 mock exam app with 35 questions across all five vocabulary types in authentic format. Correct answers are withheld server-side, never sent to the client; AI distractors generated offline via Claude tool-use with a per-word validator, and async post-session Sonnet analysis. Building it led to a merged upstream contribution to Nuxt, PR #35697 (see Open Source).

Experience

Independent Full-Stack Engineer · Tokyo, Japan
Aug 2025 – Present

Built three production web applications end-to-end (see Portfolio list above). Passed JLPT N4; took the N3 exam in July 2026, waiting for the result.

Career Break · Jakarta, Indonesia
Sep 2024 – Aug 2025

A planned break to study Japanese and prepare the move to Tokyo.

Founder & Engineer · Libro · Jakarta, Indonesia
Feb 2024 – Aug 2024

Sole founder and engineer. Designed and shipped a collaborative publishing platform end-to-end in TypeScript, combining markdown authoring with blockchain-based content ownership on Base (L2). Next.js frontend, NestJS backend, Wagmi wallet integration.

Full Stack JavaScript Instructor · Hacktiv8 · Jakarta, Indonesia
Sep 2022 – Sep 2023

Taught the full-stack JavaScript curriculum (React, Vue, Node.js, PostgreSQL, MongoDB, Docker) to multiple cohorts of junior developers. Mentored students 1:1 and ran live code reviews; evaluated capstone projects on architecture, testing, and delivery standards.

Software Engineer · Blossom Finance · San Mateo, CA (remote)
Sep 2020 – Dec 2021

Built user onboarding, survey, and feedback flows in full-stack JavaScript on the Blossom Microsukuk™ investment platform. Set up Docker + GitHub Actions CI/CD pipelines; contributed to code review and architecture discussions in a regulated, remote-first fintech team.

Education

Full Stack JavaScript Bootcamp · Hacktiv8, Indonesia· 4-month intensive
Mar 2020 – Aug 2020
James Cook University, Australia · MSc Marine Biology↗ testamur
Australia Awards Scholarship
Jan 2018 – Dec 2019
Tohoku University, Japan · BSc Marine Biology· President's Scholarship
Oct 2012 – Sep 2016

Certifications

AWS Certified Cloud Practitioner· Amazon Web Services
Issued 2025

Technical Skills

Front-endReact, Next.js, TypeScript, Tailwind, Vue.js, Nuxt
InfrastructureGit, Docker, GitHub Actions, Railway, Cloudflare, Vercel, Amazon S3
Back-endNode.js, Ruby on Rails, NestJS
TestingVitest, Playwright
DatabasesPostgreSQL, MySQL, MongoDB, Prisma
AI / LLMAnthropic API (Claude), DeepSeek API, Vultr Serverless Inference

Languages

EnglishProfessional · IELTS 8.0 / 9.0
JapaneseConversational · took the JLPT N3 exam in July 2026, waiting for the result
IndonesianNative

Open Source

Nuxt· the Vue web framework
2026
  • PR #35697: made typescript.tsConfig a shared baseline for all four tsconfigs, with new appTsConfig and serverTsConfig options for per-context overrides. Surfaced while building Kalima (see Portfolio).
Ghost.org· open-source blogging platform
2023
  • PR #17831: removed the Bluebird dependency and refactored to native JS Promises.
  • Issue #17627: fixed Nodemailer delivery from IPv6-only hosts.