# Academic Knowledge and Technical Background

I hold a **Master’s degree in Data Science and Intelligent Systems from FST Fez, Morocco**. During this academic program, I developed multidisciplinary knowledge in data analysis, artificial intelligence, NoSQL databases, distributed systems, Business Intelligence, machine learning, deep learning, computer vision, cloud computing, enterprise network services, multimedia mining, cybersecurity, and software engineering.

The following sections summarize the principal knowledge and techniques I studied. They describe my **academic background** and do not imply professional mastery of every technology listed.

## Data Analysis

I studied the principal methods used to prepare, explore, summarize, and interpret data:

- Data collection and the transformation of raw data into useful information.
- Structured, semi-structured, and unstructured data.
- Data quality, missing values, noise, outliers, and inconsistent observations.
- Data cleaning, transformation, integration, reduction, and normalization.
- Descriptive statistics: mean, median, mode, variance, standard deviation, quartiles, and range.
- Univariate, bivariate, and multivariate analysis.
- Covariance, correlation, contingency tables, and chi-square analysis.
- Statistical visualization using histograms, box plots, scatter plots, correlation matrices, and time-series charts.
- Sampling, populations, parameters, estimators, and confidence intervals.
- Hypothesis testing, p-values, Type I and Type II errors, and statistical power.
- Student’s and Welch’s t-tests, Wilcoxon tests, chi-square tests, and ANOVA.
- Experimental and observational studies.
- Time-series smoothing using moving and weighted moving averages.
- Communicating analytical results through charts, reports, and decision-oriented interpretations.

## Artificial Intelligence and Expert Systems

I studied the foundations of symbolic Artificial Intelligence, knowledge representation, and automated reasoning:

- General AI concepts and intelligent problem-solving systems.
- Knowledge representation and knowledge-based systems.
- Propositional logic, truth tables, logical equivalence, and implication.
- Normal forms, clauses, resolution, and proof by refutation.
- Predicate logic, predicates, variables, functions, and quantifiers.
- Substitution, unification, Skolemization, and generalized resolution.
- Forward and backward chaining.
- Rule-based reasoning and inference engines.
- Expert-system architecture and knowledge bases.
- Zero-order and first-order expert systems.
- Facts, rules, and queries in Prolog.
- Depth-first search and backtracking.
- Explanation of conclusions and detection of contradictions.

## NoSQL Databases

I studied database technologies designed for high-volume, distributed, heterogeneous, and semi-structured data:

- Big Data requirements and the limitations of exclusively relational approaches.
- Horizontal scalability, distribution, replication, availability, and fault tolerance.
- Key-value, document, wide-column, and graph database models.
- Choosing a database model according to data structure, query patterns, consistency, and scale.
- Redis data structures, commands, transactions, replication, persistence, and publish/subscribe.
- MongoDB documents, collections, CRUD operations, queries, indexes, arrays, and nested objects.
- MongoDB aggregation pipelines using matching, projection, grouping, sorting, unwinding, and lookup operations.
- Cassandra architecture, keyspaces, column families, replication, and CQL.
- HBase architecture, HDFS-based storage, row keys, column families, regions, and region servers.
- Neo4j nodes, labels, properties, relationships, paths, and graph traversal.
- Cypher queries, indexes, constraints, and query analysis with `EXPLAIN` and `PROFILE`.
- ACID properties and CAP-theorem trade-offs.

## Operations Research

I studied mathematical modelling and optimization techniques for allocating limited resources:

- Translating operational problems into mathematical models.
- Decision variables, constraints, and objective functions.
- Minimizing costs and maximizing efficiency, satisfaction, or revenue.
- Linear-programming formulations.
- Assignment and resource-allocation problems.
- Simple and multiple assignments.
- Bipartite-graph representations.
- Primal and dual formulations.
- Maximum matching and minimum support concepts.
- Maximum-flow and minimum-cost-flow formulations.
- Ford–Fulkerson algorithm.
- Hungarian method for cost-based assignment problems.
- Interpretation of optimization results for planning and decision support.

