About

Welcome to my personal website! My name is Kareem Abdelaty and I am a firmware development consultant with experience in design, programming and debugging of electronics hardware and software. I have a B.Sc. in Computer Science from the University of Calgary, where I have also worked as a teaching assistant for courses in object-oriented programming, distributed systems and operating systems.

In my current role at Tangent Design Engineering, I provide general firmware design engineering consulting services and have implemented and designed internal tools used to test and verify company-built devices and PCBs using LabView. I have also worked on several projects including developing a multi-camera system on a Raspberry Pi and building an internal website for device management. I have also worked on firmware drivers for lighting and fan control on an STM32-based system.

In my spare time, I enjoy working on my personal projects of which I have built serveral such as a bare-metal 2D maze solving game using C and ArmV8 assembly on the raspberry pi that uses SNES nitendo controller, a best-fit dynamic partition memory allocation simulator,a CPU round robin scheduler in C++, an Emergent GAN that generates artistic drawings in the Style of Van gogh, a 3d model of the solar system on Open Gl and many others projects that you can find on my personal github

Besides my work, I also have a love for learning languages and have some experience with Japanese and German. In my free time, I enjoy studying new languages and immersing myself in different cultures.

Studying is not the only thing I do though. I am a big sports fan whether that being watching the sport or playing it Personally, I have played Waterpolo at the highest level in Egypt for more than 10 years and although I had to take a break from playing Waterpolo(moved away), i still try to make time for the occasional swim.

As a newly graduated firmware developer, I am excited to apply my knowledge and skills to develop innovative and effective firmware solutions. With a strong foundation in computer science and experience working on a variety of projects, I am eager to take on new challenges and contribute to the success of organizations in need of top-quality firmware development. I am confident in my ability to quickly adapt to new environments and technologies, and I am committed to staying up-to-date with the latest industry trends and best practices. I am looking forward to the opportunity to work with a team of talented professionals and help drive the success of forward-thinking projects.

Skills

  • Proficient in C, C++, C#, Java, and Python; armV8 assembly, SQL, HTML/CSS/JavaScript
  • Experienced in concurrent and network programming
  • Familiar with Haskell, Prolog, NetLogo LabView, x86 assembly, and Linux kernel development
  • Proficient with Unity Game Engine, Python3 Django framework, PyTorch, OpenGL, STM32 Hal library, and JTAG debugging
  • Knowledge of Linux/Windows operating systems
  • Strong understanding of Data Structures, Algorithms, and Computer Architecture
  • Experience with PCB design and electronics prototyping
  • Experience with LabView for testing and verifying company-built devices and PCBs
  • Strong understanding of Cryptography,Information Security, and code secruity
  • Experience developing applications for mobile devices, web/PC applications, and M2M communications
  • Code profiling and optimisation using tools such as VisualVM and Perf
  • Experience with teaching computer science courses at the university level
  • Native level in Arabic
  • Above A2 level in German and N4 in Japanese

Featured projects

Featured projects for this week

GAN Art Generator

Generative adversarial neural network built in PyTorch that has been trained to produce artistic drawings

Bare Metal Maze Game on the Raspberry pi

a 2D maze solving game built using C and ArmV8 assembly on Raspberry pi 4 with no OS. The Nintendo NES Controller is used as input where it interfaces with Raspberry pi's input/output pins

3d Solar System Model in Opengl

a virtual orrery that animates and renders the relative motions of the Sun, Earth and Moon against a starry backdrop

Want to see more?

See more projects here