Computer Science
Computer Science Program
The Computer Science program is ideal for students seeking an intellectually stimulating career that thrives on problem solving and technological innovation. The curriculum offers a wide array of courses that range from programming fundamentals to special interest electives in a variety of application areas including databases, networking, and embedded systems. The program emphasizes technical skills built upon a strong theoretical foundation in preparation for careers in industry or advanced study in graduate school.
The Mathematics and Computer Science Department offers two majors to suit student interests. The comprehensive major concentrates on theory and application and is designed for students who would like to focus on a single area of study and focus on computer science principles. The non-comprehensive major emphasizes core concepts and allows students to complement their program of study with a minor in another discipline. Both programs offer internship opportunities for students seeking professional experience prior to graduation.
Student Learning Outcomes
Computer Science Comprehensive Major
- Applies an appropriate formal process (or formal language) to write a solution to a given problem and to evaluate the validity and effectiveness of a given written solution.
- Solves multi-part problems by performing appropriate analysis and complex calculations.
- Adopts best practices of software engineering, including documentation, teamwork, and integration, to create large software projects; presents results in oral and visual format.
- Understands and effectively utilizes both high and low-level programming concepts and languages.
- Demonstrates fluency in the definitions, results, analysis and reasoning of a given axiomatically defined system.
- Understands the organization of modern computing devices, both intra-machine and inter-machine.
Computer Science Major
- Applies an appropriate formal process (or formal language) to write a solution to a given problem and to evaluate the validity and effectiveness of a given written solution.
- Solves multi-part problems by performing appropriate analysis and complex calculations.
- Adopts best practices of software engineering, including documentation, teamwork, and integration, to create large software projects; presents results in oral and visual format.
- Understands and effectively utilizes both high and low-level programming concepts and languages.
- Understands the organization of modern computing devices, both intra-machine and inter-machine.
Faculty and Academic Staff
Faculty
Dr. Sergei Bezroukov - Professor
Mr. Jerad Devries - Lecturer
Dr. Steven Rosenberg - Professor
Dr. Chad Scott - Professor
Dr. Joshua Stangle - Associate Professor
Dr. Fnu Surina - Assistant Professor
Dr. Jonathan Totushek - Associate Professor - Department Chair
Dr. Shin-Ping Tucker - Professor