## Software Architecture and Java Enterprise Applications

I studied the architecture of distributed enterprise applications using Java/Jakarta EE:

- N-tier and component-based software architectures.
- Separation of presentation, business, and data-access layers.
- Distributed application principles.
- Java/Jakarta EE specifications and application portability.
- Servlets, JSP, JSF, JavaBeans, and EJB components.
- JDBC, JPA, JNDI, JTA/JTS, JCA, JMX, JMS, RMI-IIOP, JavaMail, and JAAS concepts.
- Web, EJB, and client containers.
- Application servers, including Tomcat.
- Packaging and deployment using JAR, WAR, RAR, and EAR archives.
- Deployment descriptors such as `web.xml` and `application.xml`.
- Servlet lifecycle and HTTP request/response processing.
- GET and POST methods, form parameters, forwarding, and redirection.
- Cookies and session management with `HttpSession`.
- JSP pages and separation of presentation from application logic.

## Hadoop Ecosystem

I learned the foundations of Big Data and distributed data processing, including:

- Big Data concepts: volume, variety, velocity, veracity, and value.
- Distributed storage and horizontal scalability.
- Hadoop architecture and ecosystem components.
- HDFS architecture, data blocks, replication, and fault tolerance.
- NameNode, DataNode, and SecondaryNameNode responsibilities.
- High Availability and HDFS Federation.
- Resource management with YARN.
- Distributed processing with MapReduce.
- Map, shuffle, sort, and reduce operations.
- Apache Spark architecture and distributed processing.
- RDDs, partitions, transformations, actions, lazy evaluation, and lineage.
- General familiarity with Hive, Pig, HBase, Sqoop, Flume, Oozie, Ambari, and ZooKeeper.

## Machine Learning

I studied the principal concepts and algorithms used to learn patterns from data:

- Supervised, unsupervised, and semi-supervised learning.
- Classification, regression, clustering, and dimensionality reduction.
- Data preparation, feature representation, training, and validation.
- Overfitting, underfitting, model complexity, and generalization.
- Support Vector Machines and kernel methods.
- K-Nearest Neighbours.
- Decision Trees and Random Forests.
- K-Means clustering.
- DBSCAN and density-based clustering.
- Hierarchical clustering.
- Gaussian Mixture Models and Expectation–Maximization.
- Markov Chains and Hidden Markov Models.
- Forward–Backward, Viterbi, and Baum–Welch algorithms.
- Confusion matrices, precision, recall, specificity, and F1-score.
- Cross-validation, bootstrap evaluation, ROC curves, and precision–recall curves.
- Selection of evaluation metrics according to class imbalance and business costs.

## Business Intelligence

I learned how operational data is transformed into information for reporting and decision-making:

- Business Intelligence architecture and decision-support systems.
- Data warehouses and data marts.
- ETL and ELT processes.
- Data cleaning, integration, transformation, and loading.
- Dimensional modelling.
- Fact tables, dimension tables, measures, hierarchies, and grain.
- Star, snowflake, and constellation schemas.
- Surrogate keys and slowly changing dimensions.
- OLAP concepts and multidimensional analysis.
- ROLAP, MOLAP, and HOLAP architectures.
- Drill-down, roll-up, slicing, dicing, and pivoting.
- Analytical SQL, window functions, `ROLLUP`, `CUBE`, and `GROUPING SETS`.
- MDX fundamentals for querying multidimensional cubes.
- Dashboards, reporting, visualization, and metadata management.
- Association-rule mining using support, confidence, and lift.
- Apriori and general familiarity with FP-Growth and Eclat.
- Academic exposure to platforms such as Pentaho, Mondrian, SSAS, Power BI, and related BI tools.

## Computer Vision

I studied the fundamental techniques used to process and analyze digital images:

