A Software Engineering Journey
MY STORY
Nontaphat Pongpis
Timeline
A visual journey through the years that shaped my path
Where It All Started
The beginning. I got accepted into university, and that's where this whole journey started.

Before University
The last stretch of school life at Assumption College Sriracha before university — the moments I spent with friends and classmates before everything changed.
University, Finally — During COVID
Finally in university for real — Srinakharinwirot University, Computer for Communications — except it was all during COVID. Online classes, empty campus, and figuring out student life through a screen.

Learning the Web
Started teaching myself HTML and CSS3 from scratch, laying the foundation that everything else would be built on.

First Steps in SwiftUI
Worked through SwiftUI examples — alerts, buttons, text fields, contact cards — while getting comfortable with Apple's declarative UI framework.

Final Year 2 Project: Cartoon App
Built a Swift iOS app for my Year 2 final project, an app centered around browsing and viewing cartoons.

Exploring Firebase
Experimented with Firebase as a backend for early app prototypes — auth, database, and hosting all in one place.

JavaScript & React
Picked up JavaScript fundamentals and built my first components in React.

Swift Playgrounds
Built interactive playgrounds — Puzzle World, Shapes, Sonic Create — to sharpen my Swift fundamentals.

Backend & Full-Stack Experiments
Rounded out the year with backend practice — a Node.js + EJS midterm project, password hashing with bcrypt, and a first Next.js blog.

Building FRIEND
Designed and built FRIEND, a room-based social iOS app, and submitted it to the WWDC22 Swift Student Challenge. The project went through four iterations and was later carried through as my final iOS course project.

Final Year 3 Project: FoodApp
Completed my Year 3, Term 2 final iOS project, FoodApp, applying everything learned across SwiftUI and Swift Playgrounds.

FoodApp, the Web Version
Rebuilt FoodApp for the web in React as a companion to the iOS final project.

Expanding the Stack
Went deeper into Node.js, TypeScript, Dart, Flutter basics, and component libraries like Chakra UI.

Software Engineer Intern @ Graffity
Interned at Graffity Technologies. Built websites in React and TypeScript with Mapbox-GL-JS and ThreeJS for mapping and 3D visualization, designed an internal employee website, supported backend work in Golang and MongoDB, and contributed to a Flutter mobile app.

Redesigning Graffity's Website
Kept on part-time and led the redesign of Graffity's main company website with React, TypeScript, Mapbox-GL-JS, and ThreeJS, wrote product documentation with Nextra, and kept contributing to backend (Golang, MongoDB) and the Flutter app.

Graffity Viewer & Mappers
Contributed to Graffity Viewer and Graffity Mappers, two published iOS apps for previewing and capturing AR content for Graffity's AR cloud platform.

Climate Chronicles
Completed my senior thesis, Climate Chronicles, from proposal through storyboard to final presentation.

COSCI Thesis Exhibition Website
Built the website for my department's annual thesis exhibition, "Keep Rolling Thesis: Way Down to Cinema Town," including the digital ticket and event pages.

Building This Portfolio
Started building this very portfolio site with Next.js and Tailwind CSS.

Go & Backend Development
Picked up Go from the ground up — goroutines, REST APIs, and building small backend services — as a lower-level counterpart to the Node/TypeScript backends I'd already been writing.

Backend with TypeScript
Rebuilt an earlier backend service in TypeScript, adding proper typing across routes and data models instead of writing everything in plain JavaScript.

Flutter Frontend
Picked Flutter back up to build out a mobile frontend, working through widgets, state management, and navigation beyond what I'd touched during the Graffity internship.

Adding a Labs Section
Added a Labs section to this site to showcase side projects, starting with Climate Chronicles as the first entry — hosted as its own app and proxied under /labs.

Split Bill Joins the Labs
Built and connected Split Bill, a trip expense splitter for friends, as the second Labs project — Next.js, Prisma, and Neon, proxied under /labs/split-bill.