Contact
Let's work together
Technical SkillMasterExpert

Advanced Algorithms & Complexity

Competency Description

Analyze and design efficient algorithms, understand computational complexity (Big O notation), and apply advanced data structures and algorithmic strategies to solve complex problems.

Personal Confidence
Expert5/5
FoundationalDevelopingProficientAdvancedExpert

This reflects my personal confidence in applying this competency in real-world professional situations, based on hands-on experience, continuous learning, and practical outcomes.

Progression across journey

This skill was developed across 2 different journey items

Related Courses in Master Program

Master program modules covering this competency

Block 1 - Client Relationship Management in Software Engineering
Effectively Initiating an IS Project
Understanding your ISData view
Block 1 - Client Relationship Management in Software Engineering
UX and Wireframing
Design thinking at the service of marketing strategyUser Experience and UX DesignInteraction designResponsive designDesign systems
Block 1 - Client Relationship Management in Software Engineering
Design Thinking
Discovery and history of Design ThinkingHistory and evolution of Design ThinkingThe 5 phases of Design Thinking (overview)Design Thinking in the business worldDesign Thinking phase 1: Empathize
Block 1 - Client Relationship Management in Software Engineering
Cross-Functional Management
Google, the art of data-driven cross-functional management
Block 2 - Software Engineering Project Management
Advanced Agile Methods / Scrum
Design Sprint
Block 2 - Software Engineering Project Management
Project Communication
Knowing yourself and understanding othersUsing efficient communication tools
Block 3 - Software Development
JavaScript: Introduction and Object-Oriented Programming
Conditional structuresIterative structures
Block 3 - Software Development
Developing Web Applications with TypeScript
Advanced types
Block 3 - Software Development
Front-End Development Fundamentals with Angular
Data binding and string interpolationTwo-way data bindingComponents and CSS: understanding view encapsulationUnderstanding dependency injectionUnderstanding observables
Block 3 - Software Development
Advanced Front-End Development with Angular
Passing data to a pageUnderstanding the async pipe
Block 3 - Software Development
Mastering Java SE
Annotations
Block 3 - Software Development
Developing in Java with Spring and Hibernate
First Jakarta Persistence annotationsJakarta Persistence annotations for relationships and inheritanceWriting the data access layer with Spring DataWriting the data insertion class and first core Spring conceptUsing HQL in the data access layer
Block 3 - Software Development
Advanced Git - GitHub and GitLab
Designating commit ranges
Block 3 - Software Development
Mastering Docker and DevOps
Advanced instructions in a DockerfileSharing data across multiple serversUnderstanding continuous integration and continuous deployment
Block 3 - Software Development
Application Deployment
Data migration
Block 3 - Software Development
Mastering the Kotlin Language
Data classesComplex objects (advanced chapter)GSON optimization (advanced chapter)Lambda syntax (advanced chapter)Let, also, apply, run
Block 3 - Software Development
Developing Android Mobile Applications in Kotlin
Understanding the activity lifecycleGSON optimization (advanced chapter)Retrofit (advanced chapter)LiveData and MVVMData binding
Block 3 - Software Development
Building a REST API with Spring Boot
Communicate with the databaseValidate your data with constraints
Block 4 - Advanced Software Architecture Design
Software Architecture
Introduction to data-centric architectureData-centric architecture use casesImplementing data-centric architecture in Java
Block 4 - Advanced Software Architecture Design
Complex Application Design with UML
Class diagram for database modeling
Block 4 - Advanced Software Architecture Design
Design Patterns in Java
Introduction: GoF Design Patterns, the legendDescription of Creational Design PatternsDescription of the Singleton Design PatternDescription of the Factory Method Design PatternDescription of the Abstract Factory Design Pattern
Block 4 - Advanced Software Architecture Design
Web Application Security
Recommendation A04-2021: Insecure DesignRecommendation A08-2021: Software and Data Integrity FailuresUsing database users for authentication
Block 4 - Advanced Software Architecture Design
Advanced Algorithms
Searching, a complex task?Sorting complexityComparing sorting algorithmsApproximation algorithmsGreedy algorithms
Block 4 - Advanced Software Architecture Design
Functional Programming in Scala
Immutable data
Block 4 - Advanced Software Architecture Design
Distributed Architecture and Big Data
Introduction to Big DataBusiness implications of Big Data and distributed architectureDatabase management systemsDataFlow EnginesSpark SQL, DataFrames and Datasets
Block 4 - Advanced Software Architecture Design
NoSQL
Neo4j, complex graph: demonstration
Block 4 - Advanced Software Architecture Design
Data Structures
The right data structureGraph data structureUsing the right data structure
Block 4 - Advanced Software Architecture Design
Application Test Plans
Advanced unit tests on the backendIntegration tests and test data sets
Block 4 - Advanced Software Architecture Design
Introduction to Machine Learning
Understand supervised learningExplore the dataUnderstand the 2nd model: linear regressionPrepare data - Part 1Prepare data - Part 2
Block 5 - English Language Proficiency Preparation
Business English
Understanding requests and instructionsUnderstanding questions and rephrasingIdentifying and defining problemsUnderstanding a business proposalExpressing differences of opinion and informing colleagues of problems
Block 5 - English Language Proficiency Preparation
Advanced Business English
Advanced Negotiation Skills and Harvard-Style NegotiationHandling Complex Sales Cycles and Objections
Block 5 - English Language Proficiency Preparation
Intermediate Business English
Managing Misunderstandings and Expressing Disagreement in English ConversationsUnderstanding Commercial Terminology in EnglishManaging Misunderstandings in EnglishActive Listening - Techniques and Tools for Empathy and Understanding Prospects
Block 6 - Preparatory and Reinforcement Modules
Human Resources English
Understanding and using professional communication codes (hierarchy, distance, formal-informal)Understanding international resumes and cultural trendsUnderstanding cultural influence on onboarding report contentRecognizing cross-cultural misunderstandings or tensionsManaging cross-cultural misunderstandings or tensions
Source Program

This competency was developed as part of the Master in Software Engineering program (ESIEA).