- Image acquisition, sampling, quantization, and resolution.
- Binary, grayscale, and colour-image representation.
- RGB, HSV, YUV, LAB, and other colour spaces.
- Image histograms and contrast enhancement.
- Histogram equalization.
- Image noise and degradation models.
- Spatial filtering and convolution.
- Mean, Gaussian, median, low-pass, and high-pass filters.
- Fourier transforms and frequency-domain filtering.
- Mathematical morphology: erosion, dilation, opening, and closing.
- Edge detection using Roberts, Prewitt, Sobel, and Laplacian operators.
- Image thresholding and Otsu’s method.
- Region growing, splitting, merging, and connected components.
- Image segmentation using K-Means and watershed concepts.
- Detection of lines and shapes using the Hough transform.
- Guided image-processing work using MATLAB.

## Cryptography and Network Security

I learned the main principles used to protect information systems, networks, and sensitive data:

- Confidentiality, integrity, availability, authentication, and non-repudiation.
- Security risks, threats, vulnerabilities, and defence in depth.
- Identity management, authentication, and access control.
- Least privilege, user permissions, and Access Control Lists.
- Password protection, hashing concepts, and salts.
- Backup, replication, recovery, and service availability.
- Symmetric and asymmetric cryptography.
- Classical substitution and transposition ciphers.
- Stream and block ciphers.
- DES, 3DES, AES, and cipher operating modes.
- Firewalls, intrusion detection, network segmentation, and VLANs.
- Network reconnaissance, port scanning, packet capture, and common network attacks.
- General familiarity with Nmap, Wireshark, `tcpdump`, traceroute, and ping.
- Security considerations for sensitive business and financial information.

## Software Engineering

I studied the principles required to design and maintain reliable software systems:

- Software requirements and functional specifications.
- Software architecture and design.
- Decomposition, modularity, abstraction, and interfaces.
- Code quality, reuse, maintainability, and anticipation of change.
- Software-development lifecycles.
- Development, testing, delivery, and maintenance phases.
- UML and software modelling.
- Unified Process and iterative development.
- Agile methodologies, including Scrum and Extreme Programming.
- Introduction to formal methods and the B-Method.
- Software testing, documentation, and quality control.
- Project planning, cost estimation, milestones, and deadlines.

## Cloud Computing and Virtualization

I studied cloud architectures, virtualization technologies, service delivery, security, resilience, governance, and migration:

- Cloud principles: on-demand access, resource pooling, elasticity, and rapid provisioning.
- SaaS, PaaS, and IaaS service models.
- Public, private, hybrid, and sovereign cloud deployments.
- Subscription, pay-as-you-go, self-service, and outsourced operating models.
- Physical-resource abstraction through hypervisors and virtual machines.
- Type 1 and Type 2 hypervisors.
- Full, paravirtualized, and hardware-assisted virtualization.
- CPU, memory, storage, and network virtualization.
- Virtual-machine provisioning, cloning, snapshots, migration, and monitoring.
- Resource isolation, consolidation, scheduling, and load balancing.
- Virtual networking, virtual switches, shared storage, and disk images.
- Containers and their architectural differences from virtual machines.
- Multi-tenant architectures and tenant isolation.
- N-tier, service-oriented, microservice, and API-based cloud architectures.
- High availability, fault tolerance, backup, replication, and disaster recovery.
- Identity federation, Single Sign-On, multifactor authentication, and Zero Trust.
- Encryption, VPNs, secure transport, logging, and security monitoring.
- Cloud risk, privacy, data sovereignty, portability, and vendor lock-in.
- Application classification and phased SaaS, PaaS, or IaaS migration.
- Academic familiarity with VMware, KVM, Xen, Hyper-V, Docker, and OpenStack.

## Deep Learning

I studied neural-network architectures and training methods for images, sequences, and data generation:

