  We introduce a newly designed undergraduate-level interdisciplinary course in
scientific computing that aims to prepare students as the next generation of
research-oriented computational scientists and engineers. The course offers
students opportunities to explore a diverse set of projects and develop the
necessary programming skills to implement ideas and algorithms within high
performance computing environments. The training includes how to think about,
formulate, organize, and implement programs in scientific computing. The
emphasis of the course is on problem solving within a wide range of
applications in science and engineering.
