Some programs require students to finish with a senior thesis, capstone project, or other portfolio-building projects that are intended to help prepare them to work in computer science.