Today’s automotive software designs are increasingly targeting high capacity ECUs that incorporate extremely powerful embedded microcontrollers, and this trend continues to enable technologies for autonomous drive. To support the ongoing shift to 'software-defined vehicles', modern MCUs have been developed with multiple cores, enabling parallel execution of vital software functions. This change in hardware design has a significant impact on the software architecture. This session covers software design challenges for multicore devices, focusing on both application and communication bus interaction, and explores best practices to improve performance.