Syed Muhammad Hassan Raza

Software engineer. Give me a rough problem, and I'll take it to production. I move fast with AI tools, but the engineering decisions are mine. At Noctal, I went from intern to mid-level in about a year.Software engineer. Give me a rough problem, and I'll take it all the way to a finished product. I use AI tools to work fast, but I make the engineering decisions myself. At Noctal, I went from intern to mid-level in about a year.

Based in Islamabad. I work remotely with teams anywhere.

Portrait of Syed Muhammad Hassan Raza
Previously atNoctalUpStart CommerceSaluqFAST-NUCES

Noctal — AI sound design for film and video

Lana's product video, made and published by Noctal. I worked on Lana's backend, infrastructure and AI.Watch on YouTube
Noctal logoAI EngineerMar 2025 – Jul 2026, remote, Los Angeles
~5,000 users on the platformUsers across the whole Noctal platform, not any one feature. Approximate.~38% less compute allocation~38% less cloud computing reservedAverage CPU and memory requested on the production Kubernetes cluster, January to April 2026, read from Google Cloud Monitoring, while usage kept growing.Intern → mid-level in ~12 monthsIntern in March 2025, Junior AI Engineer in June 2025, AI Engineer in March 2026.
  • Built and owned the Stripe billing system, with signature-verified, idempotent webhooks.Built and owned the subscription billing system, which checks that every payment message is genuine and handles repeats safely.
  • Built multi-tenant team accounts and found and fixed critical access-control and billing vulnerabilities.Built shared team accounts, and found and fixed serious security holes in who could access what and in billing.
  • Cut Kubernetes compute allocation by about 38% while usage grew to about 5,000 users.Cut the cloud computing the product reserved by about 38%, while it grew to about 5,000 users.
PythonDjangoCeleryPostgreSQLGoogle CloudKubernetesStripeLangChain and LangGraph
Full role details

Personal projects, with the results and the limits written down

01/06 · 0:00Three calls

A fictional clinic and simulated callers, answered by the real system.

Voice AI, 2026

Voice receptionist

An AI receptionist for a fictional clinic, built for phone and browser calls on two architectures, and measured side by side.An AI receptionist that answers a made-up clinic's calls, books appointments and passes callers to the right person, built two different ways so I could measure which works better.

Speech-to-speech starts talking in 1.9 s, the pipeline in 4.0 sThe single-model version starts talking in 1.9 seconds, the three-step version in 4.0Measured on 2026-10-26. Time from the caller's last word to the agent's first audio over WebRTC, median of 15 scripted turns each: speech-to-speech (gpt-realtime-2.1-mini) 1.9 s, the pipeline (Deepgram, gpt-4.1-mini, Cartesia) 4.0 s. The pipeline passed 13 of 15 simulated callers, speech-to-speech 12. docs/comparison.md
Python, LiveKit Agents, OpenAI Realtime, Deepgram, Cartesia, MCP, A2AAlso: article on Medium
Expected, design assumption
With everything else shared, any difference comes from the architecture.Both versions share everything else, so any difference comes from that one choice.
Found
Speech-to-speech answered about twice as fast. The pipeline kept every booking right; speech-to-speech once double-booked a caller.The single-model version answered about twice as fast. The three-step version got every booking right; the other once booked a caller twice.
Still open
Real phone calls: only browser calls have run live so far.Real phone calls: so far it has only run live in the browser.

01/08 · 0:00The problem

0.999 out of 1 on a research benchmark. On real npm uploads, it flagged one package in six.

Security, machine learning, 2026

npm malware detection

npmscan, a malware detector for npm packages that explains every verdict.npmscan, a tool that checks the code packages developers download for malware, and explains each verdict.

81% of new malware caught at 0.7% false alarmsCatches 81% of new malware, with 7 false alarms per 1,000 packagesMean of five training runs, on 2025–26 malware and a second sample of 5,000 fresh uploads taken about two and a half days after the first. results/experiments
Python, LightGBM, Docker sandbox, MinHash LSHAlso: paper on Zenodo, article on Medium
Expected, in hindsight
A detector scoring 0.999 on its benchmark would work on real uploads.A detector that scored almost perfectly on a standard test would work on real packages.
Found
It flagged 16.6% of fresh uploads: it had learned that a missing README means malware. I retrained it on real uploads.On real new packages it raised false alarms on 16.6% of them, because it had learned that a package without a README file looks suspicious. I retrained it on real packages.
Still open
Hijacked releases of real libraries: the retrained model catches 36% of them.Malware slipped into real, trusted libraries: the retrained model catches 36% of those.