- The relationship between Artificial Intelligence, Machine Learning, and Deep Learning.
- Artificial neurons, weights, biases, and activation functions.
- Feedforward, fully connected, and recurrent neural networks.
- Multilayer perceptrons for modelling nonlinear relationships.
- Gradient descent and backpropagation.
- Learning rates, parameter initialization, normalization, momentum, and convergence.
- Competitive learning and self-organizing maps.
- Convolutional Neural Networks for automatic feature extraction.
- Convolution, activation, pooling, and classification layers.
- Image classification, object detection, and image segmentation.
- Deep CNN architectures and residual connections.
- Real-time object detection with YOLO.
- Bounding boxes, object classes, confidence scores, and non-maximum suppression.
- Trade-offs between detection speed, localization accuracy, and small-object detection.
- Recurrent Neural Networks for sequential and temporal data.
- LSTM, GRU, and bidirectional recurrent architectures.
- Encoder–decoder architectures and sequence mappings.
- Generative and discriminative models.
- Latent-space representations.
- Generative Adversarial Networks and adversarial training.
- Convolutional and conditional GAN variants.
- GAN training difficulties, including instability and mode collapse.
- Image synthesis, translation, restoration, and super-resolution.
- Academic implementation using TensorFlow, Keras, and GPU acceleration.

## Enterprise Network Services

I studied the design, configuration, integration, and troubleshooting of core Linux-based enterprise network services:

- Enterprise networks using internal LANs, DMZs, firewalls, and Internet gateways.
- IPv4 routing and communication between network segments.
- DNS namespaces, domains, zones, delegation, and authoritative data.
- Recursive and iterative DNS resolution.
- Primary, secondary, caching, and forwarding DNS servers.
- Forward and reverse DNS resolution.
- DNS records, caching, replication, and zone transfers.
- BIND installation, configuration, access control, and troubleshooting.
- DHCP address allocation, reservations, scopes, leases, and network options.
- DHCP lease acquisition, renewal, rebinding, release, and expiration.
- DHCP redundancy, conflict prevention, and relay across routed networks.
- Dynamic integration between DHCP and DNS.
- Static NAT, dynamic NAT, port translation, and masquerading.
- Linux firewall NAT chains and gateway configuration.
- Network-traffic capture and protocol diagnosis.
- HTTP client–server communication and persistent connections.
- Apache configuration, interfaces, modules, and virtual hosting.
- Static and dynamic web-content publication.
- Web access control, authentication, and directory configuration.
- Email architecture, addressing, routing, delivery, and mailbox storage.
- SMTP, MIME, POP3, and IMAP principles.
- Postfix configuration and integration with filtering, mailbox, and webmail services.

## Multimedia Mining

I studied techniques for extracting, representing, analysing, and retrieving knowledge from text, image, audio, and video data:

- Multimedia mining architectures and knowledge-discovery workflows.
- Structured, semi-structured, and unstructured multimedia data.
- Data collection, cleaning, normalization, transformation, and evaluation.
- Feature extraction and structured representations of raw media.
- Classification, clustering, regression, association mining, and statistical modelling.
- Content-based and description-based multimedia retrieval.
- Indexing, similarity search, ranking, and multidimensional analysis.
- Image acquisition, calibration, preprocessing, and enhancement.
- Intensity adjustment and histogram-based enhancement.
- Geometric transformations and interpolation.
- Spatial filtering, smoothing, sharpening, and edge detection.
- Frequency-domain processing, restoration, and compression.
- Image segmentation using thresholds, boundaries, regions, and textures.
- Detection and description of visual features and regions of interest.
- Object recognition through feature matching and hypothesis verification.
- Deep visual-feature extraction using Convolutional Neural Networks.
- Video indexing, temporal segmentation, classification, and event detection.
- Text preprocessing, linguistic annotation, and natural-language parsing.
- Document classification, clustering, topic modelling, sentiment analysis, and summarization.
- Sparse, weighted, and semantic vector representations of text.
- Text and multimedia similarity measurement.
- Academic image-processing work with OpenCV.
- Academic Natural Language Processing workflows using Python and NLTK.

