M.S. in Computer Science
Academic Advisor: https://computing.njit.edu/advising
M.S. in Computer Science
The M.S. in Computer Science offers a well-rounded advanced education in computer science. Students can shape their coursework based on their interests and professional needs, by selecting courses from various areas, including Artificial Intelligence, Cybersecurity, Computer Algorithms, Data Management, Programming Languages and Environments, Systems, Software Engineering and other advanced topics.
Prerequisites
Applicants should have a bachelor's degree from an accredited institution in a discipline related to computing (e.g., Computer Science, Computer Engineering, Information Sciences, or Information Technology). Applicants with a bachelor's degree in STEM or related professional experience can first take an NJIT graduate certificate and then apply to the M.S. program. Further information can be found in the program's webpage.
Degree Requirements
The program requires the completion of 30 credits. The requirement is satisfied by taking 10 courses.
Core Courses (12 credits)
Courses covering fundamental topics in Computer Science.
Code | Title | Credits |
---|---|---|
Required: | 3 | |
Data Structures and Algorithms | ||
Select three of the following: | 9 | |
Operating System Design | ||
Data Management System Design | ||
Internet and Higher-Layer Protocols | ||
Machine Learning | ||
Total Credits | 12 |
Elective Courses (18 credits)
The CS department offers courses in various specialized areas. Students are free to elect courses from any area. Additionally, students may take up to two courses from a selected list offered by other departments.
Students who want to pursue research can earn up to 6 of the 30 required credits by taking as elective CS 700B Master's Project, possibly followed by CS 701B Master's Thesis. These have special requirements described in the section 'Master's Project and Thesis'.
Code | Title | Credits |
---|---|---|
Algorithms and CS Theory | ||
Data Structures and Algorithms | ||
Introduction to Computational Complexity | ||
Algorithms on Graphs | ||
Design Techniques for Algorithms | ||
Parallel Algorithms | ||
Computational Optimization | ||
Sequencing and Scheduling | ||
Artificial Intelligence | ||
Artificial Intelligence | ||
Machine Learning | ||
Reinforcement Learning | ||
Deep Learning | ||
Advanced Machine Learning | ||
Pattern Recognition and Applications | ||
Cybersecurity and Privacy | ||
Cryptography and Security | ||
Security and Privacy in Computer Systems | ||
Network Protocols Security | ||
Counter Hacking Techniques | ||
Cyber Sec Investigations & Law | ||
Topics in Smartphone Sec & Rel | ||
Network Management and Security | ||
Advanced Data Security and Privacy | ||
Security and Privacy in Wireless Networks | ||
Data Management | ||
Data Management System Design | ||
Advanced Database System Design | ||
Data Mining | ||
Introduction to Big Data | ||
Applications of Database Systems | ||
Data Mining and Management in Bioinformatics | ||
Programming Languages and Environments | ||
Java Programming | ||
Computer Programming Languages | ||
Data Analytics with R Program | ||
Cloud Computing | ||
High Performance Computing | ||
Mobile Computing and Sensor Networks | ||
Systems | ||
Operating System Design | ||
Distributed Systems | ||
Computer Architecture | ||
Cognitive Cloud Networking - Architectures and Applications | ||
Internet and Higher-Layer Protocols | ||
Linux Kernel Programming | ||
Software Engineering | ||
Software Design and Production Methodology | ||
Software Project Management | ||
Software Testing and Quality Assurance | ||
Software Architecture | ||
Software Studio | ||
Seminar in Software Engineering | ||
Seminar in Software Management and Production | ||
Various Topics &0 | ||
Principles of Interactive Computer Graphics | ||
Image Processing and Analysis | ||
Systems Simulation | ||
Cognitive Computing | ||
Computer Vision | ||
Special Emerging Topics: | ||
Advanced Image Processing and Analysis | ||
Seminar in Computer Science I | ||
Seminar in Computer Science II | ||
Entry-level Graduate Courses | ||
Foundations of Computer Science | ||
Courses from other departments &1 | ||
Data Visualization and Interpretation | ||
Natural Language Processing | ||
Design of Wireless Networks: 5G Architecture and Services | ||
Cloud and IoT Networking and Security | ||
Advanced Microprocessor Systems | ||
Computer Arithmetic Algorithms | ||
Computer Systems Architecture | ||
Embedded Computing Systems | ||
Web Systems Development | ||
User Experience Design | ||
Web Services and Middleware | ||
Simulation for Stochastic Systems | ||
Introduction to Robotics | ||
Strategic Management of Technological Innovation | ||
Deep Learning in Business | ||
Graduate Capstone Project &2 | ||
Project and Thesis Courses | ||
Master's Project | ||
Master's Thesis |
- &
0. All courses from the complete list of graduate CS courses are also included.
1. At most two of these courses can count towards degree requirements.
2. YWCC 691 and CS 700B cannot count simultaneously towards degree requirements.
All degree requirements apply to both on-campus and online programs.
Master's Project and Thesis
The contents of this section apply only to students who elect to do a Master's Project (CS 700B) or a Master's Thesis (CS 701B).
Students must first find a research advisor who must be a tenure-track graduate faculty of the CS department, including faculty with a joint appointment. Tenure-track faculty are the department members including those who hold joint appointments with the rank of Assistant Professor, Associate Professor, Professor, and Distinguished Professor.
In order to find a research advisor, students are encouraged to attend special presentations offered by the department or to directly contact professors. Professors may not always have availability for conducting an MS project/thesis. Students are therefore encouraged to start looking for an advisor as early as possible, especially if they are considering pursuing a Master’s Thesis that takes two semesters.
The students must be in close coordination with their research advisor who will determine the topic of the Project/Thesis and guide them to take specific elective courses that will prepare them for the research.
Registration
- Master’s Project: With permission of their research advisor students must register in the CS 700B Master's Project course. To register for Master's Project, students must have completed at least 9 credits and must be in good standing.
- Master’s Thesis: With permission of their research advisor, students must first register in the CS 700B Master's Project course. They must receive a satisfactory (S) grade in CS 700B before CS 701B Master's Thesis registration in the immediately following semester, with the same advisor. The MS thesis topic should be continuation of the work done in CS 700B.
Thesis Requirements
- An MS Thesis Committee must be formed, according to the requirements set forth by the Office of Graduate Studies.
- A written thesis must be submitted. The thesis must adhere to the style requirements set forth by the Office of Graduate Studies.
- An oral defense is required. The defense must take place before the last day of the Examination period.