hello, i'm ray 👋🏻
i build pixel-perfect UIs at paynet
Frontend engineer by trade, obsessive craftsman by nature. I make pixels behave, mostly at PayNet, and I’ve been hooked on building things for the web since I was a kid.
On the rare occasions that I decide to touch grass, you’ll probably find me chasing good light with a camera, flipping through record bins for vinyl, or hunting for the perfect cup of matcha.
Welcome to a tiny corner of the internet I somehow ended up owning!
My love for programming didn’t start in a classroom or a textbook. It began with my 10-year-old self tinkering with PHP and XAMPP while accompanied by a random Indian guy on YouTube teaching me how to spin up a private Habbo server.
It was messy as hell and I didn’t know what the hell was I doing. But seeing something I made coming to life and actually worked for the first time felt like magic. That was enough to spark something that never really went away.
Since then, coding stopped being just about getting things to work and became about getting things right. I’m far from being a prodigy and I’m definitely not fast. I just have a stubborn need to care. I’ll happily spend an unreasonable amount of time polishing something most people would call “good enough.”
I’ve got big plans for myself, and I’m probably still at the beginning of them. There are too many things I want to build, too many skills I want to earn the slow way, and too many ideas sitting half-formed in my head.
This site is where some of those thoughts land: A mix of experiments, reflections, side projects, and the occasional ramble when I’m thinking out loud.
None of this is finished. I’m not either. But if you’re here, thanks for stopping by!
Frontend engineer by trade, obsessive about craft by nature.
I build interfaces for a living, and the reason I still like it has surprisingly little to do with technology for its own sake.
To me, software is a creative medium. Most people look at an interface and see buttons, forms, and components. I tend to fixate on the parts nobody is meant to notice — the animation that makes a transition feel right, the spacing that lets a page breathe, the small interaction that makes something feel intuitive instead of merely functional.
Those details are usually the difference between something that works and something that feels like a person made it.
By day I do this at PayNet, Malaysia’s national payments network, working mostly in Vue and TypeScript on the interfaces and shared tooling the rest of the team builds on. The kind of work that’s meant to disappear into the background when it’s done right.
Chasing Craft
What I’ve come to believe is that excellence rarely comes from talent alone. The engineers, designers, and photographers I admire most all share one trait: an almost unreasonable level of care.
The web moves fast, deadlines pile up, and “good enough” is usually the rational choice. But I’ve never been good at stopping there. I’ll nudge a layout by a pixel or two, rebuild an interaction for the tenth time, and go back to finished work just because I know it could be better.
The slightly embarrassing part is that it doesn’t clock off when I do. I’ve redesigned a layout in my head on the way home, and lain awake reworking an easing curve.
It’s the same instinct everywhere else. The care that goes into an interface is what pulls me toward photography, toward collecting records, toward fussing over film simulations and old gear. They’re all versions of one habit — slowing down long enough to get something right.
I don’t think perfection exists. But chasing it teaches you things that settling never will.
Learning in Public
Some of the better things in my career didn’t come from applications or interviews. They came from sharing — writing about what I’ve figured out, mentoring at hackathons, giving the occasional talk, putting unfinished work somewhere people can see it.
The internet is quietly good at connecting people who care about the same things. A blog post or a half-built side project has a way of becoming a bridge to people you’d never otherwise meet.
That’s why I keep my own site. It’s less a portfolio than a living archive — a place for the things I’ve built, learned, broken, and occasionally become obsessed with.
Beyond the Screen
When I step away from the keyboard, I’m usually somewhere with a camera: a Fujifilm X100VI most days, a Nikon F3 when I want to slow all the way down and shoot film. Otherwise I’m digging through record bins, or wandering a city paying attention to the light.
Most of my favourite photographs, songs, and ideas have come from letting myself be a beginner at something again.
Where this is going
I don’t have a grand five-year plan, and I’ve stopped pretending I should. What I have is a direction.
I want to keep building things that quietly work and quietly matter. I want to keep making things with my hands and my eyes that have nothing to do with my job and everything to do with staying a whole person. I want to keep writing in a voice that sounds like me and not like a brand. And I want to keep handing the ladder back down — because the only reason I’m up here at all is that other people, mostly strangers on the internet, left theirs out for me.
That’s the whole thing, really. Build carefully. Pay attention. Share what you find.
