About me

Graduated with First Class Honours in MEng Computer Science and Electronics at University of Bristol in 2019. During my time at university, I have accomplished the best project in the department in my 3rd and 4th years. I was part of the Computer Science Society committee for two years as a press officer and the president of the Computer Gaming Society.

Prior to starting my university degree, I have obtained an International Foundation degree in Engineering at the University of Brighton International College. My early education was in Libya, as I have lived there for 17 years.

Apart from coding, I like to read and rock climb. I’m fluent in English and Arabic.

Experiences

NPU Model Performance Engineer

March 2023 - Current
Neubla UK

Developing perfomance modelling tools for NPUs

Cloud Software Development Engineer (Model C++ Engineer)

April 2022 - March 2023
Intel, UK

Software Engineer, developed C++ functional models of now cancelled product Intel Tofino network switches.

  • Implemented P4 Language level logging for the model to provide insight into the execution of P4 compiled code.
  • Took iniative to modernize legacy code by converting it to C++17 Standard, resulting in improved maintainability and efficiency.
  • Coordinating with drivers and compiler ream to support new chip blocks to the model, during silicon development.

Member of the Engineering Team

Sep 2019 - April 2022
Graphcore Limited, Bristol UK

Verification Engineer. The main programming languages are C++ and Python. My current responsibilities are:

  • Modeling parts of an IPU in C++ to test the RTL if meets the specification of the architecture.
  • Creating a packet generator in Python to simulate IPU packet transactions so it can be used for the C++ model and the RTL.
  • Contribute to the design specification of upcoming chips.

Software Engineer Intern

July 2019 - Aug 2019
QLM Technology LTD, Bristol UK

Internship after graduating and before starting my career at Graphcore. During my time at QLM I have accomplished the following:

  • Optimized existing Matlab code 80x speed up by rewriting it in Julia combined with calls to C functions and utilizing parallel programming.
  • Created tools and libraries for the host machine to communicate with an FPGA.
  • Provided better workflow for the company with version control using Git, writing documentation, and using open source languages and tools.

Research Engineer (Machine Learning)

Jan 2018 - Mar 2019
Toshiba Research Europe Limited, Bristol UK

From Jan 2018 to Sep 2018 I was working full-time at Toshiba as Research Engineer in Machine learning as part of my undergraduate degree. Afterward, I have worked part-time while completing my degree.

  • Invented and filed a patent of a system that reduces network traffic by 60% of Distributed Neural Networks by using Reinforcement Learning.
  • Used machine learning libraries such as Tensorflow on Embedded devices like NVIDIA Jetson to simulate IoT networks.
  • Produced demos using JavaScript and ReactJS so they can be used for general meetings and conferences.

Projects

Gameboy Emulator - Developing a Gameboy Emulator. Work in progress.
Superscaler CPU Simulator - A CPU simulator that is capable of Out-of-order execution, speculative execution and converting assembly code to machine code.
Disparity Algorithm Optimisation for TI C6678 DSP - Collaborative University Project on optimizing disparity algorithm C code. We were able to make the code run 20 times faster by reducing loops and adding pragma optimization while preventing race conditions. We also wrote assembly code to compare the performance, which made our project one of the highest marks in the unit.
Musication - Collaborative project. A Web app for creating and streaming mappings of music to a location using only AWS Lambda. I was working on making the interactive map in React and linking it to DynamoDB for storing music mappings.

Patents

  • System and Method For Distributed Learning
  • Abdussalam Elturki and Aftab Khan
    US Patent US20200034747A1