Skip to main content Skip to search
""

Computer Science

The computer science program at Yeshiva College provides students with the theoretical foundations and practical skills required for long term success in industry and in graduate school.

See results and read feedback from students:  2019-2020 annual report2018-2019 annual report

Our Faculty has:

  • 91+ years of full-time corporate experience across Google, Microsoft, IBM, Intel, Goldman Sachs, Bell Labs, Motorola, Barclays, and Millennium Partners
  • 42 issued patents
  • 120+ publications
  • Student success as its #1 priority

Degrees Offered

Students earn a Bachelor of Science (BS) in Computer Science upon completing either of our four year tracks, and a Bachelor of the Arts (BA) for completing our three year track. Please see the requirements dropdown for details about the different tracks.

Interested in Getting Involved?

If you are an industry professional and want to mentor C.S. students or give a guest lecture, or would like to get involved in any other way, please contact Judah Diament at diament@yu.edu.

Program Information

Careers

Recent graduates work in top companies across many industries, including:

  • Amazon
  • Facebook
  • Google
  • IBM
  • Intel
  • Accenture
  • Blackrock
  • Bloomberg
  • BNY Mellon
  • Citi
  • Deloitte
  • Goldman Sachs
  • Prudential
  • TD Securities

Graduate School

Our students gain acceptance to top graduate schools such as Carnegie Mellon, Georgia Tech, Columbia, NYU, & Wharton.

Computer Science Major

For complete information regarding the tracks in the major, requirements, and prerequisites, please see The Complete Guide to the Computer Science Major at Yeshiva College (current version: Spring 2022, v2.3.1;  previous version: Spring 2021).

After you have read the guide, feel free to contact Professor Diament or Academic Advising with any further questions.

Students who have matriculated before Fall 2017 may follow the old requirements. Click here to see the old requirements.

Computer Science Minor

  • Introduction to Computer Science (COM 1300)
  • Data Structures (COM 1320)
  • Math for Computer Science (COM 1310)
  • Introduction to Algorithms (COM 2545)
  • One additional course in Computer Science of your choosing
  • Calculus 1 (MAT 1412)
  • Linear Algebra (MAT 2105)

Requirements Beyond the C.S. Major

  • Students in the B.A. track have the same non-C.S. requirements as all other B.A. students in Yeshiva College
  • Students in either B.S. track have the general education requirements show in the table below.
  • All students need a total of 128 credits in order to graduate
  • IBC and JSS courses transfer to YC for the BS in the same exact way they transfer for a BA (this is relevant to the second and last lines below.)

General Education Requirements

Requirements Credits Number of Courses
First Year Writing 3 1
BIB, JHI, JST, or JTP 4 2
Choose from Contemporary World Cultures (COWC) or Cultures Over Time (CUOT) 3 1
Interpreting the Creative (INTC) 3 1
Human Behavior and Social Institutions (HBSI) 3 1
Electives: choose from any of the following Y.C. departments: ART, BIO, BIB, CHE, ECO, ENG, HEB, HIS, JHI, JST, JTP, MUS, PHI, PHY, POL, PSY, SOC, SPA 6 2
TOTALS 22 8

For more details regarding what the various categories (COWC, HBSI, etc.) mean, what Y.C. courses count towards them, etc. please consult Y.C.’s web site or academic advising. Since B.S. students must be on campus for 8 semesters and there are 8 non-C.S. requirements, B.S. students can take one non-C.S. requirement each semester to pace themselves and evenly distribute their workload.

Judah Diament

Judah Diament   (LinkedInGoogle Scholar)
Department Chair, Clinical Associate Professor of Computer Science
Program Director, Undergraduate Data Science

  • IBM T.J. Watson Research Center: 2000-2014
    - Patents: 14 U.S. patents issued
    - Publications: 6 conference papers & journal articles
    - Impacted multiple IBM software products, including shipping code
  • Goldman Sachs: 2014-2016, Vice President, Finance Engineering
  • Alumnus of Y.U., R.I.E.T.S.

Richard Dutton

Richard James   (LinkedIn)
Adjunct Professor of Machine Learning

  • Facebook: Feb. 2021 to Present Head of Content Understanding in AI Platform
  • Google: Dec. 2017 - Feb. 2021 Head of Machine Learning for Corporate Engineering
  • Millennium: 2017 Head of Data Analytics and Cloud Application Development
  • Barclays: 2005-2014 Director; Head of Rates Technology Asia
  • Microsoft: 2000-2001 Speech Recognition

Dave Feltenberger

Dave Feltenberger   (LinkedIn)
Adjunct Professor of Computer Science

  • Google: 2012-Present Senior Staff Software Engineer, Quality & ML in Google Maps; founder of Corp Eng ML team
  • Goldman Sachs: 2010-2012 Senior Software Engineer, post-execution trading platform

Van kelly

Van E. Kelly   (LinkedIn)
Clinical Professor of Computer Science

  • Bell Labs: 1993-2001
    - Distinguished Member of Technical Staff
  • Motorola: 2006-2010
    - Senior Member Technical Staff

