About
More about me and this blog

Haoyu Zhang
The best way to predict the future is to invent it.
Hi, I'm Haoyu
I'm a software engineer in Denver, Colorado. These days I split my time between two jobs I like a lot:
- Co-founder and tech lead at Anyone, part-time: a social-events app for iOS, Android and the web.
- Software engineer in high-performance computing at the University of Colorado: GPU-accelerated and LLM-based research software for biomedical scientists.
Before that I did a master's in Information Networking at Carnegie Mellon, worked on a WebAssembly virtual machine there, and built test-automation platforms at DJI. The resume has the details.
What I'm building
Anyone. Most social products are built to keep you scrolling. Anyone is trying to do the opposite: less screen time, more friend time. You post a plan, the people you would actually want there see it, and you go and do the thing, in person. Making plans with friends gets quietly harder after school, and that is the problem worth solving. I've been the tech lead since the first commit, which mostly means core system design and keeping a small team pointed in the same direction.
A video game. My first one, in the evenings. There is nothing to show yet. When there is, it will turn up here first.
Why "Majula"?
The site is named after Majula from Dark Souls 2: the one place in that game where nothing is trying to kill you. It sits on a cliff above the sea, the music slows right down, and it is where you go between attempts at whatever is currently beating you. Home, harbor, a little peace.
Dark Souls has another habit I like. Players leave short messages on the ground for strangers who pass through later: a warning about the drop ahead, a hint about the fog gate, quite often nonsense. You never meet the person who left one, and it helps anyway.
That is roughly what I want this place to be. I write things down here to find out whether I actually understand them, which is usually humbling, and to leave a note for whoever walks into the same wall next. You will find easter eggs from my favourite games, films and books scattered around; I hope you enjoy them as much as I do.
What I write about
- Systems I've built (file systems, renderers, compilers, distributed systems), each with a Learnings section on what I would do differently
- Mobile app architecture, and the engineering process behind a small team shipping fast
- Working with AI coding agents, and the parts that still need a human
- GPU computing and research software
- Whatever I learn from trying to make a game
- Occasionally: books, films and whatever I'm playing on the guitar
Beyond code
When I'm not at a keyboard I'm usually on a mountain, skiing in the winter and rock climbing the rest of the year, or in a pool, on a basketball court, or on the couch with a controller or a guitar. The skiing photos on the home page are mine.
Indoors it tends to be slow, fiddly things: cooking, board games with friends, painting miniatures, building Gundam kits, and sketching badly but often. They are all the same pleasure, really: an evening spent on something that will not ship and nobody is waiting for. I do want to get better at every one of them, and the only optimisation available is doing it again next week.