Dhiaeddine Gharsallah, Developer in Tunis, Tunisia
Dhiaeddine is available for hire
Hire Dhiaeddine

Dhiaeddine Gharsallah

Verified Expert  in Engineering

Full-stack Developer

Location
Tunis, Tunisia
Toptal Member Since
November 24, 2021

Dhia is a software engineer enthusiastic about solving problems and creating valuable products for humanity. He has over five years of experience in software development gained while he worked on various projects, including developing web, mobile, and desktop apps and creating machine learning models that can solve complex problems. As a coding expert and programming coach, he specializes in back end and machine learning.

Portfolio

InstaDeep
Python 3, Python API, C++11, Go, Java, TensorFlow, PyTorch, Pandas, NumPy...
Orion Code
JavaScript, Node.js, Angular, MongoDB, Express.js, Mocha, TypeScript

Experience

Availability

Part-time

Preferred Environment

Linux, Python, C++, JavaScript, Node.js, Go

The most amazing...

...thing I've contributed to is building an artificial intelligence model that learned how to solve a very complex problem in the field of electronics.

Work Experience

Machine Learning Software Engineer

2017 - 2020
InstaDeep
  • Developed an AI algorithm that solves the vehicle routing problem (VRP) using C++, Python, and RabbitMQ.
  • Contributed to solving the printed circuit board problem using reinforcement learning techniques such as AlphaZero with Go, Python, Tensorflow, and Docker.
  • Developed a swarm intelligence algorithm to solve the capacitated vehicle routing problem (CVRP) with Go.
  • Created a reinforcement learning agent based on a variant of DQN, solving the vehicle routing problem (VRP) using PyTorch.
  • Solved the capacitated vehicle routing problem (CVRP) by developing a linear programming algorithm with Python.
Technologies: Python 3, Python API, C++11, Go, Java, TensorFlow, PyTorch, Pandas, NumPy, Machine Learning, Deep Reinforcement Learning, Reinforcement Learning

Full-stack developer

2016 - 2017
Orion Code
  • Developed a social network inside an e-learning platform using MEAN stack and Socket.IO with real-time features like chatting, commenting, liking, subscribing, and sharing content.
  • Contributed to developing a website that finds online courses among all platforms, including Coursera, Udemy, and edX, with MEAN stack.
  • Developed Addicaid—a healthcare and community-based app that helps people recover from addiction—using MEAN stack.
Technologies: JavaScript, Node.js, Angular, MongoDB, Express.js, Mocha, TypeScript

AI Model to Route Circuit Board Pins

https://deeppcb.ai/
DeepPCB is an AI model that solves an NP-hard printed circuit board routing (PCB) problem.

I worked on the AI model side, developing a deep reinforcement learning model inspired by the famous AlphaGo Zero that learns how to solve the problem from scratch.

Secure Online Learning Platform

An online learning platform with security features to detect leaked courses.

I added features based on social networks to the platform to make it more interactive and fun. The features involved the news feed, follow features, user wall, private chat, and group chat within the courses.

Bee Optimization Algorithm

A meta-heuristic algorithm that can solve any optimization problem.

I led the project's development with the help of another engineer to prepare a Go project designed to optimize any problem regarding a fitness function.

AI Agent Learns How to Play a Game from Scratch

https://github.com/dgharsallah/CollaborationCompetition
An AI agent that learns playing tennis from two other agents playing against each other using deep reinforcement learning. The implemented model is a multi-agent DDPG model that starts as a beginner and learns from experience until it reaches a decent score.

AI Model Learns How to Collect Bananas

https://github.com/dgharsallah/Navigation
A deep reinforcement learning model that learns from trial and error and tries to improve by playing the game. The model implemented is a deep Q-learning model using the PyTorch framework from Facebook.
2013 - 2016

Engineer's Degree in Computer Science

National Engineering School of Sfax - Sfax, Tunisia

2011 - 2013

Preparatory School for Engineer's Degree in Mathematics and Physics

Sfax Preparatory Engineering Institute - Sfax, Tunisia

MAY 2019 - PRESENT

Deep Reinforcement Learning Nanodegree

Udacity

SEPTEMBER 2018 - PRESENT

Artificial Intelligence Nanodegree

Udacity

Libraries/APIs

Node.js, Python API, TensorFlow, PyTorch, Pandas, NumPy, Socket.IO

Tools

Shell, Mocha, RabbitMQ

Languages

Python 3, C++11, JavaScript, Python, Go, Java, TypeScript, Bash, C++, C#

Frameworks

Express.js, Angular, AngularJS

Storage

MongoDB

Platforms

Linux, Visual Studio Code (VS Code), MacOS

Paradigms

MEAN Stack, Design Patterns

Other

Algorithms, Code Review, Source Code Review, Back-end, Machine Learning, Deep Learning, Artificial Intelligence (AI), Interviewing, Technical Hiring, APIs, Deep Reinforcement Learning, Reinforcement Learning, Mathematics, Physics, Chemistry, Analysis, Algebra

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