There is increasing demand for computing professionals in the United States and too few college graduates to fill the projected need. While extant research has explored a wide variety of student and course attributes to predict student success in introductory programming courses, similar studies focused on intermediate and advanced courses is lacking. Our study aims to explore and identify student and course attributes impacting student performance in intermediate programming courses. Using mixed methods, we provide insights for instructors and instructional designers in developing courses to facilitate the successful completion of course learning objectives for more students, leading to more students who graduate and are able to fill IT-related roles in the future.