๐“—๐“ฎ๐”‚ ๐“˜'๐“ถ

๐“œ๐“ญ. ๐“๐“ต๐“ฒ ๐“๐“ด๐“ซ๐“ฎ๐“ป

About me

I am Md. Ali Akber, currently serving as a Lecturer in the Department of Software Engineering at Daffodil International University in Dhaka, Bangladesh. I hold a Bachelor of Science degree in Computer Science and Engineering from Ahsanullah University of Science and Technology. My educational endeavors have provided me with the opportunity to explore several disciplines related to computer science. Among these, I have developed a distinct passion for Natural Language Processing, Machine Learning, and Deep Learning, recognizing their unparalleled capacity to drive innovation and catalyze transformative change across industries.

View My CV

Teaching

  • Daffodil International University

    Lecturer
    Department of Software Engineering
    February 2024 - Present

    Courses:

    • SE113: Introduction to Software Engineering
      Conducted in Spring 2024
      Introduced students to the fundamentals of Software Engineering, covering SDLC models (Waterfall, Agile), software requirements specification, use case and UML diagrams, architectural and detailed design, software testing techniques, version control (Git), and basic project planning. Included team-based mini projects to apply engineering principles in real-world scenarios.
    • SE133: Software Development Capstone Project Lab
      Conducted in Spring 2024 | Fall 2024
      Supervised student teams in developing full-cycle software projects using the C programming language. Covered requirement analysis, modular design, implementation, testing, and deployment. Emphasized agile practices, Git-based version control, code documentation, and team collaboration. Projects culminated in live demonstrations and presentations to faculty evaluators.
    • SE132: Data Structure Lab
      Conducted in Fall 2024
      Hands-on lab focused on implementing core data structures using the C programming language. Topics included arrays, linked lists (singly, doubly, circular), stacks, queues, trees, graphs, and hash tables. Emphasized algorithmic problem solving, time and space complexity analysis, and practical coding through structured lab assignments and mini-projects.
    • SE216: Object Oriented Programming
      Conducted in Fall 2024 | Spring 2025
      Covered fundamental object-oriented programming concepts using Java. Topics included classes and objects, constructors, inheritance, polymorphism, abstraction, encapsulation, exception handling, interfaces, static members, and collections. Included practical coding sessions and assignments to reinforce design principles and reusable software development.
    • SE216: Object Oriented Programming Lab
      Conducted in Spring 2025
      Practical lab course focused on implementing object-oriented programming principles in Java. Covered classes and objects, constructors and destructors, access modifiers, inheritance, method overloading and overriding, polymorphism, abstraction, interfaces, exception handling, composition, method chaining, and use of collections. Included hands-on assignments and mini-projects simulating real-world scenarios.
    • SE232: Operating System & System Programming
      Conducted in Summer 2025
      In-depth course combining operating system principles with system-level programming in C and Linux. Covered process scheduling algorithms (FCFS, SJF, Round Robin, Priority), memory management techniques (paging, segmentation, page replacement algorithms like FIFO, LRU), deadlock handling (detection, prevention, avoidance), file system architecture, system calls, shell programming, process synchronization (semaphores, mutex), and inter-process communication (pipes, shared memory, message queues). Included practical system-level coding and OS simulation exercises.
    • SE233: Operating System & System Programming Lab
      Conducted in Summer 2025
      Practical lab conducted in Ubuntu Linux environment, focused on system-level programming and core operating system concepts using C. Lab exercises included implementation of CPU scheduling algorithms (FCFS, SJF, Round Robin), memory management techniques (paging, segmentation, page replacement), process synchronization using semaphores and mutexes, and inter-process communication through pipes, shared memory, and message queues. Emphasized hands-on exploration of OS internals and simulation of real-world system behaviors.
  • Southeast University

    Lecturer (Part-time)
    Department of Computer Science and Engineering
    February 2025 - June 2025

    Courses:

    • CSE282: Introduction to Programming Language II (Java Lab)
      Conducted in Spring 2025
      Introductory lab course on Java programming with a focus on object-oriented principles. Topics included data types, operators, control flow, arrays, methods, class and object creation, constructors, method overloading, inheritance, encapsulation, polymorphism, abstraction, and basic exception handling. Students practiced solving real-world problems using Java and reinforced core OOP concepts through lab-based tasks and assignments.
    • BPH118: Fundamentals of Computer
      Conducted in Spring 2025
      Introductory course designed to provide foundational knowledge of computer systems and applications. Topics included computer hardware and software components, number systems and binary arithmetic, operating systems, memory and storage, input/output devices, computer networks, internet basics, and an introduction to programming and problem solving. Included practical sessions on basic computing, file management, and MS Office tools.

