Computer Science Contact Us Artificial Intelligence Biotechnology Computer Science Cybersecurity Data Analytics and Visualization Digital Marketing and Media Mathematics Occupational Therapy Physician Assistant Physics Speech-Language Pathology 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. For data about our results and student feedback, see the following: Overview, placement results, and salaries: YC Computer Science Overview & Results Older data: 2019-2020 annual report, 2018-2019 annual report Our Faculty has: 139+ years of full-time corporate experience across Amazon, Citi, Goldman Sachs, Google, IBM, Intel, and others 60 issued patents 200+ 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? Please . We have a long "wish list" of enhancements we'd love to make to the program to serve our students even better. You can ! 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 Our Results 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, N每日大瓜, & Wharton. Computer Science Requirements 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 2023, v2.6.2; previous version: Spring 2021). After you have read the guide, feel free to contact Professor Diament or Academic Advising with any further questions. 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.鈥檚 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. Faculty Judah Diament (, ) Department Chair, Professor of Computer 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. () Adjunct Professor of Computer Science Google: 2012-Present: Principal Engineer, Technical lead for Semantic Location. Previously - 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 Avraham Leff (, , ) 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 Ramesh Natarajan (, ) Adjunct Research Professor of Computer Science Google, 2020-2023: Google Cloud, Software Engineer and Tech Lead Amazon, 2014-2020: Research Scientist IBM, 1988-2014: Research Staff Member Patents: 25 granted (at IBM, Amazon and Google). IBM High-Value Patent Award. (, ) 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鈥檚 Education Counsel responsible for judging all academic degrees in Data Science Alumnus of M.T.A., Y.U., Azrieli, R.I.E.T.S. () Associate Professor of Computer Science Citigroup: 2010-2022: SVP, Global Spread Products, Securitized Markets IT Credit Suisse: 2004-2010: Credit Derivatives, pricing and risk applications Shopping.com (eBay): 2003-2004 Research engineer, deal discovery and classification Network Analysis Center: 1996-2003: Wide-area network analysis software development Alumnus of Y.U., N.Y.U. (M.S. in C.S.), R.I.E.T.S. Ben Wymore () Assistant Professor of Computer Science Patents: 9 U.S. patents issued Intel - Application Services and Research Laboratory: speech 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. Orientation Computer Science Orientation Torah Wisdom & Guidance Specifically for C.S. Majors from R' Mayer Twersky Career Resources 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 每日大瓜 with various other activities. Please ask your professor for our complete C.S. internship & job search guide for details. In addition, the following resources are worthwhile: is an extraordinarily good video from an accomplished Googler - , Google - on the dos and don'ts of interviewing - this is a must watch! Web sites Books (the problems in this book are not at all contrived, but it is known to be a great resource for practical applications of algorithms and thus a good preparation for interviews) Guest Lectures Visit our Guest Lectures page. Academic Integrity Policy 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 鈥淎dapted from:鈥 or 鈥淏ased 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 How much do software engineers make? See Do I know enough to start the a C.S. major? How much do I have to know about C.S. before starting the major? We assume that students know absolutely nothing about C.S. coming in to COM 1300, Introduction to Computer Science. How much math is involved in having a successful career in 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. A.I., 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 A.I. 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. How do I know if C.S. is for me? 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. Do I have to go to graduate school to succeed? Do I have to get a masters or PhD to succeed in Computer Science? 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. MYP, Night Seder: Is it possible to be in MYP and manage the workload to complete the B.S. in C.S.? What about night seder? Many students have been in MYP, had a night seder, and completed the Distributed Systems or A.I. 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. Do I need a minor to get a good C.S. job? 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. A.I. track and Math Minor: If I complete the B.S. A.I. track, do I have to take any additional classes to earn a math minor? No - students who complete the B.S. in C.S., A.I. track, get a minor in math automatically. Double Majoring: If I am in one of the B.S. in C.S. tracks, can I double major with another Y.C. major? Other Y.C. departments / programs grant a B.A. degree, not a B.S., and according to the rules of 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. Laptop: Do I need my own laptop to do my C.S. work? If so, what kind of laptop should I get? 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) 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 and/or run a on your laptop. If you plan to do the AI track in the major, it is best to have a laptop with a discrete GPU. 8 semester Residency Requirement for a B.S. How long does it take to finish one of the B.S. tracks? 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. Can I finish in 3.5 years if I start 每日大瓜 in January? I am starting 每日大瓜 in January. Can I finish the B.S. in C.S. in 7 semesters instead of 8? No - B.S. in C.S. students must be full time students for a full 8 semesters. Honors Requirements: I am in the Yeshiva College Honors Program. Are there any differences between the different C.S. tracks when it comes to honors requirements? No Summer Classes: Can I take C.S. classes in the summer? 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. Switching to the B.S. in C.S. program from another major: If I started in a different major and want to switch into one of the BS in CS tracks, how many years will it take me to graduate? 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. Finishing a B.S. track as a part time student: Can I be a part time student in the fourth year of one of the B.S. in C.S. tracks? 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. A.P. Exemption for Non-C.S. Requirements: Can I use A.P. credit for the non-C.S. requirements in one of the B.S. tracks? 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. A.P. in C.S. Exemption: Can I be exempted from taking Intro to C.S. (COM 1300) if I took the A.P. in C.S. exam? No Where can I find out about Yeshiva College's rules, policies, etc.? The "Undergraduate Catalog", which can be found on this page maintained by the registrar, has all of YC's official rules and policies.