Hi, my name is Abdullah
I am a software engineering student at Concordia University from Montreal, Canada.
Deep Learning - Brain Tumor Detection and Localization
Utilizing advanced deep learning techniques, this project significantly advances the detection and localization of brain tumors using MRI scans.
A dual-model approach integrates a ResNet-50 model for tumor classification and a custom-designed ResUNet model for precise tumor segmentation.
Trained on a carefully curated dataset of about 4000 MRI scans, the system showcases an impressive combination of technical proficiency in CNNs, TensorFlow, and Keras, alongside a deep understanding of deep learning principles.
Beyond its technical merits, the project stands out for its potential to transform the diagnosis and treatment of brain tumors, offering faster, more accurate diagnoses and paving the way for personalized medical solutions.
Deep Learning - Facial Keypoints and Emotion Recognition
The project harnesses the power of Convolutional Neural Networks (CNNs) to analyze human expressions and emotions through two interconnected phases.
Initially, a modified ResNet-18 architecture facilitated the detection of facial keypoints with an accuracy of 90.2%, utilizing over 8,560 images enhanced by data augmentation and normalization.
This foundation supported the subsequent phase of emotion classification, where the model distinguished between five emotions—happiness, surprise, disgust, anger, and sadness—with a remarkable 91.6% accuracy created with 24,568 images. The culmination of the project integrates these capabilities, enabling real-time visualization of both facial keypoints and emotions.
This holistic approach not only highlights the model's sensitivity to subtle human expressions but also illustrates the vast potential of AI in interpreting the intricate aspects of human emotions.
Object-Oriented Programming - Risk Game
Developped A warzone game inspired by RISK in C++. The Goal is to conquer other players territory.
Applied rigorous Object-Oriented design principles as required by the requirements such as MVC (Model-View-Controller), Oberserver patterns... to ensure robust and maintainable code.
Led the development team, overseeing debugging and problem-solving processes.
Some additional features Includes automated player strategies, enabling the game to be demonstrated with four AI competitors to showcase gameplay dynamics.
Databases - Database Design & Database Migration
This project involved designing a relational database for personal information management using MySQL.
Key features include utilizing public APIs for data collection and processing requests.
Transitioned the database to a NoSQL framework (Neo4j) to explore different database paradigms and enhance scalability.
Successfully implemented the migration, gaining hands-on experience with both SQL and NoSQL databases as well as using public APIs.
Web Development - LinkedIn-Style Platform
Students apply for jobs, employers post vacancies and approve candidates, and headhunters recommend talents.
Students can apply for jobs, Employers can create job postings and accept students. Headhunters can suggest employers students.
Additional Features includes Spam-Free Zone (Robust measures ensure job listings are genuine), and Smart Notifications (Users stay updated with real-time alerts on job statuses).
Machine Learning - Movies Recommendation System
This project is a two-part exploration of machine learning techniques, specifically focusing on K-Nearest Neighbors (KNN) and Collaborative Filtering (Item-Based), using a comprehensive dataset of 100,000 movies from MovieLens.
A dataset of 100,000 movies provided by MovieLens is used.
Part 1 (KNN): Implements the KNN algorithm to predict movie ratings. It identifies the 10 closest neighbors (similar movies) to estimate a movie's rating based on its nearest counterparts.
Part 2 (Collaborative Filtering): Applies item-based collaborative filtering to make personalized movie recommendations. The system analyzes user preferences and past ratings to suggest new movies that align with the user's taste.
Machine Learning - XGBoost Implementation
This project showcases the application of XGBoost, a renowned machine learning algorithm, for classification tasks.
Utilizes a public dataset from Sci-Kit Learn, detailing types of Iris flowers along with their characteristics such as sepal length, sepal width, petal length, and petal width.
Focuses on accurately predicting the Iris species based on the aforementioned features.
Machine Learning - Email Spam Classification
This project develops an email spam filter using the Naive Bayes algorithm, mirroring the functionality seen in many commercial and open-source anti-spam filters.
Utilizes Naive Bayes for its efficiency and effectiveness in categorizing text data.
The model is trained on a pre-classified dataset, containing examples of both spam and non-spam emails.
Once trained, the model evaluates the content of any given email (words or sentences) and determines the likelihood of it being spam or not.
Machine Learning - Income-Age Clustering
This project explores the relationship between individual's income and age through a synthetic dataset. It employs K-Means clustering, a popular unsupervised learning technique, to group individuals based on similarities in their age and income profiles.
Utilizes the K-Means algorithm from the Sci-Kit Learn library to identify and learn patterns within the data.
Post-training, the algorithm categorizes each individual into the cluster they most likely belong to, based on their age and income characteristics. The aim is to uncover potential patterns and groupings within the data, illustrating how K-Means can be a powerful tool in understanding and segmenting datasets based on inherent characteristics.
Peer Tutor
Mentored over 17 students in various natural science subjects every semester.
Significantly enhanced students' comprehension and contributed to their grade improvements of up to 30%.
Conducted comprehensive analyses and developed tailored solutions for students.
Secured principal approval for the continuation and expansion of the peer tutoring program for next semesters after the demonstrating significant improvements in students' academics.
Web Development
Skilled in both front-end and back-end development, creating responsive, user-centric interfaces and robust server-side applications.
Proficient in web scraping and implementing authentication mechanisms with tokens to ensure secure and seamless user experiences.
Data Management & Analysis
Skilled in leveraging NoSQL databases like Neo4J and MongoDB to manage large, complex datasets effectively.
Proficient in advanced database design and ensuring data integrity in SQL Databases & familiar with data normalization technicques.
Machine Learning & Data Science
Proficient in developing predictive models using popular machine learning such as Naives Bayes, K-Means, Random Forest, and XGBoost.
Skilled in implementing deep learning algorithms such as Convolutional Neural Networks, Long Short-Term Memory Networks and Recurrent Neural Networks.
Software Development Methodology
Experienced in driving software development through Agile methodologies, Scrum meetings, sprints planning, and user stories for optimal team collaboration and product evolution.
Committed to quality assurance and continuous integration for delivering reliable and high-quality software.
Familiar with DevOps practices for streamlined deployment and operation.
Algorithms & Data Structures
Deeply knowledgeable in a variety of search algorithms such as binary search, depth-first search, and breadth-first search as well as theory behind time and space complexity.
Skilled in the application and implementation of fundamental and advanced data structures like arrays, linked lists, trees, graphs, and hash tables to efficiently organize and manipulate data.
Operating Systems
Proficient in managing operating system resources with a strong understanding of synchronization, process scheduling, and multithreading.
Effectively handled concurrent operations and minimizing contention for resources in java.
Object-Oriented Programming
Expert in leveraging OOP principles such as inheritance, encapsulation, and polymorphism to construct modular and scalable code in Java, Python, and C++.
Proficient in utilizing design patterns to build cohesive, maintainable solutions for complex software challenges.