Tarek Ahmed Saleh, Developer in Cairo, Cairo Governorate, Egypt
Tarek is available for hire
Hire Tarek

Tarek Ahmed Saleh

Verified Expert  in Engineering

Bio

Tarek is a software engineer with two years of experience building back-end APIs and IoT systems. He is a freelancer because he wants to widen the scope of his knowledge and experience by working on exciting cloud-native and back-end API projects. Tarek worked on various back-end APIs for web, mobile, and IoT devices using different programming languages and technologies while utilizing the Agile methodology in his projects.

Portfolio

Freelance
C++, JavaScript, TypeScript, Go, Rust, HTML5, SQL, MongoDB, Embedded C++...
Carbon 14 Innovations Inc.
SQL, APIs, Mapping Services, C#, .NET, Visual Studio, Telerik
FMAD ENGINEERING (SNG) PTE. LTD.
Linux, Networking, JavaScript, Lua, Three.js, Visualization

Experience

  • Python - 5 years
  • PCB Design - 4 years
  • Robot Operating System (ROS) - 2 years
  • Embedded C++ - 2 years
  • C++ - 2 years
  • Back-end - 1 year
  • FastAPI - 1 year
  • JavaScript - 1 year

Availability

Full-time

Preferred Environment

Amazon Web Services (AWS), Linux, Python, Git

The most amazing...

...project I've worked on is a back-end API developed using Python, FastAPI, and MQTT for a smart hotel system's mobile app and IoT smart door lock.

Work Experience

Software Developer

2019 - PRESENT
Freelance
  • Developed a web app for remotely controlling an autonomous airport tractor using Python, HTML, CSS, and JavaScript, increasing the utility and safety of the vehicle.
  • Developed a cloud API for a room access management system that serves endpoints for IoT devices and mobile apps using Python, FastAPI, and MQTT.
  • Managed a team of two people throughout the development of firmware for an internet-connected camera device used for recording sporting events, including recording and uploading a video to an S3 bucket and exposing a gRPC API for camera controls.
  • Developed a smart IoT door lock using STM32 MCU, 3G module (SIM5300E), and NFC communication. Designed the PCB for it and wrote the firmware in C++.
Technologies: C++, JavaScript, TypeScript, Go, Rust, HTML5, SQL, MongoDB, Embedded C++, Embedded Systems, Python, Python 3, Microservices, FastAPI, C, MQTT, Firmware, Embedded Hardware, Internet of Things (IoT), Qt, Google Apps Script, Sensor Data, Git, Firebase, GitHub

C# Developer to enhance an existing desktop app

2024 - 2024
Carbon 14 Innovations Inc.
  • Restored the desktop app to functional state by fixing outdated routing API calls and updating all the libraries and established proper version control.
  • Fixed 28 critical bugs that caused the app to crash in certain situations.
  • Developed 8 new features and redesigned the user authentication to be simpler and more consistent with the backend.
Technologies: SQL, APIs, Mapping Services, C#, .NET, Visual Studio, Telerik

Web Development Software Engineer for Packet Capture Systems

2023 - 2023
FMAD ENGINEERING (SNG) PTE. LTD.
  • Developed a web based tool to visualize network traffic from captured packets.
  • Integrated the tool with the client's custom hardware and database system.
  • Improved the performance of the tool to handle tens of thousands of nodes and millions of packets.
Technologies: Linux, Networking, JavaScript, Lua, Three.js, Visualization

Python engineer for a gold mining company

2022 - 2022
Agnico Eagle Mines Limited - Main
  • Developed a prototype for detecting features in images of a mined rocks and created a planned trajectory for a robot arm to reach specific objects.
  • Documented and onboarded their internal hire engineer to the project.
  • Setup a functional remote development environment for an NVIDIA jetson board to run and test update on-site.
Technologies: Python, Embedded Systems, NVIDIA Jetson, OpenCV, Image Processing, Robot Operating System (ROS)

Experience

Personal Finance Management Web App

This web app tracks personal income, expenses, and budget and generates weekly and monthly reports. I planned and built the back-end REST API and designed the database architecture following the Scrum methodology when defining epics, sprints, and tickets.

Real-time Panorama Video Stream Stitching

A C++ program for stitching the video stream from four cameras into a 360 degrees panorama video stream using OpenCV and CUDA GPU acceleration.
Implemented as a configurable static stitcher that requires the extrinsic matrices of the cameras and takes in a GStreamer compatible stream, and provides a GStreamer compatible stream.

NIST Face Recognition Vendor Test

A C++ program for matching faces one to one using a modified version of the Siamese face matching model and submitted for the NIST FRVT. Built as a C++17 library using a TensorFlow C API and OpenCV to process images and produce a matching score.

Smart Door Lock

A smart IoT door lock that is 3G enabled and uses NFC for authentication with a mobile app to unlock it. It used an STM32L4 microcontroller and SIM5300E 3G module. I designed the PCB for this device using KiCad and wrote the firmware in C++ using STM32 CubeMX libraries.

Paper Factory Production Line Monitoring System

A system consisting of a custom IIoT device based on ESP32 and a rotational speed sensor reporting to simple back-end listening on MQTT topic and generating daily production reports.

I designed the device's PCB using KiCad and wrote the firmware in C using the ESP-IDF environment.

Football Match Recording Camera

A dual-camera device used for recording amateur league football matches that uploads the recordings to the cloud and analyzes them.

I built parts of the software that ran on the camera, mainly the gRPC API and REST API used to communicate with the cloud back-end and the companion mobile app.

Education

2014 - 2019

Engineer's Degree in Electronics and Computers

Ain Shams University - Cairo, Egypt

Skills

Libraries/APIs

OpenCV, REST APIs, LitElement, TensorFlow, Three.js

Tools

Git, MQTT, GitHub, AWS SDK, KiCad, NVIDIA Jetson, Visual Studio

Languages

Python 3, Python, C++, C++17, Embedded C++, Embedded C, C, Google Apps Script, Rust, Go, JavaScript, SQL, TypeScript, HTML5, C#, Lua

Platforms

Amazon Web Services (AWS), Linux, Windows, Docker, Firebase, NVIDIA CUDA, Telerik

Frameworks

gRPC, Qt, .NET

Paradigms

REST, Microservices

Storage

MongoDB, Amazon S3 (AWS S3)

Other

Electronics, PCB Design, Firmware, Embedded Hardware, Internet of Things (IoT), Sensor Data, Software, Robot Operating System (ROS), Back-end, Digital Signal Processing, Embedded Systems, WiFi, Real-time Embedded Systems, Bluetooth, GSM, APIs, FastAPI, Amazon RDS, Image Processing, Mapping Services, Networking, Visualization

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring