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

Tarek Ahmed Saleh

Verified Expert  in Engineering

Software Developer

Location
Cairo, Cairo Governorate, Egypt
Toptal Member Since
June 17, 2022

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.

Availability

Full-time

Preferred Environment

Amazon Web Services (AWS), Linux, Python

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

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.
2014 - 2019

Engineer's Degree in Electronics and Computers

Ain Shams University - Cairo, Egypt

Libraries/APIs

OpenCV, REST APIs, LitElement, TensorFlow

Tools

AWS SDK, KiCad

Languages

Python 3, Python, C++, C++17, Embedded C++, Embedded C, C, Rust, Go, JavaScript, SQL, TypeScript, HTML5

Platforms

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

Frameworks

gRPC

Storage

MongoDB, Amazon S3 (AWS S3)

Paradigms

REST, Microservices

Other

Electronics, PCB Design, Software, Robot Operating System (ROS), Back-end, Digital Signal Processing, Embedded Systems, WiFi, Real-time Embedded Systems, Bluetooth, GSM, FastAPI, Amazon RDS, Image Processing

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