Hi, I'm Fares

I specialize in device driver development and graphics programming.

Currently @ Huawei Canada in Toronto.



Scroll down

˅


Experience

Graphics Driver Software Engineer - Huawei

Graphics Driver Software Engineer - Huawei

2023-Present

2023-Present

  • Supported and maintained the functionality of the Kirin OpenGL ES driver used on most Huawei mobile phones

  • Developed and prototyped numerous optimizations in the rendering pipeline and user-mode driver for high-intensity gaming

  • Supported and maintained the functionality of the Kirin OpenGL ES driver used on most Huawei mobile phones

  • Developed and prototyped numerous optimizations in the rendering pipeline and user-mode driver for high-intensity gaming

Display Driver Engineering Intern - AMD

Display Driver Engineering Intern - AMD

2021-2022

2021-2022

  • Implemented Dynamic Contrast and Adaptive Refresh Rate on FreeSync-compatible monitors

  • Streamlined the FreeSync certification and validation process by 20%

  • Implemented Dynamic Contrast and Adaptive Refresh Rate on FreeSync-compatible monitors

  • Streamlined the FreeSync certification and validation process by 20%

Software Engineering Intern - HearMeCheer

Software Engineering Intern - HearMeCheer

2020

2020

Projects

  • Uses compute shaders to calculate the inverse Fourier transform on a generated frequency spectrum to create wave movement in real time

  • Shading features include subsurface scattering, specular and environment reflections, and foam accumulation

  • Parameters such as wind speed, depth, and fetch can be adjusted for different visual effects

C++

OpenGL

Graphics

Compute Shaders

  • Generates fur on any textured model imported as an FBX file (including animated models)

  • Stencil texture used to spawn fur only on select areas allowing for artistic freedom

  • Stiffness, density, minimum and maximum length, and shadows added from individual hairs can all be adjusted

C++

DirectX 12

Graphics

Skinned & Rigged Models

  • Allows users to add songs to a common queue for group listening, similar to Spotify's Jam feature

  • Can connect up to 5 devices and send any song in the Apple Music library via Web Bluetooth to supported browsers

  • Created 2 years before Apple's official implementation

HTML

JavaScript

CSS

Swift

Bluetooth

Apple Music API

  • Multiple demo programs exploring the basics of computer graphics (Completed via CSC317 offered at the University of Toronto)

  • Topics include ray casting, ray tracing, bounding volumes, mass spring systems, inverse kinematics, and more

C++

OpenGL

Graphics

Ray Tracing