Patrick Loic FOALEM

Patrick Loic FOALEM

Software Engineer Intern

Followers of Patrick Loic FOALEM1000 followers
location of Patrick Loic FOALEMMontreal, Quebec, Canada

Connect with Patrick Loic FOALEM to Send Message

Connect

Connect with Patrick Loic FOALEM to Send Message

Connect
  • Timeline

  • About me

    PhD Candidate | Software engineer | Data scientist | Data analyst | Senior Lecturer @polymtl| Proud husband&dad

  • Education

    • Université des Montagnes

      2018 - 2020
      M.A.SC. SOFTWARE ENGINEERING
    • Université des Montagnes

      2014 - 2017
      B.SC. COMPUTER SCIENCE
    • Lycée de la citée des palmiers

      2006 - 2013
      Baccalauréat science mathématiques
    • Polytechnique Montréal

      2021 - 2025
      Doctor of Philosophy - PhD Software engineering and artificiel intelligence
  • Experience

    • Canal24

      Jul 2016 - Dec 2016
      Software Engineer Intern

      • Designed and implemented the entire project database schema in MySQL.• Participated in the development of a customer management application using JAVA EE.• Developed custom management functionalities such as adding, log in, updating, and deleting customer using JAVA EE.

    • Afriland First Bank

      Jul 2017 - Jan 2019
      Back End Developer

      • Explored, analyzed, and visualized customer data.• Wrote SQL scripts to collect and manipulate customer data.• Developed RESTful APIs using Java and Spring framework.• Implemented machine learning models using Python to make predictions or classify data on customer data.• Developed and maintained a user survey web page using Java EE.• Designed and developed database schemas using SQL Server.• Optimized database performance by tuning SQL queries and indexing.• Conducted code reviews and collaborated with front‑end developers to ensure smooth integration of web applications.• Created and maintained technical documentation for developed software and APIs.• Participated in Agile software development process, including sprint planning, backlog grooming, and retrospectives. Show less

    • SoftWare Analytics and Technologies Lab (SwatLab)

      Apr 2019 - Feb 2021
      R&D Software Engineer

      • Utilized and manipulated Azure Cloud resources such as virtual machines, LUIS, and QnA Maker.• Analyzed the Stack Overflow database to determine the discussion topics of Cameroonian developers.• Implemented an AI model using Microsoft Cognitive Service, specifically LUIS and QnA Maker.• Performed data cleaning on the data we get from Stack Overflow using Python.• Developed SQL queries and stored procedures to extract data for analysis on Microsoft SQL Server.• Designed and implemented the conversation flow, intent recognition, and entity extraction using LUIS and QnA Maker.• Developed SQL queries and stored procedures to extract data for analysis on Microsoft SQL Server.• Documented the chatbot design, development, and deployment process using tools such as LaTeX.• Developed and deployed a chatbot (conversational assistant) using C# language and the Microsoft Bot Framework on Azure Cloud. Show less

    • Université des Montagnes

      Sept 2019 - Jan 2022

      • INF 301: Computer Architecture.– Topics covered include: design of computer systems, and the techniques used to improve performance. instruction set design, cacheorganization, virtual memory, input/output (I/O) interfaces, and multi‑core systems.• INF 304: Geographic Information Systems (GIS).– Topics covered include: An introduction to Geographic Information Systems (GIS) and their application in a variety of fields. Collect,store, manage, analyze, and present spatial data. Data models, coordinate systems, map projections, data acquisition, data input, editing,georeferencing, attribute data management, spatial analysis, and cartography. Introduction to software tools QGIS.• INF 104: Introduction to Computer Science.– Topics covered include: computer hardware and software, algorithms, data structures, programming concepts, and basic computerorganization.• INF 306: Databases.– Topics covered include: an introduction to databases, fundamentals of database management systems, including the relational datamodel, SQL programming, and database design. Introduction to database management systems MySQL. Show less

      • Faculty Lecturer

        Jan 2021 - Jan 2022
      • TEACHING ASSISTANT

        Sept 2019 - Dec 2020
    • Polytechnique Montréal

      May 2021 - Aug 2021
      SCIENTIFIC ASSISTANT

      • LOG 1410: Software Analysis and Design.– Built course materials, including analysis of course content and redesign of course structure.– Developed a diverse set of challenging exercises with corresponding solutions to enhance student learning and engagement in thecourse.

    • SwatLab

      Sept 2021 - now
      PhD Candidate

      • Developed Python automation scripts to collect data from websites such as GitHub, Stack Overflow.• Wrote Bash scripts to automate tasks and improve efficiency.• Identified requirements for better logging practices in machine learning‑based applications.• Developed tools for efficient logging and analysis of logs to support operations and audits in machine learning‑based applications• Applied machine learning models for prediction or classification of data using Python.• Evaluated the robustness of deep learning models, including pre‑trained models such as LeNet 5, VGG16, and Resnet‑20, using synthetic datagenerated to improve their performance and accuracy.• Conducted topic modeling analysis using algorithms such as Latent Dirichlet Allocation (LDA).• Preprocessed text data by tokenizing, stemming, and removing stop words.• Dockerized Python scripts.• Dockerized Python scripts and deployed machine learning models with Flask, FastAPI, and Docker.• Wrote scientific articles on the topics of machine learning, and software engineering.• Conducted research on auditing and responsible development of machine learning‑based applications.• Improved current practices of auditing and developed a new approach for ensuring fairness, explainability, privacy, and security in machinelearning based systems. Show less

    • CloudConseils Inc

      Sept 2021 - Nov 2022
      CLOUD ENGINEER JUNIOR

      • Configured and managed virtual machines.• Monitoring cloud infrastructure and services, using tools like AWS CloudWatch and collect and analyze performance data and troubleshootissues.• Automating cloud infrastructure provisioning and management using infrastructure‑as‑code tools like BOTO3 and Terraform.• Troubleshooting and resolving issues related to cloud infrastructure, networking.• Collaborating with development teams to deploy application such as Flask application.• Set up a database management system such as MySQL cluster on EC2 instances.• Implemented loadbalancing and autoscaling for applications and services to ensure high availability and scalability. Show less

    • IVADO

      Jul 2022 - Apr 2023
      SCIENTIFIC ASSISTANT

      • Analyzed the content of a machine learning MOOC.• Designed evaluation questions for the machine learning MOOC and integrated them onto the EDUlib platform.• Preprocessed text and image data and various techniques to deal with imbalanced data, categorical data, missing data, and normalization...• Implemented a linear regression model for numerical data and an XGBoost classification model for categorical data.• Preprocessed image data and built a convolutional neural network (CNN) using the TensorFlow library with Keras API for image classification.The model was designed to classify images into specific categories based on the features extracted by the convolutional layers.• Preprocessed data and implemented a data clustering model using the K‑means algorithm from the sklearn library. Show less

    • Polytechnique Montréal

      Sept 2022 - Apr 2023

      • INF 3710: FILES AND DATABASES.– Topics covered include: Introduction to files and databases. Needs analysis: entity‑relationship model. Relational model: basic con‑cepts and relational algebra. SQL standard (Standard Query Language): data definition, manipulation, and control languages. SQLlanguage embedded in an algorithmic programming language. Notions of concurrent access control and transaction management. De‑sign of a relational database schema: functional dependencies and normalization forms. Storage models for relations and files. Auxiliarystructures facilitating data access: indexing and dispersed addressing.– Monitoring the lab during classes and ensuring that students adhere to lab rules and safety guidelines.– Collaborating with the course instructor to create and deliver lab assignments and projects.– Grading lab assignments and providing feedback to students.– Assisting students with technical issues and troubleshooting problems Show less • LOG 1410: Software Analysis and Design course.– Topics covered include: Software engineering processes and software development life cycle. Phases of the software development lifecycle: analysis, design, implementation, testing, maintenance, and operation. Analysis and design activities in the software engineeringprocess: principles, specifications, and methods. Object‑oriented analysis and design methods: standard languages and notations.Structural modeling. Behavioral modeling, and architectural modeling. Layered software architecture. Design patterns.– Monitoring the lab during classes and ensuring that students adhere to lab rules and safety guidelines.– Collaborating with the course instructor to create and deliver lab assignments and projects.– Grading lab assignments and providing feedback to students.– Assisting students with technical issues and troubleshooting problems• Evaluating student presentations for INF1040 course.• Assisting students with technical issues and troubleshooting problems for courses: INF0101, INF1005D, INF1007, INF1010, INF1015, LOG2440. Show less

      • LABORATORY ASSISTANT

        Jan 2023 - Apr 2023
      • LABORATORY ASSISTANT & CONSULTANT, GIGL

        Sept 2022 - Dec 2022
    • Autorité des marchés financiers (Québec)

      May 2023 - now
      Data Scientist

      • Implemented clustering algorithm, evaluated and assessed the quality of the clustering results using evaluation metrics such as silhouette,elbow.• Extracted meaningful business insights from the clustering results to support decision‑making processes.• Utilized topic modeling algorithms such as Latent Dirichlet Allocation (LDA) to extract meaningful topics.• Preprocessed the text data by tokenizing, lemmatizing, or stemming the text for better topic extraction.• Evaluated and validated the quality of the generated topics using appropriate metrics such as coherence score.• Extracted financial data from various sources (databases, APIs, flat files, PDF, etc.).• Edited and optimized SQL queries for data retrieval, transformation, and storage.• Leveraged Databricks for big data processing and analysis.• Automated ETL workflows for data updates.• Created interactive dashboards and reports for business data analysis.• Developed Python scripts to automate the generation of financial reports.• Documented the entire process, including data preprocessing steps, algorithm selection, parameter settings, and evaluation results. • Summarized the findings in a clear and concise manner suitable for reporting to stakeholders.• Collaborated with other team members, such as domain experts or data engineers, to ensure the successful implementation and deploymentof the clustering solution Show less

    • Université des Montagnes

      May 2023 - now
      Guest Lecturer

      Course: Agile Methodology Essentials- Topics covered include: Introduction to Agile methodology, the Agile Manifesto, the Agile mindset, Agile methodologies, and the comparison between Agile approach and traditional methods. It also focuses on the Scrum methodology, including Scrum roles, artifacts, and ceremonies, as well as sprint planning and backlog management. Another topic covered is the Kanban methodology, which includes principles, visualization of workflows, managing work in progress, and continuous improvement. These topics provide an in-depth understanding of Agile methodology and specific methods that can be implemented to improve project management. Show less

    • Polytechnique Montréal

      Jan 2024 - now

      LOG3000: Software Engineering Process course.- Topics covered include: Basic activities of a software engineering process. Phases of the software lifecycle. Tools and methods supporting the process. Overview of different software development process philosophies. Technical disciplines of the software engineering process: requirements, analysis and design, implementation, testing. Process management disciplines: configuration and change request management, project management, team management. Process evaluation. Process improvement. Methods for process representation. Meta-model. Empirical analysis of processes. Show less • LOG 2400: Software Analysis and Design course.– Topics covered include: Software engineering processes and software development life cycle. Phases of the software development lifecycle: analysis, design, implementation, testing, maintenance, and operation. Analysis and design activities in the software engineeringprocess: principles, specifications, and methods. Object‑oriented analysis and design methods: standard languages and notations.Structural modeling. Behavioral modeling, and architectural modeling. Layered software architecture. Design patterns.– Monitoring the lab during classes and ensuring that students adhere to lab rules and safety guidelines.– Assist with course preparation.– Grading lab assignments and providing feedback to students.– Assisting students with technical issues and troubleshooting problems Show less LOG3000: Software Engineering Process course.- Topics covered include: Basic activities of a software engineering process. Phases of the software lifecycle. Tools and methods supporting the process. Overview of different software development process philosophies. Technical disciplines of the software engineering process: requirements, analysis and design, implementation, testing. Process management disciplines: configuration and change request management, project management, team management. Process evaluation. Process improvement. Methods for process representation. Meta-model. Empirical analysis of processes.– Monitoring the lab during classes and ensuring that students adhere to lab rules and safety guidelines.– Assist with course preparation.– Grading lab assignments and providing feedback to students.– Assisting students with technical issues and troubleshooting problems Show less • LOG8371: SOFTWARE QUALITY ENGINEERING.- Topics covered include: Basic concepts and relevant definitions related to software quality, quality assurance, testing, quality engineering, and quality planning. Anomaly prevention and defect classification. Fault tolerance. Software reliability engineering. Quality models. Comparison of various quality assurance techniques. Improvement of the software development process. Measurement of software and processes. Risk identification for quantifiable quality improvement.– Monitoring the lab during classes and ensuring that students adhere to lab rules and safety guidelines.– Assist with course preparation.– Grading lab assignments and providing feedback to students.– Assisting students with technical issues and troubleshooting problems Show less

      • Lecturer

        Jun 2024 - now
      • TEACHING ASSISTANT

        May 2023 - now
      • TEACHING ASSISTANT

        Jan 2024 - May 2024
      • TEACHING ASSISTANT

        Jan 2024 - Apr 2024
  • Licenses & Certifications

    • Natural Language Processing in TensorFlow

      Coursera
      Dec 2021
      View certificate certificate
    • Introduction to Machine Learning in Production

      Coursera
      Dec 2021
      View certificate certificate
    • Convolutional Neural Networks in TensorFlow

      Coursera
      Dec 2021
      View certificate certificate
    • Spécialisation DeepLearning.AI TensorFlow Developer

      Coursera
      Dec 2021
      View certificate certificate
    • Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning

      Coursera
      Dec 2021
      View certificate certificate