Skip to content

developersCradle/data-structures-algorithms-and-java-multithreading-concurrency-performance-optimization

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

44 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Attempt to study Data Structures, Optimization and Algorithms related topics!

optimization

  • For these courses one should configure GIT for handle projects.
    • git config --global http.postBuffer 524288000
    • git config --global core.longpaths true.

course intros

All course material from Java Multithreading, Concurrency & Performance Optimization by Michael Pogrebinsky and Top Developer Academy LLC.

We were working with an old legacy system that was making two concurrent calls to a shared resource, causing inconsistent results that only appeared under load. The issue was subtle and difficult to reproduce, making it even harder to diagnose.

A recent course I had taken on Java Multithreading and Concurrency proved invaluable. It helped me identify the race condition and apply the synchronized keyword correctly to control access to the critical section. With proper thread coordination in place, the system stabilized without requiring a major rewrite of the legacy code.

~ DevelopersCradle

Contains my own notes with some course material to enforce learning experience.

This repository is made with IntelliJ IDEA with Eclipse hotkeys, therefore it will include configuration files which are related to this IDE this approach will be favored for now. βš™οΈ

The course at Udemy.

Website of maker.

If the content sparked πŸ”₯ your interest, please consider buying the course and start learning πŸ“–.

Insert certificate here when completed

Note: The material provided in this repository is only for helping those who may get stuck at any point of time in the course. It is very advised that no one should just copy the solutions(violation of Honor Code) presented here.

Progress/Curriculum.

course intros

course intros

All course material from Java Multithreading, Concurrency & Performance Optimization by Michael Pogrebinsky and Top Developer Academy LLC.

Story about vicotry!.

~ DevelopersCradle

Contains my own notes with some course material to enforce learning experience.

This repository is made with Eclipse, therefore it will include configuration files which are related to this IDE this approach will be favored for now. βš™οΈ

The course at Udemy.

Website of maker.

If the content sparked πŸ”₯ your interest, please consider buying the course and start learning πŸ“–.

Insert certificate here when completed

Note: The material provided in this repository is only for helping those who may get stuck at any point of time in the course. It is very advised that no one should just copy the solutions(violation of Honor Code) presented here.

Progress/Curriculum.

  • Section 01 - Getting Started With the Course.
  • Section 02 - Course Slides.
  • Section 03 - Getting Started with Parallel and Asynchronous Programming.
  • Section 04 - Course Project Setup.
  • Section 05 - Threads, Future, ForkJoin and its Limitations.
  • Section 06 - Getting Started with Parallel Streams.
  • Section 07 - Build Retail Checkout Application using Parallel Streams.
  • Section 08 - Parallel Streams - Under the Hood.
  • Section 09 - Parallel Streams - Threading Model & Common ForkJoin Pool.
  • Section 10 - Parallel Streams - Summary.
  • Section 11 - CompletableFuture.
  • Section 12 - Exploring CompletableFuture Functions.
  • Section 13 - Build ProductService Application using CompletableFuture.
  • Section 14 - Combining Streams and CompletableFuture.
  • Section 15 - Exception Handling/Recovery in CompletableFuture.
  • Section 16 - Implement Exception Handling/Recovery in ProductService.
  • Section 17 - CompletableFuture & Threadpool.
  • Section 18 - Threads and Async Overloaded Methods in CompletableFuture.
  • Section 19 - Build Restful API Client using Spring WebClient and CompletableFuture.
  • Section 20 - Handle Multiple CompletableFutures - anyOf(), allOf().

Java Application Performance Tuning and Memory Management

Java Application Performance Tuning and Memory Management description here

All course material from Java Application Performance Tuning and Memory Management by from Matt Greencroft and Virtual Pair Programmers with my own visual notes. ✍️

I interviewed with Polar for an Advanced Java role, and the technical discussion immediately dove into multithreading, concurrency, and performance optimization. They asked about thread pools, synchronization strategies, deadlocks, optimizing CPU-bound versus IO-bound operations, and even Virtual Threads in Java. The questions were challenging and required more than just textbook knowledge β€” they wanted practical understanding of real-world thread behavior.

Thanks to a recent course on Java Multithreading, Concurrency & Performance Optimization, I could confidently discuss thread-safe collections, locks, executor frameworks, and the advantages of Virtual Threads for scalable, lightweight concurrency. Even though I was not chosen for the position, the interview drove me to deeply pursue these concepts, strengthening my skills and confidence for future challenges.

