About
I’ve been coding as a hobby since middle school, mostly on my own with no real structure to it, until I decided to study Computer Engineering at Tabriz University. The courses and professors there inspired me a lot — ideas like really understanding load are ones I still think about today.
I freelanced through university. My first commercial project was an e-commerce gallery for a home furnishing shop, and I wrote the whole thing from scratch in Node.js — probably not the best idea, reinventing the wheel like that. It paid for my degree, though. Then I joined Prolar — my first real team — as a full-stack developer, where I learned what working on one codebase with other developers actually means.
After that, a group of talented friends and I started RasaTelecom in Tabriz, providing IT services to local companies and factories. I was the coder one. Our biggest product was VmBox, a Go application we sold to VPS providers that connected their WHMCS billing systems to VMware vCenter and automated everything their operators used to do by hand. Our first customer had around 500 users — that’s where I really met production load, and learned that lesson the hard way, at two in the morning, debugging for a customer on the other side of the globe.
After two or three years I realized I was the only software engineer around me, and I was missing whole areas of the field — I’d never really worked with observability tools, and never touched CI/CD. So I moved to Tehran and joined Ramzinex, a crypto exchange, as a DevOps engineer, having only heard the term a few weeks before that. My prior experience with servers, virtualization, and development in general helped me pick it up fast. Then I joined Snapp!, the largest ride-hailing company in the Middle East, as an SRE. I started from SRE incident-management shifts and worked my way up to being one of the key members of SRE Production Core, where we’d often have an incident’s root cause figured out almost before it had finished happening. Since July 2026, I’ve been in the Offering team, working as a developer on the core match engine.
These days I use LLMs heavily — I’d honestly call myself a context engineer. They give me close to unlimited leverage: I can build the exact tool I need for a problem in an afternoon instead of a week. But an LLM can’t be responsible for anything. I can. That’s the engineer I want to be: someone who uses these tools to find the best solutions and design reliable systems, who solves the problems agents can’t solve alone, and still owns the outcome.
Currently Software Engineer, Offering at Snapp!. For the full work history, education, and skills, see the resume.