Final-year software engineering student. I work in C to understand what happens underneath — memory, pointers, the structures everything else is built on — and in Python for the numerical and data side. Working toward MLOps and cloud-based ML.
Open to internships.
Now — numerical correctness in Python and data structures in C. Picking up the Linux shell alongside it.
Next — linear algebra and statistics, then NumPy and Pandas.
Goal — taking models from a notebook to production: Docker, FastAPI, CI/CD.
Full roadmap
| Stage | Focus | Status |
|---|---|---|
| 1 | Programming foundations, DSA, Linux, SQL | In progress |
| 2 | Math for ML — linear algebra, calculus, statistics | Planned |
| 3 | Data — NumPy, Pandas, feature engineering | Planned |
| 4 | Machine learning — scikit-learn, evaluation | Planned |
| 5 | Deep learning — PyTorch, CNNs, Transformers | Planned |
| 6 | LLMs & GenAI — Hugging Face, RAG, agents | Planned |
| 7 | Deployment — FastAPI, Docker, AWS | Planned |
| 8 | MLOps — MLflow, Kubernetes, CI/CD | Planned |
| Project | What it shows |
|---|---|
| floating-point-error-accumulation | Naive summation vs. Kahan vs. math.fsum, on a dataset built specifically to expose the drift |
| loan-amortization | Fixed-payment amortization schedule using Decimal, because money can't tolerate binary float |
| number-theory-toolkit | Primality via 6k±1, factorization, divisor count, modular inverse via extended Euclid — all from scratch |
| week1-log-analyzer | Per-service request counts, error rates and latency from access logs. Standard library only |
| Project | What it shows |
|---|---|
| queue-implementations | Array, circular array and linked-list queues side by side — including the false overflow problem and how each solves it |
| linked-list-lib | Reusable C11 singly linked list: header + implementation, zero dependencies |
| c-data-structures-exercises | One self-contained program per structure, each with assert-based tests |
More C exercises
| Project | What it does |
|---|---|
| note-editor-undo-redo | Undo/redo with two stacks — LIFO is exactly the shape of an undo history |
| playlist-manager | Doubly linked list playlist — next/previous needs a prev pointer |
| pharmacy-queue | FIFO ticket simulator on a singly linked list |
| singly-linked-list | Every insert and delete case, with the edge cases handled deliberately |
| student-grade-tracker | Student records: add, delete, average, min/max |
| time-formatter | Small interactive CLI for humanizing durations and converting units |
Learning in public. Everything here is part of the journey, not a finished portfolio.