~ DevelopersCradle

This repository is made with Eclipse, therefore it will include configuration files which are related to this IDE this approach will be favored for now. βš™οΈ

Udemy.

Homepage of maker.

If the content sparked πŸ”₯ your interest, please consider starting the course and start learning πŸ“–.

Insert certificate here when completed

Note: The material provided in this repository is only for helping those who may get stuck at any point of time in the course. It is very advised that no one should just copy the solutions(violation of Honor Code) presented here.

Progress/Curriculum.

Additional stuff.

  • Check the content from other student Link. βœ…

Free data Structures and Algorithm

All course material from Data Structures and Algorithms with Visualizations with Java by from Dinesh Varyani.

Add here some

~ DevelopersCradle

This repository is made with Eclipse, therefore it will include configuration files which are related to this IDE this approach will be favored for now. βš™οΈ

Main: YouTube Source.

Optional: freeCodeCamp.

Optional: YouTube Source.

Source Codes.

If the content sparked πŸ”₯ your interest, please consider starting the course and start learning πŸ“–.

Insert certificate here when completed

Note: The material provided in this repository is only for helping those who may get stuck at any point of time in the course. It is very advised that no one should just copy the solutions(violation of Honor Code) presented here.

Progress/Curriculum.

Additional stuff.

  • Add first captions for all the chapters, like #someThing, so can be linked.

Free data Structures and Algorithm

todo this desc.

Contains my own notes with some course material to enforce learning experience.

This repository is made with Eclipse, therefore it will include configuration files which are related to this IDE this approach will be favored for now. βš™οΈ

freeCodeCamp.

GitHub repo.

If the content sparked πŸ”₯ your interest, please consider buying the course and start learning πŸ“–.

Insert certificate here when completed

Note: The material provided in this repository is only for helping those who may get stuck at any point of time in the course. It is very advised that no one should just copy the solutions(violation of Honor Code) presented here.

Progress/Curriculum.

All course material from Data Structures and Algorithms: Deep Dive Using Java by Goran Lochert, Tim Buchalka and Tim Buchalka's Learn Programming Academy.

I once interviewed with Vaisala for the Observation Network Manager NM10 role, where the technical discussion went deep into data structures and their operations. The interview challenged my understanding of trees, graphs, and time–space trade-offs in ways I hadn’t fully experienced before. Project.

Although I wasn’t selected for the position, the experience became a turning point. It drove me to truly internalize the concepts through a deep dive into Data Structures and Algorithms using Java, strengthening both my problem-solving approach and technical confidence for future challenges.

~ DevelopersCradle

Contains my own notes with some course material to enforce learning experience.

This repository is made with IntelliJ IDEA with Eclipse hotkeys. This is why it will include configuration files which are related to this IDE this approach will be favored for now. βš™οΈ

The course at Udemy.

Website of maker 1.

Website of maker 2.

Website of maker 3.

If the content sparked πŸ”₯ your interest, please consider buying the course and start learning πŸ“–.

Insert certificate here when completed

Note: The material provided in this repository is only for helping those who may get stuck at any point of time in the course. It is very advised that no one should just copy the solutions(violation of Honor Code) presented here.

Progress/Curriculum.

  • Section 01 - Introduction. βœ…
  • Section 02 - Arrays and Big-O Notation.
  • Section 03 - Sort Algorithms Deep Dive.
  • Section 04 - Mastering Lists in Java: Implementations and Applications.
  • Section 05 - Stack Data Structures: Implementation and Use Cases.
  • Section 06 - Mastering Queue Data Structures: Implementation and Applications in Java.
  • Section 07 - Hash Tables: Mastering Key-Value Data Structures for Efficient Data Retrieval.
  • Section 08 - Optimized Search Algorithms in Java: Linear and Binary Search.
  • Section 09 - Mastering Tree Data Structures: Implementation and Optimization in Java.
  • Section 10 - Mastering Heaps: Priority Queues and Heapsort Algorithm in Java.
  • Section 11 - Final Section: Concluding the Course with Key Takeaways and Sets.
  • Section 12 - Extra Information - Source code, and other stuff.

About

Data Structures, Algorithms and Java Multithreading, Concurrency & Performance Optimization

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages