UX Designer · Unity Developer · Human-Centered Builder
Writing teacher turned self-taught developer. 18 years building in Korea. Now crafting apps, VR experiences, and games that sit at the intersection of technology and the human heart.
About
"My only computer course in college was shipbuilding engineering. Everything else, I taught myself."
I spent 18 years in Korea as a writing teacher, consultant, and academic. During that time I quietly taught myself Unity, C#, app architecture, UX design, and systems thinking — not from courses, but from curiosity and stubbornness.
That background shapes everything I make. I think in narrative, empathy, and consequence first — and build the technology to serve those things. The result is work that tends to feel different from what comes out of a traditional CS pipeline.
I'm currently completing an MBS in UX Design at Rutgers while developing a portfolio of projects that span mobile wellness apps, immersive VR therapy tools, and an indie game with several years of depth behind it.
3D/2D games, VR experiences, mobile apps — all self-taught from the ground up.
Full design thinking, systems design, UX writing, and interaction design.
Economy systems, deck-building, ATB combat, housing and relationship systems.
Spatial UI, embodied interaction design, gesture-based therapeutic experiences.
UX copy, academic writing, curriculum design — language as a design material.
Local model integration for privacy-preserving AI features in apps and experiences.
Selected Work
A mobile companion app where your emotional experiences — the dark ones and the bright ones — become food and water for a creature that grows alongside you. Built solo for a team of four in a mobile app development course.
Reframes negative experience as nourishment rather than failure. Features a trauma-informed reflection log, streak-based engagement, social features, and cosmetic monetization — all designed to avoid punishing emotional states.
Read Case Study →An immersive daily ritual where users physically pull value cards to their hearts, speak aloud what weighs on them, and then — literally — grab their darkness and throw it away. A dying world slowly comes back to life.
View Project →An item shop simulator set in an RPG that stopped mid-story. The hero never came. Now you work both sides — monsters and humans — to restore an economy, rebuild a town, and cash in on a world that forgot to end.
View Project →A fully playable browser-based crafting system built as a companion piece to WEISS — and promptly got a class of students addicted. Over 290 recipes, a discovery tracker, drag-and-drop inventory, and chain crafting where items unlock new items.
▶ Play Now →A toxic, disengaged 11th grade cohort. An understaffed counseling team. A class nobody valued. I redesigned the entire college preparation program from the ground up — replacing a single flat course with a five-layer system that addressed engagement, community, accountability, and individual support simultaneously.
The result was a tiered architecture of Flights, Halos, Wings, and Feathers — each layer progressively more intimate, each solving a different dimension of the same problem.
Read Case Study →Case Study
Most wellness apps treat negative emotion as a problem to be eliminated. Kokoron asks a different question: what if your struggles could nourish something? The core mechanic reframes negative experience as food for a creature companion, and positive reflection as water. The pet survives, grows, and develops — because you did the work of showing up.
Trauma-informed log design. Negative entries in the reflection log are hidden by default, accessible only when the user actively chooses to unlock them — with a label that explicitly says it's not recommended. This single interaction acknowledges that revisiting dark moments should be a conscious, deliberate choice, not a default scroll. It also positions the app as a complement to professional support rather than a replacement.
Aspirational stat naming. The Kokoron develops stats like Resilience, Hope, and Inner Strength. These aren't arbitrary RPG numbers — they mirror the qualities users might want to cultivate in themselves. As the pet grows, it quietly models a kind of self the user might aspire toward.
Ethical monetization. All monetization is cosmetic (skins) or compassionate (Graces for missed streaks). No mechanics that penalize emotional states or gate core functionality behind payment. This was a deliberate stance, not an oversight.
The entire product — name, concept, architecture, UI design, codebase, monetization strategy, and UX writing — was designed and built by me in Unity for a mobile app development course. The team of four was, in practice, a team of one.
The app was ported to HTML5 for web demonstration. Data persistence uses JSON-based local storage. Visual assets licensed through the Unity Asset Store; all other design work is original.
Migrate to a proper backend (Supabase or Firebase) to enable genuine social features — shared gardens, friend Kokorons, community streaks. The social layer is designed but not yet wired to persistent cloud data. The competitive minigame system, where Kokoron stats earned through emotional work translate into friendly competition, is the long-term vision I'd develop next.
Case Study
Most wellness apps ask you to think about your feelings. Luminare asks you to do something about them — physically, in space, with your hands. It's a daily VR ritual built around embodied action: pulling values close, speaking burdens aloud, grabbing darkness and throwing it away. The world you inhabit starts dead and broken. Over ten days of returning, it comes back to life.
The core insight behind the design is that VR's unique power isn't visual immersion — it's physical presence. The body remembers what it does in ways the mind alone doesn't. Luminare is built entirely around that idea.
The experience follows a deliberate sequence, each step building on the last. The user opens a book their character holds and summons a halo of value cards — Creativity, Family, Justice, Friendship, and others. They physically reach out, pull four cards to their chest, and release them. A collider registers the gesture; the values are logged.
Those four values are then woven into a personal mantra: "My creativity gives me the strength to face every day. I do this for my family and for my sense of justice. It is my friendships that remind me who I am." The user then speaks what's weighing on them to a virtual avatar — which nods and responds while audio input is active — processed locally by an LLM that generates a brief summary. Nothing is recorded or transmitted.
Then the central gesture: the user looks at their own heart, sees dark particles swirling there, reaches in, grabs them, and throws them to the ground. Where the darkness lands, a shadow creature appears — labeled with what the user just named. They recite their mantra three times. Each recitation damages the creature. On the third, it dissolves.
The dissolve shader expands outward from that point: grey grass becomes green, dead trees flower, animals appear, the sky lightens. Each day of returning extends the restoration further. After roughly ten sessions, the world is fully alive.
Physical gesture as commitment. Pulling a card to your heart isn't a UI metaphor — it's a somatic act. The body registers it differently than clicking a button. This was intentional: values chosen through physical action feel more claimed than values selected from a list. The gesture creates a moment of genuine choice.
Privacy-first voice processing. The avatar listens and responds while you speak, but nothing is stored or sent to a server. A local LLM generates a brief summary purely for reflection — never for data collection. This was a core design constraint from the start, not an afterthought. Users needed to be able to speak freely.
Externalization of the internal. The dark particles at the heart, the shadow creature carrying your named burden, the act of physically throwing darkness away — these are all externalizations of internal psychological processes. The design borrows from narrative exposure therapy and somatic approaches without being clinically prescriptive. It creates a safe theatrical frame for engaging with difficult feelings.
World state as progress. Most habit apps show you a streak number. Luminare shows you a world healing. The emotional register of that feedback is completely different — it ties your daily practice to something larger than a metric, and makes absence feel like something worth returning from rather than a failure state.
One session per day, hard limit. The ritual cannot be repeated more than once daily, and progress is saved between sessions. This was a deliberate pacing decision: the experience is meant to be a morning or evening ritual, not a binge. The limitation also makes each session feel meaningful — you can't grind your way to a healed world.
The entire experience was designed and built in Unity with VR support. Systems include: gesture-based card interaction with physics colliders, an avatar with reactive animation tied to microphone input, local LLM integration for voice summarization, a dissolve shader system that progressively transforms the environment, a day-tracking save system, and the full world environment including the dead state and all restoration stages.
The project is nearly complete — the main level pack is fully functional through all ten days of restoration. Remaining work is polish, onboarding/tutorial design, and additional level packs (planned themes: abandoned city, woodland shrine, coastal ruins).
The avatar currently uses a simple animation system to respond to voice input. The most impactful upgrade would be replacing it with a more expressive model — ideally one that reflects emotional tone from the LLM summary back to the user through facial expression and posture. The session could then feel genuinely responsive rather than just attentive. Beyond that, the additional level packs are the natural commercial expansion, each offering a new visual world and a slightly different ritual context.
Case Study
WEISS begins with a premise that's both comedic and melancholy: you set up your item shop in front of the final dungeon, expecting to profit from the hero's legendary run. The hero never came. The demon lord waited. The world's economy, built around the eternal conflict between light and dark, simply... stalled.
Now you're the one who has to fix it — not by being a hero, but by being a merchant. You work both sides. You sell potions to adventurers and reagents to monsters. You broker a fragile peace through commerce. You rebuild a town that had given up on itself. The game is named WEISS — which sounds like Vice — because doing good in a broken world sometimes requires playing all the angles.
The shop and economy. Like its spiritual predecessor Recettear, WEISS centers on running an item shop — buying low, selling high, managing demand and supply. But the economy is dynamic: market demand shifts based on in-game events (a monster surge drives up potion sales; a peaceful week tanks weapon prices). Players can specialize in different crafting disciplines to control their own supply chains.
Town rebuilding. The surrounding town is derelict when you arrive. As you generate income, you can invest in rebuilding structures — each one unlocking new characters, new inventory, or new systems. Crucially, you can invite both adventurers and monsters to take up permanent residence, housing them in buildings you restore.
The relationship system. Residents develop relationships with each other dynamically over time. Adventurers and monsters placed in the same housing will interact, build trust or friction, and eventually form adventuring parties — with stats and abilities shaped by those relationships. Every playthrough generates different configurations, making the social simulation meaningfully replayable.
Deck-building ATB combat. When your player character ventures out, combat uses a hybrid system: you build a deck before battle, but cards are played in real-time ATB style — enemies attack continuously while you manage a regenerating resource pool to play cards. This creates genuine tension that pure turn-based deck-builders don't have.
Gathering and crafting. A deeper resource loop than most shop simulators: you explore the world to gather materials, which feed into crafting recipes, which produce items to sell or use. Specializing in alchemy, smithing, or cooking creates distinct playstyles and economic advantages.
The Ancient Cave system. A procedurally generated dungeon with its own loot table and exploration logic — a direct nod to Lufia II's legendary Ancient Cave — provides an infinitely replayable late-game loop for players who want pure dungeon-crawling.
Moral ambiguity as the central mechanic. The player isn't the hero — they're the merchant who profits from the conflict between heroes and villains. This reframes the entire JRPG genre: instead of asking "who wins?", WEISS asks "who benefits?" That question turns out to be rich enough to drive a whole game.
The dynamic relationship system. Organizing cohabitation between monsters and humans and watching emergent relationships develop was the most ambitious design decision in WEISS. It required building a reputation and relationship tracking system, behavioral rules for NPC interactions, and a party formation logic that reflects those relationships in combat stats. The payoff is a game that feels different every run because the social fabric of your town is never the same twice.
Hybrid ATB deck combat. Pure deck-builders (Slay the Spire et al.) are satisfying but slow. Pure ATB games are fast but shallow. The combination — build a deck, play it in real time under pressure — was harder to tune than either system alone, but creates a combat experience that rewards both preparation and instinct.
Visual tone mixing. WEISS deliberately mixes warm, cozy interior aesthetics (the shop at dawn, the crafting shed in afternoon light) with stark nocturnal dungeon environments (neon purple, metal scaffolding, candlelight). This tonal contrast reflects the game's moral duality — the same world that contains your cozy shop also contains something much darker beneath it.
WEISS has been in development for several years as a solo project built entirely in Unity. Current implemented systems include: the full shop economy with dynamic demand events, the town rebuilding framework, housing and NPC placement, the relationship and party formation system, the hybrid ATB deck-building combat, gathering and multi-discipline crafting, the procedural dungeon system, a full day/night cycle with time-based events, and the character equipment and stat system. Visual assets are licensed from the Unity Asset Store; all systems, architecture, design, and writing are original.
Design process. WEISS is designed entirely within Unity itself — no wireframes, no external prototyping tools. Each system is built, played, and iterated on directly in the engine. This means the design record lives in the code and scene history rather than in spec documents, but it also means every mechanic has been genuinely playtested at every stage of development rather than theorized on paper.
The relationship system is the heart of WEISS but also its least polished element — the behavioral rules for NPC interaction need more granularity, and the visual feedback for relationship development (how do you show a monster and an adventurer becoming genuine friends?) deserves a dedicated design pass. Beyond that, the narrative layer needs more work: the game has strong systemic bones but the story of why you're there and what you're working toward needs to be woven more explicitly into the moment-to-moment play.
Case Study
The college counseling program existed, but it wasn't working. Students in 11th grade were drowning in AP exams and treated college applications — still nearly a year away — as an abstraction not worth their attention. Attendance was poor, engagement was lower, and the program had already been redesigned once without meaningful improvement.
The incoming cohort made things harder. They had a well-documented reputation for bullying and hyper-competitiveness — exactly the wrong environment for a college process that requires vulnerability, peer support, and honesty with counselors. At the same time, our team had lost two members, meaning we had less staff than before and needed to serve more students with less.
I identified four distinct failure modes in the existing program: students didn't value the time, they didn't trust each other, they felt the process was overwhelming and monolithic, and they had no accountability structure beyond grades. Each layer of the new system was designed to address one of these directly.
Critically, the entire program was designed around a constraint: we could not ask students to give up any of their own time. Every touchpoint was inserted into time they already had — homeroom periods, study halls, brief drop-ins. This wasn't just logistical; it was a trust decision. Demanding extra time from already-overloaded students would have poisoned the relationship before it started.
The funnel of intimacy. Each layer is progressively smaller and more personal — from 70+ students in a Flight down to a single pair in Feathers. Information and accountability flow top-down; trust and vulnerability flow bottom-up. Students who were closed off in large groups opened up in Wings; students who wouldn't ask questions in Halos would ask them one-on-one.
Cross-cutting interest groups. Wings were deliberately not organized by major or academic track — they were organized by personal interests drawn from a survey (art, food, gaming, etc.). This was a direct response to the cohort's competitiveness. Mixing students across academic hierarchies and forcing collaborative activities (including games like Keep Talking and Nobody Explodes, which require communication and trust to succeed) created relationships that cut across the usual social fault lines.
The sticky note wall. The Feathers check-in was designed to make invisible progress visible — and public in a safe, celebratory way. The physical act of writing something down and adding it to a shared wall together was more psychologically meaningful than a logged database entry. It also modeled the real shape of the college process: not a single heroic effort, but hundreds of small steps accumulated over time.
Beyond designing the system itself, I created all program documentation, the student-facing presentation (Primus Volatus: First Flight), the survey instruments, the Wing activity plans, and the visual identity of the program. The presentation was designed to be warm, clear, and student-appropriate — using flight and sky metaphors throughout to frame the college process as something to look forward to rather than dread.
The program's weakest link was measurement. I had qualitative signals — attendance improved, the cohort's collaborative behavior changed noticeably by the second semester — but no formal tracking system for engagement quality over time. If I were building this again, I would design a lightweight longitudinal tracking tool into the Feathers system from the start, turning each sticky-note check-in into a data point that could inform counselor interventions earlier in the year.
Design Philosophy
"Every project I've made asks the same question: what does it feel like to be inside this experience — not just to use it, but to live with it?"
I came to design through language. As a writing teacher, I understood before I had the vocabulary for it that the gap between what something says and what it makes someone feel is where all the important work happens.
That instinct runs through everything I build — the way Kokoron never lets your creature die, the way the VR experience asks you to physically throw your darkness away, the way WEISS puts you in a morally ambiguous economy and asks what you're willing to do to keep the world running.
Good design doesn't solve problems. It creates spaces where people can be more fully themselves.
Contact
I'm currently open to UXD roles, game design positions, wellness tech opportunities, and interesting contract work — especially anything that sits at the intersection of technology and human experience.