Avraham Leff

Avraham Leff   (LinkedIn, Google Scholardblp)
Professor of Computer Science

  • IBM T.J. Watson Research Center: 1991-2017
    - Patents: 18 U.S. patents issued, more pending
    - Publications: 44 conference papers & journal article
    - Impacted multiple IBM software products, including shipping code

Dr. F. Patricia Medina

F. Patricia Medina   (LinkedIn, Google Scholar)
Assistant Professor of Computer Science

  • Publications: 6 papers, 3 theses, 40 conference talks, seminars, and posters.
  • Worcester Polytechnic Institute: 2016-2019.
  • Brown University: Spring 2019. Visiting Postdoctoral Scholar, ICERM, Computer Vision.
  • Oregon State University: 2014-2016. Instructor
  • Bowling Green State University: 2006-2009. Graduate Research & Teaching Assistant
  • Universidad Simón Bolívar: 2004-2006. Instructor (Assistant Professor level)

Avi Rosenfeld

Avi Rosenfeld   (LinkedIn, Google Scholar)
Adjunct Professor of Computer Science

  • Lev Academic Center (Machon Lev) 2007-present
    - Publications: 23 journal articles, 8 book chapters, 39 conference articles, and 9 posters.
    - Patents: 1 U.S. patent issued, 2 pending
    - Head of Data Science Program of Machon Lev
  • One of four member of Israel’s Education Counsel responsible for judging all academic degrees in Data Science
  • Alumnus of M.T.A., Y.U., Azrieli, R.I.E.T.S.

Ben Wymore

Ben Wymore   (Google Scholar)
Assistant Professor of Computer Science

  • Patents: 9 U.S. patents issued
  • Intel
    - Application Services and Research Laboratoryspeech recognition and natural grammars for residential productivity applications
    - Intel Tablet Organization
  • Crestron Electronics
    - Software for touchpanels, audio servers, and other products
    - Team lead for Crestron's iOS and Android applications

A number of courses in the Computer Science major are taught by the faculty of the Department of Mathematics.

The department employs advanced undergraduate students as tutors and teaching assistants. Students who are interested in such activities should contact Professor Diament.

Computer Science Orientation 2020

Torah Wisdom & Guidance Specifically for C.S. Majors from R' Mayer Twersky

Introduction to the C.S. Major, by Judah Diament, C.S. Professor & Department Chair

Meet the Rest of the Computer Science Faulty

Greetings & Experience From Recent Alumni

Jacob Saks, class of '19 and Software Engineer at BlackRock, and Micah Hyman, class of '20, Summer intern at Amazon and semicha student at RIETS, share thoughts on how YC CS prepared them for their jobs.

C.S. Student Summer Internships During COVID-19

When COVID-19 shutdowns radically reduced the number of Summer internships that were available, the Yeshiva College Department of Computer Science undertook multiple efforts to create opportunities for our students. In this video, you will hear from six students who got their internships through these efforts, what they learned and did at their internships, and how YC CS prepared them for their jobs.

C.S. Student Summer Research During COVID-19

This is our second video about what YC CS did for our students in the Summer of COVID-19. In this video, you will hear about the research done by three students who spent the Summer doing Data Science research with one of our professors, Dr. F. Patricia Medina, and their thoughts on how YC CS prepared them and helped them.

Alex Schlesinger, Summer with Nomura Holdings and Google

Although the CS department did step up to help many students who did not have internships, that should not distract from the fact that a number of our students did in fact have internships on their own. In this video, Alex Schlesinger describes his Summer experience with Nomura Holdings and Google.

General Guidance on the Tech Interview Process

Your preparation for getting a job starts from day #1 in your C.S. classes, and also begins your first year in YU with various other activities. Please see this guide for details. In addition, the following resources are worthwhile:

Yeshiva College Department of Computer Science Academic Integrity Policy

Resources & Collaboration

The allowed resources for Computer Science assignments will vary from course to course, and even from assignment to assignment, including:

  • what sources of information, printed or online, may be accessed and used,
  • the level of collaboration and discussion which is permitted among students,
  • whether someone else's previous work may be incorporated, as-is or with changes

The rules may be communicated to the students in several forms, including:

  • assignment instructions
  • lecture slides
  • course syllabi
  • class emails
  • online class forums (e.g., Canvas, Piazza, GitHub)

Students are responsible to know and follow both the general rules for each course as well as the specific provisions for each assignment. If there is ambiguity about a particular resource, they should assume that its use is not permitted, pending any further clarification by the professor.

Citing Sources

When submitting work for any assignment for which use or adaptation of code (or other work) written by others has been allowed by the professor, the student is required to follow the citation practices outlined by the professor in the specific course or assignment. If the professor does not outline a specific citation practice, students must do the following:

  • Insert the URL of the code and the date of retrieval. Add more details if it will help the reader get a clearer understanding of the source.
  • If you adapted the code, you should indicate “Adapted from:” or “Based on” so it is understood that you modified the code.

