Rabih Kodeih

Veteran Software Engineer

Fullstack Python/Javascript Engineer with Data Analytics and Machine Learning Background.


Email Address


Stack Oveflow Profile


GitHub Profile


  • American Universirty of Beirut

    I graduated from AUB with a bachelor of engineering degree in computer and communication systems.

  • Beirut Arab University

    I graduated form BAU with a master's degree in applied engineering mathematics.

Project Samples

  • Configurable Crawling Platform using Custom Selenium Scrappy Middleware | view

    Company: esanjo.com | view
    Technologies: Python Selenium Headless Chromium Scrapy
    Project README file | view

    At Esanjo, we were building camel.jobs, a curated jobs listing website. One of the major issues we faced early on was that we needed to crawl a big list of more than a 1000 company job board pages. Althoug we decided to use the powerful open source Scrapy framework, building lots of spiders for each job board was out of the question. We ended-up developing a sophisticated framework using x-path configuration files and a specially built Selenium python scrapy middleware to help crawl those highly dynamic job boards. We also built a set of comprehensive pipelines to normalize and filter job listing regions.

    We designed and implemented the whole system, including deployment, containerization, logging analysis and deployment.


  • Lunatap: Stripe Charger App | view

    Company: esanjo.com | view
    Technologies: Python Flask Django Stripe-API Redis React Selenium

    From the lunatap website: You use Stripe for your online payments, why not take it everywhere else? Leave your bulky card machine behind. Login using your Stripe account, tap out an amount, type or scan your customer’s card and boom, money in your bank account.

    We migrated the API of lunatap from an old php codebase to a modern Python/Flask code base. We wrote a whole suite of unit test and UI end-to-end test cases. We also implemented a backend for lunatap using Django with a multiple database configuration. Redis was also used to cache expensive requests and help scale the service.


  • Online Dating Recommender System

    Company: et3arraf.com | view
    Technologies: Python Numpy Redis

    This project was aimed at finding reliable recommendations for online daters from both genders. A specialized algorithm based on reciprocal collaborative filtering was used in addition to summary statistics per feature to generate the recommendations.

    We designed and implemented the whole system. Including the web service, the actual logic, reporting and dashboard/UI.


  • Online Dating Spam Detection

    Company: et3arraf.com | view
    Technologies: Python scikit-learn

    Most online dating sites have some spammers who try to lure non suspecting users into surrendering sensitive info as well as other potentially harmful activities. The main feature of this project was to reliably detect those spammers using a combination of hand engineered features such as text repeatability, occurrence of special words and a host of other minor features. A support vector machine was used to successfully detect the spamming activity in real-time.

    We designed and implemented the whole system including the web-service, the dashboard/UI, reporting and alerting sub-systems.


  • Muzeit | view

    Company: Double-U | view
    Technologies: Titanium Mobile VB.Net Python

    One of the more interesting projects I've worked on. The project mainly deals with music sharing as well as a song recommendation engine. There is an app (for all major mobile platforms) and a web-service along with a website for downloading and promoting the app. I was responsible for the backend development and scaling.

    We designed and implemented the database sub-system including migrating data from Apple’s music datasource, the web-service, backup-scripts, caching, load-balancing/scaling.


  • Hopecan

    Company: Undisclosed
    Technologies: Python Django jQuery

    This is best described as a Kickstarter offshoot with a social twist.

    We designed and implemented the whole system including front-end and back-end.


  • TMSapp | view

    Company: Tahwita Modern School | view
    Technologies: Python Django jQuery Bootstrap

    A school management system consisting mainly of an online agenda, scheduler, personalized teacher timetables and an online books section. An iOs/Android mobile application was also developed that mimicked the website functionality.

    We designed and implemented the whole system including front-end and back-end, and the mobile app.


  • SmartPlate

    Company: Undisclosed
    Technologies: Python Cython

    The project's main aim was to design and implement a car number plate detection system in parking lots. I wrote very low level optimized code (using Cython) to implement and test a number of computer vision algorithms. We finally used a form of global energy minimization to detect the plate through recognizing adjacent plate numbers. Dynamic programming was used to perform the energy function minimization.

    We designed and implemented the whole system including back-end web-service, reporting and dashboard/UI.


  • Sentience

    Company: taglogic | view
    Technologies: Python Django NLTK jQuery

    This is a typical machine learning project. We used a variation of Naive Bayes classifier to determine a continuous sentiment polarity of random sentences in the Arabic language. Supervised learning was used to train the system.

    We designed and implemented the whole system including back-end web-service, reporting and dashboard/UI.


My Address


Mobile Number



E-mail: rabih.kodeih@gmail.com

Skype: rabih.kodeih

© 2019, Rabih Kodeih.