Educational Qualifications

Publications

Title of the Publication: Personality and emotionโ€”A comprehensive analysis using contextual text embeddings
Journal: Natural Language Processing Journal

Read Abstract
Personality and emotions have always been closely intertwined since humans evolved, adapting to these two forms. Emotions are indicative of a personโ€™s personality, and vice versa. This paper aims to investigate the complex relationship between these two fundamental aspects of human behavior using the concepts of machine learning and statistical analysis. The objective is to automate the process of determining the relationship between personality traits of the MBTI (Myers-Briggs Type Indicator) and Ekmanโ€™s emotions based on the context of user-written social media posts using contextual embedding. A robust mechanism is employed, involving two main phases to figure out emotions from the social media posts. The first phase involves determining the cosine similarity scores between each MBTI personality trait and predefined emotions. The second phase introduces a cross-dataset learning approach where several machine learning models are trained on a dataset labeled with emotions to learn patterns of emotions found in the text. After training, these models utilize the patterns they learned to predict emotions in a targeted dataset. With an overall accuracy of 85.23%, the Support Vector Machine (SVM) is chosen as the most effective and high-performing model for emotion prediction tasks. We employed a vetting mechanism combining two approaches to improve accuracy, reliability, and trustworthiness for the final emotion prediction. Finally, using statistical quantification, this paper finds patterns that link each MBTI personality trait with Ekman emotions. It reveals that extroverts (E), sensing (S), and feeling (F) personality types are more likely to share joyful and surprising emotional posts, while individuals with extroversion (E), intuition (N), thinking (T), and perception (P) traits tend to express negative emotions such as anger and disgust. Conversely, introverts (I), intuitive (N), thinking (T), and judging (J) personalities are more inclined to share posts reflecting fear and sadness. This comprehensive study provides valuable insights on how individuals with different personality types typically express emotions on social media.

Title of the Publication: Personality Prediction Based on Contextual Feature Embedding SBERT
Conference: 2023 IEEE Region 10 Symposium (TENSYMP)

Read Abstract
Personality prediction defines an individual's interior self and provides an overview of their behavioral characteristics. Individuals can develop personally and professionally with its aid. Since its inception, the MBTI has become one of the most valuable instruments available due to its widespread application in a variety of fields. Typically, psychologists use questionnaires or conduct interviews with subjects to make predictions. However, because it is only a question-and-answer session, it is prone to error. In this paper, an implicit model is suggested in order to optimize the process using machine learning. The primary objective of this paper is to use sentence transformers to discern the context of user-written social media posts in order to automate the process. In our proposed work, various text pre-processing techniques, such as data cleansing, stopword removal, and data balancing techniques such as random oversampling, are utilized. The context of the text posts is determined using Sentence-BERT (SBERT), a pre-trained model created especially for sentence-level embeddings. Using the Myers-Briggs Type Indicator (MBTI) and a variety of machine learning techniques, such as Support Vector Machines (SVM), Logistic Regression (LR), K-Nearest Neighbors (KNN) and Random Forest (RF) Classifier, it is possible to predict people's personalities based on text. SBERT combined with the Random Forest Classifier performs outstandingly to predict the MBTI personality.

Title of the Publication: Interpretability of Machine Learning Algorithms for News Category Classification Using XAI
Conference: 2024 6th International Conference on Electrical Engineering and Information & Communication Technology (ICEEICT)

