The International Computer Science curriculum prepares students for careers in all areas of the computer industry as well as for graduate studies in computer science and computer related fields. Students have also found a computer science major to be excellent preparation for careers in law, medicine, business administration, industrial engineering, biomedical engineering, and other technical and non-technical fields. Computer science is a rapidly changing discipline. The lifetime of a particular computer system or software package can be very short. The international computer science curriculum is designed to prepare students for multiple careers in a rapidly changing, global environment. The program’s courses emphasize fundamental concepts and techniques that will last longer than present technology. International computer science majors complete a core of basic computer science courses that includes the study of algorithms, data structures, database concepts, computer systems, computer architecture, programming languages, operating systems, and software engineering. Advanced courses in theory of computation, computer networks, distributed systems, security, and real time systems add depth to the degree program. A three-term senior thesis provides students the opportunity to research in depth an area of computer science that is of interest to them under the mentorship of a faculty member. Majors also complete important courses in closely related fields, e.g., discrete mathematics and probability and statistics, as well as study a foreign language. The major requires students to study all aspects of the science of computing, including hardware, software, and theory.