If the problem seems to be broad and not limited to individual functions or loops, then this might be the place to look. These optimization concepts will be related to the overall structure of your application or a subset of your application. There will be a strong emphasis on communication and messaging techniques here as large systemic problems usually are techniques related to how different parts of the system communicate.