https://ramzyg.dev/about
about

Hi, I'm Ramzy.
I build software.

Math undergrad at the University of Waterloo, studying Scientific ML and Pure Math. I like building systems: backends, dev tools, and the layers underneath that hold everything together. I'm also interested in machine learning, quantitative trading, and the intersection of math, statistics, and software engineering.

Currently leading research and development at WatStreet on a project applying information-theoretic methods and machine learning to quantitative trading. Previously shipped AI/NLP and full-stack work at the National Research Council. Recently picked up Go — really enjoying it.

Studying
Math at the University of Waterloo
Based in
Waterloo, ON
Focus
Backend · Full-stack · Math/ML/Stats
Status
Open to interesting problems
projects

Selected work.

Apr 2026
IMC Prosperity 4 — Trading Toolkit
Python · TypeScript · React · FastAPI
A backtesting and live-execution toolkit for trading strategies. Three execution modes: CSV replay, synthetic markets sampled from configurable distributions, and live subprocesses, all orchestrated through a FastAPI service and a React dashboard. Placed top 1% (200 of 22,000 teams) in the qualifier rounds, including 5th globally and 9th in the manual trading round.
github.com/ramzygirgis/IMC-Prosperity-2026 →
May 2026
RSS Blog Aggregator CLI
Go · PostgreSQL · sqlc · goose
A Go CLI that subscribes to RSS feeds, polls them on a configurable interval, and stores deduplicated posts in PostgreSQL. Normalized schema with goose migrations and sqlc-generated type-safe queries; command dispatch with middleware-wrapped authenticated handlers over a JSON config layer.
github.com/ramzygirgis/feed-aggregator →
Ongoing
goPMATH
Go · Pure Math
An in-progress Go library for computations in pure mathematics, aiming for a small-scale Sage for Go. Currently supports group theory (permutations, cyclic and symmetric groups), ring theory and polynomial rings, basic linear algebra, and elementary number theory algorithms including primality tests.
github.com/ramzygirgis/goPMATH →
Mar 2026
LLM-Powered Debugging Agent
Python · Gemini API
A CLI tool built around an AI agent that autonomously reads, edits, and runs Python code to diagnose bugs, generate tests, and help understand the codebase. The agent runs a Gemini tool-calling loop over a safeguarded operation set (read/write, ls, Python execution). Safeguards restrict it to the working directory and to Python files; a local config lets the user pick their Gemini model and iteration limit to manage API costs.
github.com/ramzygirgis/cli-coding-agent →
skills

Toolbox.

Tools I reach for most often. The list is honest, not exhaustive — happy to learn anything the problem calls for.

familiarity strong comfortable learning

Languages

Go Python SQL C / C++ TypeScript C#

Frameworks & Libraries

PyTorch NumPy Pandas FastAPI React Next.js Django scikit-learn

Tools & Infra

Git Linux PostgreSQL Claude Code REST APIs MySQL Codex Docker gRPC Kubernetes RabbitMQ
experience

Where I've been.

Jan — Apr 2025
AI & Full-Stack Developer
National Research Council

Designed scalable C#/.NET REST APIs supporting technical enquiries on new building-code regulations. Worked with NLP pipelines that use sentence-embedding models and maximum-weight bipartite matching for semantic sentence alignment on ~50,000 lines of regulatory text. Shipped full-stack web apps across TypeScript, .NET, and SQL.

Nov 2025 — present
Project Lead
WatStreet Research

Building a regime-aware pairs trading system that learns when cointegration-based signals are reliable. Detecting unstable market regimes via spikes in KL divergence between recent spread behavior and ARMA-implied distributions, and training a Transformer-based confidence model to filter false mean-reversion trades.

May 2026 — present
Undergraduate Mathematics Tutor
University of Waterloo

Tutoring first and second year students in number theory, linear algebra, and calculus at Waterloo's Mathematics Tutoring Centre.

math

Math.

My favourite thing about learning math is when a long chain of coincidences turns out to come from the same deep idea. Algebra and number theory pull me hardest on the pure side; on the applied side, probability theory and ML are where the math actually does work.

A running list of what I've taken, what I'm reading, and a few results I keep coming back to.

Coursework

MATH

MATH 145
Algebra (Advanced)
MATH 146
Linear Algebra 1 (Advanced)
MATH 245
Linear Algebra 2 (Advanced)
MATH 147
Calculus 1 (Advanced)
MATH 148
Calculus 2 (Advanced)
MATH 247
Calculus 3 (Advanced)
AMATH 251
Differential Equations (Advanced)
STAT 230
Probability
MATH 249
Combinatorics (Advanced)

PMATH

PMATH 347
Groups & Rings
PMATH 351
Real Analysis
PMATH 352
Complex Analysis
PMATH 450
Measure Theory

PHYS

PHYS 111
Physics 1
PHYS 122
Waves, Electricity & Magnetism
PHYS 124
Modern Physics
AMATH 271
Theoretical Mechanics

CS

CS 136
Elementary Algorithm Design & Data Abstraction in C
CS 136L
Tools & Techniques for Software Dev
CS 231
Algorithmic Problem Solving
CS 246
Object-Oriented Programming in C++

Reading

  • Algebra: Chapter 0 Paolo Aluffi
  • Algebra Thomas Hungerford
  • Linear Representations of Finite Groups Jean-Pierre Serre
  • Introduction to Commutative Algebra Atiyah & Macdonald
  • Real and Functional Analysis Serge Lang
  • Fundamentals of Differential Geometry Serge Lang

Favourite theorems

  • First Isomorphism Theorem

    Every group homomorphism $\varphi: G \to H$ induces an isomorphism:

    $$G/\ker\varphi \;\cong\; \mathrm{im}\,\varphi.$$

    This shows up all over the place in math. This construction takes a map and boils it down to the information that it preserves; any homomorphism factors as a projection followed by an embedding. The same statement holds verbatim for rings, modules, and vector spaces.

  • Absolute Galois group is a Cantor set

    The absolute Galois group $G_\mathbb{Q} = \mathrm{Gal}(\overline{\mathbb{Q}}/\mathbb{Q})$, equipped with its Krull topology, is compact, totally disconnected, perfect, and uncountable, hence homeomorphic (as a topological space) to the Cantor set.

    The “symmetry of all algebraic numbers” is fractal at its core: no isolated points, no smooth structure. Motivates profinite groups and Galois representations.

  • Peter–Weyl Theorem

    For a compact group $G$, matrix coefficients of irreducible unitary representations are dense in $C(G)$ and orthonormal in $L^2(G)$:

    $$L^2(G) \cong \bigoplus_{\pi \in \hat G} V_\pi \otimes V_\pi^*.$$

    Fourier analysis is just a special case of this theorem. Fourier analysis works because the circle is a compact group; Peter-Weyl says that we can do something similar for all other compact groups. In physics, Peter–Weyl explains why angular momentum and spherical harmonics work.

  • Profinite completion of the integers

    The profinite completion of the integers decomposes as

    $$\widehat{\mathbb{Z}} = \varprojlim_n\,\, \mathbb{Z}/n\mathbb{Z}\cong \prod_p \mathbb{Z}_p,$$

    a product over all primes of the $p$-adic integers.

    This is just super cool; integers are determined by all their modular shadows.

  • Probability that an integer is squarefree

    The natural density of positive integers not divisible by any $p^2$ is

    $$\frac{6}{\pi^2} = \frac{1}{\zeta(2)} = \prod_p \left(1 - \frac{1}{p^2}\right) \approx 0.6079.$$

    About 61% of integers have no repeated prime factor — and the answer involves $\pi$. The Euler product is the punchline: independence of primes makes the density multiplicative.

contact

Say hi.

The fastest way to reach me is email. I read everything and reply to most things.

Pro tip now
Hit ⌘ (or Ctrl) + 1–6 to jump straight to any tab.