Read Abstract
Text classification has been a popular research topic for several years. To date, several advanced models have been developed in this field. In today's digital landscape, the proliferation of online news sources necessitates the efficient categorization of user accessibility. To address this situation, machine learning models can be used to automate news category classification based on news headlines and short descriptions. However, we know that machine-learning models act like black boxes. The interpretability of a model provides a clear understanding of how decisions are made, ensuring transparency, and user acceptance. This transparency helps in model validation and effective collaboration between human and computer interactions. Local Interpretable Model-agnostic Explanations (LIME), as an Explainable Artificial Intelligence (XAI) technique, can be implemented to generate interpretable explanations that aid in understanding the reasoning behind specific predictions. Our approach aims not only to predict news categories but also to provide transparent insights into model decisions. Initially, we used Sentence Bidirectional Encoder Representations from Transformers (SBERT) for contextual text embedding purposes, followed by different machine learning models for classification tasks, such as Random Forest (RF), Logistic Regression (LR), Decision Tree (DT), and K-Nearest Neighbors (KNN). Notably, RF achieves exceptional accuracy of 91.48 %, surpassing contemporary benchmarks. Finally, LIME elucidates crucial features guiding classification decisions, facilitating model validation, and fostering human-computer collaboration. This study enriches the evolving discourse on interpretable AI models by providing a robust framework for transparent news classification in an era inundated by information.

Research Interests

  • Data Mining
  • Machine Learning (ML)
  • Deep Learning (DL)
  • Natural Language Processing (NLP)
  • Large Language Models (LLM)
  • Computer Vision
  • Image Processing
  • Explainable AI (XAI)
  • Generative Adversarial Networks (GAN)

Skills

Machine Learning/Deep Learning (ML/DL) Proficiency:

  • Deep Learning Frameworks: PyTorch, Keras, TensorFlow
  • Specializations in Neural Networks, NLP, GAN, eXplainable AI and Computer Vision
  • Pandas
  • Matplotlib
  • Version Control System: Git

Programming Languages Expertise:

  • C & C++
  • Python
  • Java
  • JavaScript
  • HTML & CSS

Database Mastery:

  • Ms SQL
  • MySQL
  • Oracle PL/SQL
  • Firebase

Software Quality Assurance (SQA) Skills:

  • Test planning, creating comprehensive test cases, and meticulous execution
  • Leveraging manual and automated testing methods, particularly Selenium
  • Defect tracking and reporting using Jira within Agile/Scrum methodologies

Expertise in Testing Tools:

  • Test Management Tools: Jira
  • Automation Testing Tools: Selenium
  • Performance Testing Tools: JMeter
  • CI/CD Tools: Jenkins
  • Version Control: GitHub
  • API Testing Tools: Postman

Undergraduate Course Projects [2019-2023]

Project 1

This machine learning project focuses on detecting personalities from social media posts through the application of contextual feature embedding. Python programming is employed to implement this analytical methodology.

Project 2

This Android app, created with Android Studio, follows SDLC and STLC for structured development and rigorous testing. It utilizes a Realtime Database for data management.

Project 3

This is a Fitness First Gym website, using HTML, CSS, PHP, and Bootstrap 5, provides gym information, membership purchases, and BMI assessment online. It uses MySQL to securely store user details for package purchases, ensuring an organized user information system.

Project 4

This is an action-packed treasure hunting game where players battle monsters and gather treasures for an exciting gaming experience. Created in C++ using the iGraphics library, it runs on Visual Studio, delivering thrilling adventures for all.

Project 5

This Database Management System project is tailored for a supershop's comprehensive management, handling import, export, and stock tracking. It employs Java with JavaFx library on NetBeans, enabling precise monitoring of item inventory and calculating financial profit or loss for the supershop's operations.

Project 6

This Distributed Database project incorporates an Employee Management System using PL/SQL, featuring the implementation of procedures, functions, and triggers. It effectively manages employee data across distributed databases with enhanced functionalities.