In the dynamic field of software engineering (SE), where practice is constantly evolving and adapting to new technologies, conducting research is a daunting quest. This poses a challenge for researchers: how to stay relevant and effective in their studies? Empirical software engineering (ESE) has emerged as a contending force aiming to critically evaluate and provide knowledge that informs practice in adopting new technologies. Empirical research requires a rigorous process of collecting and analyzing data to obtain evidence-based findings. Challenges to this process are numerous, and many researchers, novice and experienced, found difficulties due to many complexities involved in designing their research. The core of this chapter is to teach foundational skills in research design, essential for educating software engineers and researchers in ESE. It focuses on developing a well-structured research design, which includes defining a clear area of investigation, formulating relevant research questions, and choosing appropriate methodologies. While the primary focus is on research design, this chapter also covers aspects of research scoping and selecting research methods. This approach prepares students to handle the complexities of the ever-changing technological landscape in SE, making it a critical component of their educational curriculum. Finally, in this chapter, we highlight several teaching modules. These comprise active learning principles to enhance student engagement through practical activities and reflection. Following the constructive alignment framework [4], we formulate teaching modules that include Intended Learning Outcomes (ILOs) and Teaching and Learning Activities (TLAs) and suggested assessments. For ease of pedagogical application, these teaching modules are clearly highlighted at the end of each relevant subsection.