Skip to the content.

Sarra BOUHENNI

Education

2018-2021
PhD, Computer Science; Ecole Supérieure d’Informique of Algiers and Université Claude Bernard - Lyon 1

Thesis title: Parallel and Distributed Algorithms for Pattern Matching in Big Graphs [Publications]

2016-2017
Masters degree, Computer Science; Ecole Supérieure d’Informatique (Algiers)
2012-2017
Engineering degree, Computer Science; Ecole Supérieure d’Informatique (Algiers)
2009-2012
Baccalaureate, Mathematics; Omar Ibn El Khattab High School (Relizane)

Trainings & Certifications

Functional Programming in Scala Specialization; by École Polytechnique Fédérale de Lausanne on Coursera [About this course]

Neural Networks and Deep Learning: by DeepLearning.AI on Coursera [About this course]

Big Data Foundations - Level 2; by IBM [About this course]

Experience

October 2021 – Present
Research Associate @ CERIST Research Center (Algiers)

I work on distributed algorithms of big graphs and big data processing platforms.

January 2018 – December 2021
PhD Candidate @ CERIST Research Center (Algiers) and LIRIS CNRS (Lyon)

I worked in my PhD on the problem of Graph Pattern Matching (GPM) in the context of large-scale distributed graphs. Our goal is proposing new parallel and distributed algorithms to answer GPM queries in big graphs while taking into consideration the shortcomings of prior work in this field.

June 2019 – March 2021
Graduate Teaching Assistant @ CERIST Research Center (Algiers)

I teach the course Programming languages for Big Data - Scala in the specialized post-graduation training (PGS). The course covers:

  • Basic syntax of Scala programming language.
  • Object Oriented Programming in Scala.
  • Functional programming with Scala, including higher order functions, lambda expressions, partial evaluation, etc.
  • Collections in Scala, Lists, Vectors, Sets and Maps.

I also teach the introductory course Frameworks for big graphs - GraphX where the following points are covered:

  • Basic operators for graph loading using GraphX.
  • Graph transformations and information aggregation with the graph-parallel paradigm of GraphX.
  • Design and implementation of iterative algorithms based on the Pregel model on top of GraphX.
August 2017 – December 2017
Data Science Consultant @ Ya Technologies (Algiers)

I worked on improving the logging system of the VTC application Yassir. My responsitibilies included mainly:

  • Extraction of the log events available at a Kafka server using a logger implemented with NodeJs.
  • Transformation of the events to compresenhive information to be stored on an Elasticsearch server.
  • Creation of dashboards for the visualization and reporting of logs using Kibana.
September 2016 – June 2017
Data Science and Web Development Intern @ AITECH (Algiers)

In my final year’s engineering project, I worked on the design and development of a monitoring system for predicting plant diseases in Algeria, using Incremental Machine Learning algorithms. My responsibilities in this project included:

  • Collecting data on plant disease prediction for the two diseases: Fusarium Head Blight and Potato Mildiew.
  • Design of a new algorithm for plant disease prediction based on incremental learning.
  • Design and development of a backend for disease prediction based on current weather conditions, using Python and Django.
  • Design and development of a web application, using Angular, for monitoring and visualization of the disease spread across Algerian crops.
September 2015 – October 2015
Web Development Intern @ Carthena Tech (Algiers)

In this internship, I worked on the development of an e-learning platform for teaching matchematics to high school students in Algeria. My responsibilities included:

  • The design and developement of the platform UI on top of Jomla.
  • Preparation and integration of the different math quizzes in the platform.

Technical Experience

Programming Languages

Scala: I have an experience of 3 years working with Scala and functional programming. I have implemented several distributed algorithms of graphs with Scala, Spark RDDs and GraphX.

Python: I had the chance to work with Python for one year during my final year’s engineering project. I have implemented different data science algorithms in addition to a web application using Django. I have also worked on a data science project using Python during my experience at Ya Technologies.

Basic knowledge of C, C++, Java

Big data plateforms

Spark Apache I have an experience of 3 years working with Spark and its module GraphX for designing graph pattern matching algorithms in the context of massive graphs. I am also responsible of the deployment and management of the big data plateform at the CERIST research center.

Elastic Stack I have worked with the different components of the Elastic Stack including Logstash, Elasticsearch and Kibana during my experience as a data science consultant at Ya Technologies. I have also an experience in the deployment and management of an Elasticsearch cluster on a production environment using Docker and Kubernetes.

Spoken languages