Software Defined Networking - SDN (Princeton University - Coursera)
Control and data plane separation, Network Virtualization, Mininet, Python API, Routing Control Platform, 4D Network Architecture, SDN Controllers, OpenFlow, ODL, Ryu, Slicing Network Control, Multi-Tenant Datacenters, Network Functions Virtualization, Docker and Containerization, Programming Data Planes, RouteBriks, RMT, P4, NetASM, Northbound APIs, Frenetic, Pyretic, Kinetic, Data Centers, Internet Exchange Points, Wide-Area Backbone Networks, Home Networks, Configuration/Data/Control Plane Verification, programming SDN controllers in Python.
Mining Massive Datasets (Stanford Online - Coursera)
MapReduce, Web-link analysis, Data-streams, Locality-sensitive hashing, Computational advertising, Clustering, Recommender systems, Analysis of large graphs, Decision trees, Dimensionality reduction, Support-vector machines, and Frequent-itemset analysis.
Machine Learning (Stanford Online - Coursera)
Supervised learning: parametric/non-parametric algorithms, support vector machines, kernels, neural networks. Unsupervised learning: clustering, dimensionality reduction, recommender systems, deep learning. Best practices in machine learning: bias/variance theory; innovation process in machine learning and AI.
Cryptography I (Stanford Online - Coursera)
the theory and practice of cryptographic systems. Topics included symmetric encryption, data integrity, public-key encryption, and key exchange.
Automata (prof. Ullman) (Stanford Online - Coursera)
finite automata, regular expressions, context-free grammars, the theory of NP-completeness and intractability.
Algorithms, Part I (prof. Sedgewick) (Princeton University - Coursera)
fundamental data types, algorithms, and data structures, Java implementations. Union-find algorithms; basic iterable data types (stack, queues, and bags); sorting algorithms (quicksort, mergesort, heapsort) and applications; priority queues; binary search trees; red-black trees; hash tables; and symbol-table applications.
Algorithms, Part II (prof. Sedgewick) (Princeton University - Coursera)
graph-processing algorithms, including minimum spanning tree and shortest paths algorithms, and string processing algorithms, including string sorts, tries, substring search, regular expressions, and data compression.
Algorithms: Design and Analysis, Part I (Stanford Online - Coursera)
asymptotic analysis, divide and conquer algorithms, sorting and searching, basic randomized algorithms, graph search, shortest paths, heaps, search trees, and hash tables.
Algorithms: Design and Analysis, Part II (Stanford Online - Coursera)
greedy algorithms, including applications to minimum spanning trees and Huffman codes; dynamic programming, including applications to sequence alignment and shortest-path problems; and exact and approximation algorithms for NP-complete problems.
Digital Signal Processing (École Polytech. Fédérale de Lausanne - Coursera)
digital signal processing theory, covering discrete time, Fourier analysis, filter design, sampling, interpolation and quantization; it also includes a primer on image processing and on current data communication systems.
Software Security (part) (Univ. Maryland - Coursera)’
Low-level, memory-based attacks, including stack smashing, format string attacks, stale memory access attacks, and return-oriented Programming (ROP)
Defenses against memory-based attacks, including stack canaries, non-executable data (aka W+X or DEP), address space layout randomization (ASLR), memory-safety enforcement (e.g., SoftBound), control-flow Integrity (CFI). Web security, covering attacks like SQL injection, Cross-site scripting (XSS), Cross-site request forgery (CSRF), and Session hijacking, and defenses that have in common the idea of input validation
Compilers (Stanford Online)
lexical analysis, parsing, syntax-directed translation, abstract syntax trees, types and type checking, intermediate languages, dataflow analysis, program optimization, code generation, and runtime systems.
Discrete Optimization (part) (University of Melbourne - Coursera)
complex search problems with discrete optimization concepts and algorithms, including constraint programming, local search, and mixed-integer programming.
MongoDB for Python Developers - M101P (part) (MongoDB University)
installation of MongoDB, JSON, schema design, querying, insertion of data, indexing and working with language drivers. Building a blogging platform with MongoDB.