Hi, I’m Mohamed Zaid, a software developer who enjoys building thoughtful systems and clean user experiences. Outside of coding, I love hiking, travelling, playing video games, and creating graphical simulations.
I’m currently pursuing an Honours BSc in Computer Science at York University’s Lassonde School of Engineering, after graduating from Humber Polytechnic’s Game Programming program. I have been building in C++ for about 6 years, and I focus on software systems design: clean architecture, clear ownership of responsibilities, strong invariants, and performance-minded implementation.
Across internships and projects, I have designed and shipped systems where structure matters as much as features. At Autodesk, I developed a Vulkan-based renderer to help bring MaterialX native Vulkan backend support, using C++ with RAII and building extensible wrappers around low-level Vulkan interfaces. In Trading Master Pro, I used C++17 and Qt Widgets to separate the simulation and execution engine from UI state updates, making order validation, portfolio tracking, and live-like pricing easier to maintain and extend. I have also built graphics and concurrency projects using Vulkan, OpenGL, GLSL, and SDL, where profiling, debugging, and careful data design were critical for correctness and smooth performance. I enjoy collaborating in Agile workflows with code reviews and iterative delivery, and I value building systems that stay readable and extensible as requirements evolve.
This summer, I will be joining Microsoft as a Software Engineering Intern. I am excited to apply these design principles in a large production codebase, building reliable C++ systems, graphics and tooling workflows, and user-facing applications with Qt.
Desktop trading simulator built in C++/Qt. Includes seeded mock market data, a watchlist, order ticket, trade history, and portfolio/mark-to-market P&L tracking.
Vulkan demo focused on visualizing normals for debugging and learning: pipeline setup, vertex input, per-frame updates, and shader logic using descriptors + push constants.
Created a 2D scene in OpenGL and Implemented multi-threading by creating three separate threads to load assets in a graphical scene for optimization. Implemented a memory monitor to manage memory allocation and deallocation.
Loaded a skull object with two child objects(eyes). Created movement within the scene using SDL Events. Used X/Y coordinates to implement movement using the left mouse button.
Loaded six textures to create a skybox using C++ in OpenGL. Implemented Refraction shader and displayed it by creating a sphere. Implemented my trackball system that allows movement within the scene.
Loaded six textures to create a skybox using C++ in OpenGL. Implemented Reflection shader and displayed it by creating a sphere. Implemented my trackball system that allows movement within the scene.
As part of my physics project, implemented a body class that simulated physical forces such as gravity, drag force, and wind force using objects initial velocity, position and acceleration.
Loaded Created a 3D noise texture. Implemented a noise shader that allows the display of perlin noise on the loaded sphere object.
Loaded an Coronavirus object in a 2D scene using C++ in OpenGL. Implemented Phong model shader for a two light system.