|
|
We consider computer science to be more related to software development and computer engineering to be closely connected to hardware development. Computer Science at UR is now part of the Hajim School of Engineering and Applied Sciences but has retained curriculum requirements that students in Arts & Sciences complete, including broad coursework in Humanities, Social Sciences & Natural Science, in conjunction with their major course requirements of math & computer science. Electrical and Computer Engineering is part of the Hajim School of Engineering and Applied Sciences, and has coursework in physics, chemistry & math as well as electrical & computer engineering. Computer Science majors are required to complete two clusters; ECE majors require only one. We have had students who have completed both an engineering curriculum and the computer science curriculum. A student who chooses to tackle this difficult double degree should have some AP credits, excellent time-management skills, and have few outside activities that distract from the difficult workload. A student may also need to plan to overload courses each semester, take summer courses, or extend beyond 4 years. Students may also choose to minor in either, while majoring in the other department.
Students who have completed the CEEB Advanced Placement Computer Science A exam with a score of 4 or 5 will receive 4 credits of elective CSC coursework, and will be evaluated at orientation. Please check with your CSC advisor during Orientation to be sure of accurate placement in CSC courses. Our goal is to place you correctly so that you are neither over your head or bored with the material. We also want students to be prepared for the next level course they would be expected to take.
Our major is growing again, but our class sizes have not been adversely impacted. The introductory class (CSC 171) is ~80-100 students, with smaller lab sections and peer-run study groups with ~10 students. Each subsequent required class gets smaller, with CSC 172's class size ~50-60 students, CSC 173's size of ~40-50 students and core classes with 25-30. Advanced elective courses average 10-20 undergraduates.
Students need to complete 5 pre-major courses with an average of 2.0 in order to declare their B.S. major. Most students declaring their BS have completed 3 semesters of coursework. B.A students need to have completed two CSC courses. We currently have ~65 majors. We have no caps on the number of Computer Science majors.
Students are not required to have a computer of their own when they come to campus but nearly all students do. They can access the computer science labs remotely at their convenience, from their dorm room, library or lab using ssh protocols. It doesn't matter whether your computer is a Mac or a PC, dual boot, notebook, laptop or desktop. The network on campus can accommodate any computer. Each dorm room is wired with Ethernet connections through ResNet and there is wireless access around campus. Our department's system is Linux running Fedora. For more specific information about the kind of computer you can purchase with educational discounts, contact UR Computer Sales at 275-8353.
Undergraduates interested in research can work on ongoing projects in computational linguistics, assistive technologies, robotics and computer vision, machine learning, human computer interaction, natural language processing, cryptography as well as systems & theory research. Our research meetings are open to anyone. Students can check the department event calendar to find research meetings that might interest them. Students may need more advanced coursework to be active participants in certain projects. Interested students should approach faculty members in their area of interest and ask what level of expertise is required for them to be successful researchers. We have had students begin working on research as early as freshman year, but most wait a little longer to get started.
On-campus job opportunities abound for computer-literate students! Whether you work for University Information Technology in the campus computing facility, for ResNet connecting the dorms, in departments doing computation on research, or at Strong Memorial Hospital in a medical application, there are plenty of jobs on campus. Students interested in gaining on-the-job experience during the summer have many options. In previous years, we have had students do summer internships at Google, Apple, Microsoft, IBM, Kodak, NASA, Xerox, Oracle, Intel, FactSet, 1010Data, Sun, etc. We have also had students do fellowships, REUs (Research Experiences for Undergraduates) or mentorships at MIT, the National Institute of Standards (NIST) and at other colleges around the country. Due to course scheduling we do not have a formal co-op program for students to work full time through the academic year. We encourage students to work in the summers between academic years to get hands-on experience. Those seeking employment after graduation can work with Career Services, follow leads sent directly to our faculty or staff, or network through our alumni working in well-placed positions throughout the computer industry. Recent graduates have entertained multiple offers with very competitive salary ranges at large companies like Google and Microsoft, as well as throughout the country at companies big and small.
Rochester students interested in graduate school are highly recruited by many fine schools. Those choosing graduate school have been accepted to MIT, Carnegie Mellon University, UC Berkeley, Princeton, Stanford, Cornell, Duke, Brown, Yale, University of Pennsylvania., Johns Hopkins University, Rice, Columbia, Maryland, UCLA, NYU, University of Washington, USC, RPI, University of Wisconsin (Madison) and other top CS graduate schools. Students also have been accepted to medical and law schools to further their studies. In a typical graduating class, about 20% of our students apply & enroll into full time graduate studies upon graduation.
Student labs in the computer science department are equipped with Dell workstations running Fedora Linux. There are 2 instructional labs, one on the 6th floor of the Computer Studies Bldg. and the other in Hylan 301. For more information about other equipment used in research in the Computer Science Department, please see the website: Facilities At URCS .
Computer programming requires a lot of practice. If you have the opportunity to program in any language (Java, C, C++, Perl, Python,Ruby, LISP, etc.) it will benefit you. However, our curriculum is designed so that if you have never had any programming, you will have the ability to start with the basics and work your way up. Those students who have considerable coursework & experience in CS will also have opportunities for advancement at a more individual pace. Since student experience varies greatly, your advisor will review your history before recommending your course of study.
The 3-2 Program allows students to complete a Masters Degree by the end of their 5th year. Students interested in this program would have AP/transfer credits as entering freshmen that allow them a more advanced standing. With careful schedule planning in the sophomore year, a student could arrange to complete undergraduate requirements and begin graduate requirements within 4 years, and spend the fifth year taking the remaining graduate course requirements & comprehensive exams. Application to the program is made during the junior year by completing the UR graduate application. Letters of recommendation from UR faculty and a minimum GPA will be required.
If you have any further questions regarding the computer science major at the University of Rochester, please feel free and very much encouraged to contact us: Marty Guenther, Undergraduate Program Coordinator, marty@cs.rochester.edu 585-275-4505 Prof. Ted Pawlicki, Undergraduate Program Director, pawlicki@cs.rochester.edu 585-275-4198 |