Farid Abdalla

About

Hello, and welcome to my portfolio! I am a Research Engineer in Data Science with a strong background in software engineering and machine learning. I hold a Bachelor's degree in Software Engineering from HE-Arc, a Master's degree in Data Science from HES-SO, and I completed my Master's thesis as an international student at Osaka Metropolitan University in Japan. My education has equipped me with a diverse set of skills and knowledge that I have applied in my professional experience. I began my career as a research engineer at HE-Arc, where I worked on exciting machine learning projects. Please take a moment to review my education and experience, and feel free to explore my portfolio to see some of the projects I have worked on. If you find my profile interesting, you can download my resume on the following link.
Download my resume.

Data Scientist & Software Engineer

  • Birthday: 20 March 1996
  • City: Biel/Bienne, Switzerland
  • Bachelor: Software Engineering
  • Email: abdalla.farid@hotmail.com
  • Nationality: Swiss
  • Master: Data Science

Skills

As a dedicated professional with a strong academic background in software engineering and Data Science, I have gained valuable experience and expertise in various programming languages and tools that have allowed me to undertake and deliver successful projects. With a solid foundation in Python, PyTorch, TensorFlow, RLlib, and Scikit-learn, I have honed my skills in data manipulation, machine learning, and model deployment. Additionally, PyTorch and TensorFlow have enabled me to develop advanced deep learning models, while RLlib has given me an edge in reinforcement learning. Finally, Scikit-learn has allowed me to build complex data analysis and visualization tools. With my expertise and proficiency in these programming languages and tools, I am confident in my ability to undertake any project and deliver exceptional results. Whether it's data-driven solutions or deep learning models, I am committed to delivering top-notch solutions that exceed expectations.

Machine Learning

Scikit-Learn, Pandas, Numpy, Seaborn, Matplotlib, SQL, Ray Tune, Optuna, NLP, Computer Vision

Deep Learning

TensorFlow, Keras, PyTorch, PyTorch-Lightning, Hadoop, Spark, Tensorflow Extended

Reinforcement Learning

Ray RLlib, Stable Baselines, Unity ML-Agents

Software Engineering

Git, Docker, Kubernetes, AWS, Linux, Design Patterns, Project Management, Prototyping, Testing, CI/CD

Programming Languages & Frameworks

Python, C++ (CUDA, Qt), C# (WPF, Unity), Java (JEE), Android, Web (Django, Flask), LaTeX

Languages

As a multilingual professional, I have developed proficiency in several languages, including French (native), English (passed the Cambridge First Exam with an A rank), Japanese (self-taught and passed the JLPT N2 exam), and German (limited to school-level knowledge). The Cambridge First Exam, attests my advanced level of English proficiency, which I continuously work to improve. My autodidact approach of learning Japanese lead to my successful completion JLPT N2 exam. While I have not yet achieved fluency, I am capable of communicating effectively with native speakers. Finally, my knowledge of German, although at the school level, has given me a foundational understanding of the language, including basic grammar and vocabulary.

Overall, my multilingual background enables me to interact and communicate with individuals from different linguistic and cultural backgrounds effectively.

Resume

Education

Master thesis

April 2022 - September 2022

Osaka Metropolitan University, Osaka, Japan

Grade: 6.0 / 6.0

Thesis: Developed a model to generate videos conditioned on the first and the last frame. A video is generated in a frame-by-frame manner in order to have coherent movement between the given first and last frames. The model is trained on a custom dataset created from the Demon Slayer anime and create plausible movements close to the ground truth.

Certificate of Study

Master of Science in Engineering (MSE) - Data Science

September 2019 - September 2020

HES-SO Master, Lausanne, Switzerland

Grade: GPA 5.5 / 6.0

Thesis: See above

Grade Transcript

Bachelor of Science in Computer Science - Software Engineering

September 2016 - September 2019

HE-Arc, Neuchâtel, Switzerland

Grade: GPA 5.6 / 6.0

Award: Best GPA

Thesis: Used Reinforcement Learning with Unity ML-Agents in order to simulate and optimize the production of machines inside a workshop. The machines are trained to adapt to the workshop composition and manage to complete orders of variable complexity while continuously reducing the production time.

Grade Transcript

Professional Experience

Research Engineer in Data Science

September 2020 - Present

Haute Ecole Arc, Neuchâtel, Switzerland

  • Utilize software engineering expertise to develop products throughout the software lifecycle to solve client problems, from ideation and requirements definition to development and successful deployment
  • Design, build, evaluate, tune, and deploy machine learning, deep learning and RL solutions using PyTorch, TensorFlow, and Ray RLlib.
  • Work with various data sources, such as time series, images, videos and natural language data, to create effective data-driven solutions.
  • Clean and preprocessed data to ensure accuracy, consistency, and develop robust data pipelines to streamline data processing and analysis.
  • Collaborate with cross-functional teams to develop AI solutions and integrate machine learning models into real world applications.

Certifications

Hugging Face Deep Reinforcement Learning Course

March 2023

https://huggingface.co/deep-rl-course/

Grade: Excellent

Certificate

Winter School in Data Analytics and Machine Learning

Spring 2021

University of Fribourg, Fribourg, Switzerland

Grade: GPA 5.6/6.0

Certificate with grade

Projects

I have worked on various projects that allowed me to develop my skills in multiple domains. Some of my notable projects include developing machine learning models using PyTorch, TensorFlow, and Scikit-learn. These projects involved data manipulation, model training, and testing, which allowed me to acquire a deeper understanding of these tools. Additionally, I have worked on reinforcement learning projects, which enabled me to build intelligent systems that learn and adapt to their environment. Apart from technical projects, I have also participated in game jams, where I collaborated with other developers to create games within a short period, which required quick prototyping and problem-solving skills.

Overall, my diverse set of projects has equipped me with the knowledge and experience to take on challenging projects in the future.

  • All
  • PyTorch
  • Tensorflow
  • Scikit-Learn
  • Reinforcement Learning
  • Game Jam

TorchGANime

Video generation of anime content conditioned on two frames (PyTorch implementation)

SceneDataset

PyTorch Dataset which splits scenes with PySceneDetect and optimally load them with Decord

GANime

Video generation of anime content conditioned on two frames (Tensorflow implementation)

SOON-RL

Workshop production optimization on a multi-agent setup with Reinforcement Learning

DL4Space

Anomaly detection and root cause investigation with explainable models on satellites data

MoDoS

Model fine-tuning on a highly imbalanced dataset of urban images

PPI

Explainable deep learning model to assist a trader in making decisions on different currency pairs

Mark and Clippy

GMTK Game Jam 2020 with the theme: Out of Control

K-Defaults

Multi-label classification on textual descriptions for a quality control application.

Magic Valley

Game created for the Nordic Game Jam Online (theme : everyday magic) and for the Ludum Dare 46 (theme : keep it alive)

Magnet Arena

Game created for the GMTK 2021 Game Jam with the theme: Joined Together

The Legend of the Empty One

Game created for the Ludum Dare 45 Game Jam with the theme: Start with nothing

Hobbies

Fitness

Anime & Manga

Escape Games

DnD & Board Games

Video games

AI projects

Contact

Please don't hesitate to reach out if you have any questions or would like to get in touch with me. You can contact me through any of the following means: