Amarjargal
Ayurzana
CS at San José State. I build full-stack, and compete at the ICPC national level.
Where I've worked
- Cleaned and standardized noisy clinical records for ~1,800 patients in Pandas, fixing gaps and unit drift
- Analyzed correlation between sleep fragmentation and light exposure; visualized with Matplotlib
- Trained cross-validated Random Forest models to surface insights into causes of diabetes
I worked with Dr. Renske Lok, whose guidance introduced me to the quirks of the research and health industry. I learned that in research, unlike software development, data validity and accuracy mattered most. It wasn't about shipping fast — it was about slow, gradual improvement, testing my outcomes several different ways. At our weekly stand-ups, I heard how my peers approached their own work and presented my findings in turn.
- Cut API response time 93% (86ms → 6ms) with Redis caching on high-demand endpoints
- Piped user watch/interaction events into BigQuery with automated cron-job reporting across millions of events
- Split 1-hour videos into thousands of 1-5s segments with cross-server handoff for buffer-free playback
Playmo was one of the biggest streaming platforms in Mongolia, but our engineering team was just 4 people — 2 backend, 2 frontend. I worked closely with my senior engineer, picking up new technologies almost daily and taking on real ownership and responsibility. I used my algorithmic knowledge to optimize heavy processes, turning what could've taken days into seconds. Explaining my ideas clearly to the team mattered as much as the code, and I came to enjoy documenting my own work.
- Modeled a dynamic survey engine as a directed acyclic graph where answers unlock or narrow later questions
- Built a topological-sort shuffler that randomizes question order while preserving every prerequisite
- Split tangled NestJS controllers into a modular service layer, shrinking 1,500 lines to 600
Steppelink had around 30 employees company-wide, but I worked on a 5-person project team building odintech.mn — a dynamic survey platform — with just one other engineer on backend, and I was the youngest person on staff. The existing NestJS codebase was tangled and buggy, so I redesigned the survey schema as a DAG and separated out the service layer, shrinking it from 1,500 lines to 600. I later optimized question selection with topological sorting and sped up queries using hashmaps and sets. Standups every two days kept me aligned with the project's direction and the customer's actual needs.
- Reduced average query latency 97% (54s → 1.3s) by redesigning data access for high-traffic endpoints
- Implemented MongoDB & Express.js features backing secure payment transaction workflows
This experience felt like a sandbox. The company let me choose between frontend, mobile, and backend, and I gravitated toward backend because it felt closest to competitive programming — take an input, produce an output. The catch was that no one handed me the problem: I had to identify it myself and design my own endpoint APIs. That's where I first learned how algorithmic thinking could actually translate into clean, efficient code.
Two classrooms
Proof of work
Things I've built
6 projectsTools of the trade
Languages
- TypeScript
- JavaScript
- Python
- C++
- Java
- Swift
- Go
Frontend
- React
- Next.js
- Tailwind CSS
- Three.js
Backend & Data
- Node.js
- NestJS
- Flask
- PostgreSQL
- MongoDB
- Redis
Infra & ML
- Docker
- Google Cloud
- PyTorch
- Git
- Linux
Let's build something.
Open to new opportunities. The fastest way to reach me is email.




