xmzr.dev

I build the servers
AI agents work through.

Rauan Khamza, computer science at CityU Hong Kong, from Astana. Agent infrastructure at Gensmart; Python teaching at CityU.

Email me

For agents

LinkedIn MCP server

An MCP server that gives AI agents an interface to LinkedIn for posting and scheduling: a REST API, a scheduling database and per-user agent tokens. The Next.js dashboard reaches the API through a server-side proxy, so its service token never reaches the browser.

Gensmart Technology, AI backend infrastructure intern, July 2026 to now. I also wired AWS Bedrock models into the team's agent, built on Hermes Agent, and am helping move the service to AWS.

// what an agent calls
create_post({
  text: "Shipped the scheduler today…",
  schedule_at: "2026-10-27T09:00+08:00",
  draft: true,
})
→ { id: "post_…", status: "scheduled" }

Campus MCP servers

Dockerized MCP servers that let my agents do the parts of student life that sit behind university logins. Each one drives a headless browser on Cloudflare Browser Run, signed in through CityU's single sign-on, and all of them are reachable from Claude Code, claude.ai and my phone.

Personal, July 2026 to now.

  • AIMSThe CityU student portal: timetable, grades, exam schedule, academic standing.
  • Room bookingFinds free study rooms and books them.
  • Campus printingSends a PDF to a university printer from anywhere.

Event auto-registration

University emails go through a pipeline that spots events with a sign-up form. I get a yes-or-no question in Telegram; on yes, the browser fills the form from what it knows about me and sends back a screenshot. Nothing is submitted until I confirm, and every correction I reply with is remembered for the next form.

Personal, October 2026. Email routing, a Worker, an LLM classifier, Telegram, the AIMS browser.

  1. CityU emailforwarded as it arrives
  2. Classifierfinds a sign-up link
  3. TelegramYes or No
  4. Browserfills the form, sends a screenshot
  5. MeSubmit

IoT AC switch

An ESP32 with a servo that flips the air-conditioning wall switch in my room, controlled from a web page or my phone. Commands reach the board over a WebSocket held by a hibernating Durable Object, so the switch reacts at once and costs nothing while it waits.

Personal, August 2026. ESP32, a hobby servo, Cloudflare Workers and Durable Objects.

An ESP32 chip on a development board, close up
An ESP32, the chip the switch runs on.

Registration intake

A serverless service that syncs event guest lists from Google Sheets into a SQL store. Edited rows update in place, bad rows wait in a queue without stalling the rest, and guests removed from the sheet are flagged. Alongside it, a CRUD app for event management on MongoDB JSON schemas.

EventBinder, full-stack engineering intern (mentee), July 2026 to now. I also scan and photograph venues for the team's setup presentations.

  1. Google Sheetsorganisers edit the guest list
  2. Workerdiffs rows, queues bad ones
  3. D1one row per guest, removals flagged

For learners

drillit.app

Exam practice for CityU courses, open to every student. Sign-in is a passkey, Learn mode walks through the lecture slides, and students can upload their own question banks and share them. Most questions come from real tutorials, labs and past quizzes.

33
sign-ups
8
courses
1,225
answers checked

Personal, October 2026. drillit.app

drillit.app course library: CS1302, CS1302A, Operating Systems and Computer Networks cards
The course library, where students pick what they are revising.

socratic-watchdog

A Jupyter extension on PyPI. It runs hidden tests on each cell, and when the code fails, an LLM asks a spoken Socratic question instead of giving the answer. It became the base of the tutorial notebooks for CS1302A, the new AI-assisted version of CityU's intro Python course, where students guide an AI to rebuild it.

City University of Hong Kong, undergraduate research and software assistant, June to August 2026. One of five students picked from twenty under an Agentic Coding grant.

$ pip install socratic-watchdog

# In [3]: a cell fails its hidden test
# the tutor asks instead of fixing it:
# "What does your loop do on the last item?"

Teaching Python

As a PALSI leader I give peer instruction and live technical help in CS1302, a 430-student team-based Python course. This semester I am a teaching assistant for CS1302 and CS1302A.

City University of Hong Kong, January to May 2026 and September 2026 to now.

  • CS1302Intro to Python, PALSI leader
  • CS1302AAI-assisted version, TA

Experience

  • Now
  • PALSI leader, Python teaching assistant
    City University of Hong Kong
    Sep 2026
  • AI backend infrastructure intern
    Gensmart Technology
    Jul 2026
  • Full-stack engineering intern
    EventBinder
    Jul 2026
  • Earlier
  • Research and software assistant, AI integration
    City University of Hong Kong
    Jun–Aug 2026
  • PALSI leader, Python
    City University of Hong Kong
    Jan–May 2026

Education

  • BSc Computer Science
    City University of Hong Kong, CGPA 3.55
    2025
  • BSc Computer Science, first year
    Nazarbayev University, Astana
    2024–25
  • Nazarbayev Intellectual School
    A-levels 3A*, SAT 1520, IELTS 8.0
    Astana

Tools

  • AI and agents
    MCP servers, LLM tool calling, Hermes Agent, Jupyter extensions, Playwright
  • Cloud
    AWS EC2 and Bedrock, GCP Compute Engine, Azure VMs, Cloudflare Workers, D1 and Durable Objects
  • Languages
    Python, TypeScript, Java, C++, SQL; Next.js, React, MongoDB, Docker, Linux, WebAuthn

Codeforces, three times over

I practise on Codeforces, and a problem only counts once the same solution is accepted in C++, Python and Java. These figures load live from codeforces.com.

–
solved in all three languages
–
in the last 30 days

Hong Kong time. codeforces.com/profile/xmzr

Latest solved

  • Fetching from codeforces.com…

On therecord

Publications, grants and results
YearWhatWhereResult
2026DIVE into Agentic Coding: Can You Teach AI to Teach You?IEEE TALE 2026, with C. Chan and six co-authorsAccepted, full paper
Agentic Coding grant, AI coursework integrationCity University of Hong KongOne of 5 picked from 20
socratic-watchdogPyPIPublished
drillit.appCityU students33 sign-ups in its first 10 days

About

I grew up in Astana and finished school at Nazarbayev Intellectual School. After a first year of computer science at Nazarbayev University, I moved to Hong Kong to continue at CityU.

Most of what I build sits between AI agents and the systems they need to reach. I run a lot of my own life that way: my timetable, deadlines, printing and gym log are MCP servers my agents can use.

The other half is learning. I teach Python, helped build an AI-assisted version of CityU's intro course, and run an exam-practice app that other students use every day.

I speak Kazakh, Russian and English, and I am looking for internships in AI and backend engineering in Hong Kong.

Rauan KhamzaSoftware engineer, Hong Kong

Nurjol Boulevard in Astana, seen from above
Astana, where I grew up.
Lion Rock above Kowloon Tong, Hong Kong
Hong Kong, where I study.

Contact

Internships, hackathon teams and hard problems in AI or backend work are all welcome.

Victoria Harbour, Hong Kong