If you are not clear on what is required and acceptable, ask your instructor.

FAQ About the C.S. Major

We assume that students know absolutely nothing about C.S. coming in to COM 1300, Introduction to Computer Science.

It depends on which area of C.S. one works in. The vast majority of professional Software Engineers will use very little advanced math, or none at all, and the little math they do use is not more than what they learned in their K-12 schooling. Data Science, graphics algorithms, and cryptography, for example, are all heavily mathematical, but the vast majority of Software Engineers in industry spend their time working on applications and/or infrastructure that do not involve any significant amount of math at all. And, even within Data Science etc., a large percentage of the Software Engineers that work in those areas simply use code libraries that are built by someone else, and do not actually understand all the underlying math. To summarize: the vast majority of Software Engineers use very little math, if any.

There is no one personality, set of abilities, or interests that guarantee success or failure in C.S. Whether one is "left brained" or "right brained" is no indication - one person will approach software engineering primarily as a creative process while another will approach it primarily as an analytic process, and both are valid and powerful, depending on the exact situation. Whether one has enjoyed or despised math in his K-12 education is not much of an indication either - aside from the fact that there are many factors that go into K-12 math going well or badly that have little to do with student ability, some parts of C.S. are highly mathematical and some parts are entirely divorced from math. The only way to know if C.S. will work for you is to try it.

Our B.S. in C.S. tracks are designed to give students the opportunity to succeed without going to graduate school. Students in the B.A. track, however, are strongly encouraged to get at least a masters.

Many students have been in MYP, had a night seder, and completed the Distributed Systems or Data Science tracks. Having a consistent night seder does, however, require managing your time well, e.g. using your Friday, motsaei Shabbos, and Sunday afternoon wisely. This is no different than continuing to learn throughout the rest of your life - the choices you make when it comes to priorities and time management will greatly impact how much time you have for learning. 

You do not need a minor to get a good C.S. job in any industry. Smart companies hire the best software engineers they can find and are more than happy to teach those software engineers on the job what they need to know about the business/industry. From the perspective of getting a good C.S. job, the best thing you can do in your "copious free time" is build some software that 1) does something that you find interesting, useful, or important 2) is not required by your C.S. courses and 3) you can explain on an interview why you were motivated to build specifically that and how you did. Then create a public GitHub repository, push the code there, and include a link to it on your resume. If there are courses offered that are relevant to what you'd like to accomplish in life personally or professionally, you should take those courses, but you should not think that having a minor per se on your resume is necessary for your career. It is a much better use of your time to think through how to develop yourself into the person and/or professional you want to be, and take the courses (or pursue activities outside the classroom) that will give you the intellectual, emotional, and spiritual tools to get there.

No - students who complete the B.S. in C.S., Data Science track, get a minor in math automatically.

Other Y.C. departments / programs grant a B.A. degree, not a B.S., and according to the rules of NYSED you can not double major when one major is a B.S. and one is a B.A. You can, however, earn a minor from any other YC department.

You do need your own laptop to do your C.S. work. If you are buying a new laptop, we strongly recommend a large amount of RAM (at least 16GB, preferably 32GB or even 64GB) and a fast internal drive (e.g. SSD NVMe). If you already own a laptop, we recommend that you not invest in a new one until successfully completing Intro to C.S. and Data Structures. Whether you get a Mac or a Windows laptop is up to you. If you choose a Windows laptop, you may be required for some classes to use the Windows Subsystem for Linux and/or run a Linux virtual machine on your laptop.

B.S. in C.S. students must be full time students at Y.U. for a full 8 semesters. The B.A. has the same residency requirements as any other B.A. program from Y.C.

As a rule, we do not allow for C.S. classes to be taken in the summer. Please do not expect to get credit for any C.S. summer courses without getting written permission from the C.S. department chair before taking the summer class. Math classes (i.e. those whose course name/number starts with "MAT", not "COM) that are required for a C.S. major may be taken in the summer as long as the given course at the given university has been approved by the math department. However, we very strongly recommend that C.S. students use their summers to get work experience in C.S. both to build their resumes and to help them explore and understand what area in C.S. they would like to pursue a career in.

B.S. in C.S. students must be on campus full time for 8 semesters. In the case of a student switching majors, we will try to work with you to help you graduate after 8 semesters on campus by catching up via summer courses. Whether it is possible to catch up or not will depend on what other courses (e.g. math courses) you took before deciding to switch in to the B.S. in C.S. program and/or other factors in your personal situation.

No - B.S. in C.S. students must be full time students for a full 8 semesters. If you find that you have extra room in your schedule, you can take any classes you like in YC or SSSB, and/or transfer credits from your UTS program in order to be registered for a full 12 credits each semester.

Yes. The B.S. in C.S. program is a part of Yeshiva College, and all the same rules regarding to what counts for credit in other majors apply here as well.

Skip past mobile menu to footer