xv6 CPU Scheduler
A priority-based kernel scheduler with aging to prevent starvation, built by modifying xv6 process management, kernel data structures, and system-call paths.
I’m John, a Computer Engineering student interested in operating systems, network programming, and the careful engineering that makes complex systems feel reliable.
Selected systems work
Four builds · one directionA priority-based kernel scheduler with aging to prevent starvation, built by modifying xv6 process management, kernel data structures, and system-call paths.
A lightweight HTTP server built directly on BSD sockets, covering the complete connection lifecycle from socket creation and bind to HTTP response handling.
A foundational library of dynamic arrays, linked lists, stacks, and queues with explicit allocation, resizing, and memory cleanup.
Digital systems implemented in Verilog on the DE10-Lite FPGA, including VGA display output and hardware control modules.
Source and ongoing experiments live on GitHub ↗
Experience
From data to infrastructureMy experience spans enterprise networking, product engineering, and data systems—a practical base for solving problems across layers.
Bell Canada
Supporting enterprise network solutions and building Python workflows that turn operational data into clearer decisions.
SellStatic
Built product integrations, email automation, and an AI-powered chatbot across a React, Node.js, and TypeScript stack.
Kroll
Created quality checks and a Python extraction pipeline that processed 1.4 million file paths more efficiently.
Royal Bank of Canada
Improved financial-document data workflows and communicated portfolio insights to internal stakeholders.
About / approach
I’m completing a Bachelor of Engineering in Computer Engineering at York University. I like problems where software meets hardware, performance matters, and abstractions have to earn their keep.
Whether I’m changing a scheduler, tracing a network connection, or designing a hardware module, I care about understanding the whole path—not just getting the happy path to run.
Technical toolkit
Built from first principlesC, C++, Python, Bash, Verilog, SQL, TypeScript
Operating systems, CPU scheduling, processes, memory
TCP/IP, BSD sockets, communication networks
Linux, Git, xv6, Intel Quartus, pandas