# Self-Directed Learning and Online Courses

In addition to my academic curriculum, I continued developing practical knowledge through self-directed Udemy courses. The following summarizes the principal knowledge and techniques covered by each course.

## AWS Certified Cloud Practitioner

Course: [Ultimate AWS Certified Cloud Practitioner CLF-C02](https://www.udemy.com/course/aws-certified-cloud-practitioner-new/)

- Cloud computing, scalability, elasticity, and pay-as-you-go pricing.
- IaaS, PaaS, and SaaS service models.
- AWS Regions, Availability Zones, edge locations, and global infrastructure.
- Identity and access management with AWS IAM.
- Core AWS services, including EC2, ELB, Auto Scaling, RDS, ElastiCache, and S3.
- AWS security and the shared-responsibility model.
- Cloud architecture, reliability, billing, pricing, and cost-management fundamentals.
- Navigating the AWS Management Console and selecting services and Regions.

## Ansible for the Absolute Beginner

Course: [Ansible for the Absolute Beginner — Hands-On — DevOps](https://www.udemy.com/course/learn-ansible/)

- Infrastructure automation and configuration management with Ansible.
- YAML syntax and Ansible configuration files.
- Static inventories, host groups, and parent–child group structures.
- Variables, lists, dictionaries, registered values, precedence, and scope.
- Ansible facts and system-information collection.
- Playbooks, plays, tasks, and built-in modules.
- Automated provisioning and web-server deployment.
- Hands-on automation through browser-based labs.

## Dive Into Ansible

Course: [Dive Into Ansible — Beginner to Expert in Ansible — DevOps](https://www.udemy.com/course/diveintoansible/)

- Building an Ansible lab with Docker, Docker Compose, and passwordless SSH.
- Static, dynamic, and cloud-integrated inventories.
- Advanced variables, `hostvars`, `group_vars`, prompts, and external variable files.
- Reusable automation using includes, roles, and tags.
- Configuration generation with Jinja2 templates.
- Sensitive-data protection with Ansible Vault.
- Conditionals, loops, parallel execution, and task delegation.
- Custom Ansible modules and plugins.
- Automation of AWS and Docker environments.
- Testing, troubleshooting, and Ansible best practices.

## Machine Learning A–Z

Course: [Machine Learning A-Z: ML, DL and AI with AWS, Python and R](https://www.udemy.com/course/machinelearning/)

- Data preprocessing, feature scaling, and training/test preparation.
- Regression and classification workflows using Python and R.
- Unsupervised learning with K-Means and hierarchical clustering.
- Association-rule learning and market-basket analysis.
- Reinforcement-learning concepts using Upper Confidence Bound and Thompson Sampling.
- Artificial Neural Networks and Convolutional Neural Networks.
- Ensemble models and gradient boosting using XGBoost, LightGBM, and CatBoost.
- Dimensionality reduction using PCA, LDA, and QDA.
- Model development, deployment, monitoring, and CI/CD concepts on AWS.
- Responsible Machine Learning considerations.

## GitHub Actions

Course: [GitHub Actions — The Complete Guide](https://www.udemy.com/course/github-actions-the-complete-guide/)

- Creating GitHub Actions workflows.
- Automating build, test, publishing, delivery, and deployment processes.
- Configuring event-based and manual workflow triggers.
- Jobs, steps, runners, runtime configuration, and conditional execution.
- Secure handling of secrets and sensitive workflow configuration.
- Using public actions and developing reusable custom actions.
- Integrating Git and GitHub repositories with CI/CD automation.
- Git fundamentals, branches, commits, history, reverting, and safe change management.

## Kubernetes for the Absolute Beginners

Course: [Kubernetes for the Absolute Beginners — Hands-On](https://www.udemy.com/course/learn-kubernetes/)

- Containers, Docker images, orchestration, and Kubernetes fundamentals.
- Control-plane and worker-node architecture.
- API server, etcd, scheduler, and container-runtime concepts.
- Cluster interaction and resource management with `kubectl`.
- Local clusters using Minikube, Docker Desktop, and kubeadm.
- Pods, ReplicaSets, Deployments, and Services.
- Kubernetes resource definitions using YAML.
- Application deployment, exposure, scaling, and testing.

## Certified Kubernetes Application Developer

Course: [Kubernetes Certified Application Developer — CKAD](https://www.udemy.com/course/certified-kubernetes-application-developer/)

- Creating and managing Pods and multi-container application patterns.
- Declarative Kubernetes resources using YAML manifests.
- Deployments, scaling, upgrades, and rollbacks.
- Application configuration with ConfigMaps and Secrets.
- Readiness and liveness probes.
- Jobs and scheduled application workloads.
- Persistent Volumes and application storage.
- Network Policies and application-traffic security.
- Logs, diagnostics, and application troubleshooting.
- Command-line and scenario-based Kubernetes workflows.

## Docker Mastery

Course: [Docker Mastery with Kubernetes and Swarm](https://www.udemy.com/course/docker-mastery/)

- Installing and configuring Docker on Windows, macOS, and Linux.
- Running and managing containers with Docker commands.
- Writing Dockerfiles and building custom container images.
- Publishing images and working with container registries.
- Creating multi-container applications with Docker Compose.
- Building containerized local-development environments.
- Container orchestration with Docker Swarm and Kubernetes.
- Applying container workflows across development and operations.
- Automating image builds with GitHub Actions.
- Adding vulnerability scanning to container-image pipelines.

## Microsoft Power BI Desktop

Course: [Microsoft Power BI Desktop for Business Intelligence](https://www.udemy.com/course/microsoft-power-bi-up-running-with-power-bi-desktop/)

- Connecting Power BI to different data sources.
- Cleaning and transforming data with Power Query.
- Merging, appending, and consolidating datasets.
- Building fact-and-dimension models using star schemas.
- Defining relationships, cardinality, and filter flow.
- Creating calculated columns and measures with DAX.
- Using `CALCULATE`, variables, iterators, and time-intelligence functions.
- Creating charts, tables, matrices, maps, slicers, and KPI cards.
- Configuring drill-down, drill-through, tooltips, bookmarks, and interactions.
- Designing consistent, interactive, and mobile-friendly reports.

## Advanced DAX for Power BI

Course: [Microsoft Power BI Desktop — Advanced DAX for Data Analysis](https://www.udemy.com/course/advanced-dax-for-power-bi/)

- Advanced data modelling with fact tables, dimensions, keys, and star schemas.
- Row context, filter context, and context transition.
- Advanced measures using `CALCULATE` and filtering techniques.
- Time-intelligence calculations.
- Understanding relationship direction and filter propagation.
- DAX formula engine, storage engine, query plans, and data cache.
- VertiPaq storage, compression, encoding, and data types.
- Analysis of sales, inventory, budgets, repeat customers, and store performance.
- Formatting, diagnosing, and optimizing DAX with DAX Formatter, DAX Guide, and DAX Studio.

## Overall Academic Profile

My academic curriculum gave me a broad understanding of the complete data lifecycle:

- Preparing, analysing, and interpreting data.
- Building and evaluating statistical and machine-learning models.
- Organizing data for reporting and Business Intelligence.
- Understanding distributed storage and large-scale processing.
- Working with structured and unstructured data concepts.
- Considering security, privacy, availability, and access control.
- Applying software-engineering principles to analytical solutions.

This multidisciplinary foundation complements my professional role as a **Data Analyst in the finance domain working with Stellantis as an ALTEN consultant**. It helps me understand both the business use of data and the technical systems involved in collecting, storing, processing, securing, and communicating it.

---

Related: [[Me]] · [[Personal Index]]