01/06 · 0:00The hook

An AI agent sends the whole bank balance to an attacker. All it did was read a note.

AI security, 2026

Hijack-proof agent

A small local AI agent that resists being hijacked through the data it reads, measured on attacks it was never tuned on.A small AI assistant, run on my own machine, that ignores instructions hidden in the emails and files it reads. Tested on attacks it never saw during development.

Attack success 38% → 11% on 158 held-out casesAttacks that worked: 38% → 11%, on 158 unseen testsAgentDojo's standard attack template, on 158 attacked cases held out from development, 78 of them never run before, under a protocol registered before the run. Paper
Python, AgentDojo, Qwen3.5-4B, run locallyAlso: paper on Zenodo, article on Medium
Expected, registered before the run
It would cut attacks and finish more normal tasks than defences that block as many.It would stop most attacks and finish more everyday tasks than other protections that stop as many.
Found
Both held on held-out cases: 27–29 points more normal tasks than the two comparable defences.Both held on tests kept aside until the end: 27–29 points more everyday tasks than two standard protections.
Still open
Whether it costs anything on normal tasks against no defence.Whether it makes everyday tasks any worse than no protection at all.

01/06 · 0:00The ratio

Specialists compare the height of the pale cup with the disc around it. A higher ratio is more suspicious for glaucoma: a clue, not a diagnosis.

Computer vision, 2026

Optic disc and cup segmentation

Measuring the cup-to-disc ratio from a photo of the eye, with the failure modes measured and written up. A research demo, not a medical tool.Measuring a sign of glaucoma from a photo of the eye, with where it goes wrong measured and written up. A research demo, not a medical tool.

Dice 0.962 disc, 0.881 cup, held outOutline match 0.962 (disc) and 0.881 (cup) out of 1, on unseen photosOverlap with the specialist's outline on 325 held-out test photos (ORIGA set B), where 1.0 is identical. results/metrics.json
Python, PyTorch, U-NetAlso: article on Medium
Expected, in hindsight
Outlines this close to the specialist's would give an accurate cup-to-disc ratio.Outlines this close to a specialist's would give an accurate measurement.
Found
The ratio is pulled towards the middle and underestimates large cups, the end that matters for glaucoma.The measurement drifts towards the average, and comes out too low for large cups, which are the ones that matter for glaucoma.
Still open
Other cameras and populations: there's no external test set.Other cameras and patients: it hasn't been tested outside its one dataset.

Where I've worked

Billing, multi-tenant access and AI pipelines for a platform with about 5,000 users. Promoted twice in about a year.Payments, team accounts and AI features for a product with about 5,000 users. Promoted twice in about a year.

Forecasting and purchase-prediction models, served as FastAPI services.Models that forecast revenue and predict purchases, running as live web services.

Object detection and tracking for football video.Software that finds and follows the players and the ball in football video.

Labs and debugging sessions for four core computer science courses.

BS Computer Science at FAST-NUCES, after Cambridge A and O Levels

FAST-NUCES seal

National University of Computer and Emerging Sciences (FAST-NUCES), Islamabad

2021 – 2025
Bachelor of Science in Computer Science
CGPA 3.65 / 4.00Cum laudeDean's List, 6 of 8 semesters
Beaconhouse School System crest

Beaconhouse School System, Margalla Campus, Islamabad

2019 – 2021
Cambridge International A Levels
A in Computer Science, Mathematics and Physics
The City School crest

The City School, Capital Campus, Islamabad

2018 – 2019
Cambridge O Levels
4 A*s4 As

Tools I've shipped with, not a stack I'm tied to

I work AI-first and pick tools for the problem in front of me. These are the ones I've used at work or in projects so far.

Backend

PythonDjangoFastAPICeleryPostgreSQLRedisWebSockets

Cloud and infrastructure

Google CloudKubernetesDockerHelmCloud RunDatadog

AI and LLMs

LangGraphPyTorchRAG, PineconeVertex AI, GeminiClaudeLLM evals

Payments and security

StripeJWT, OAuthRBACPrompt-injection defence

Frontend

TypeScriptReactNext.jsTailwind CSS

Data, personal projects

KafkaAirflowPySparkdbtBigQuery

Papers and articles

Got something interesting in mind?

I'm always up for a good conversation.

What's it about?

LinkedInGitHubCV (PDF)