Computer Science Department

Master of Science in Software Engineering

ITU’s Computer Science Department focuses on the software engineering and computer science disciplines. Both programs in the department place primary emphasis on the technical aspects of building and modifying high quality software systems.


Courses are available in software design, software ethics, software architectures, web programming, computer graphics, and network programming.


This graduate engineering program offers an advanced curriculum designed to hone the next generation of engineering leaders, entrepreneurs, and researchers. ITU’s Bay Area campus is ideally located for students targeting a career in Silicon Valley at institutions like NASA AMES, Lawrence Livermore National Laboratory, or Lam Research.

58% of students are involved in internships 54 countries represented in our student body.
>50% Annual Earnings are double the national average in Silicon Valley. 25% Less Fee: Compared to Average Tuition for a Master’s Degree in The US. “Finance and Fee”.


Our 39 credit hour curriculum is completed in 16 months. The 39 credit hours are composed of core courses, electives, cross disciplinary electives, capstone or thesis, and an internship.

Program Structure

Required Courses

  • 3 Core Courses (9 credit hours)
  • Elective Courses (15 credit hours)
  • Capstone course – Project or Thesis (3 credit hours)
  • Internship (up to 9 credit hour)
  • Nugget courses (up to 3 credit hours)
    • ITU Presents (1 credit hour)
    • ITU Nuggets (2 credit hours)

Elective Courses

A sufficient number of Elective Courses must be completed to bring the total of credit hours to 39.

A minimum 3.0 cumulative GPA (Grade Point Average) is required for granting of the Master’s degree.

Core Courses

SWE 600 Advanced Software Engineering
SWE 557
SWE 685 Software & Cloud Architecture

Capstone Courses

SWE 690 Capstone Project or SWE 695 Master’s Thesis


INT 593 Internship (1 credit hour required)

Transfer Credits

Up to 9 credit hours from a graduate program of a regionally accredited school with department chair’s approval.

ITU Presents

PRE 500 ITU Presents (1/3)

ITU Nugget Courses

1/3 credit to 2 credit courses

IDS 558 1 Blockchain and Peer to Peer Software
IDS 525 1 Digital Forensic in Finance & Accounting
IDS 526 1 HTML/CSS Programming & JavaScript
IDS 520 1 Introduction to AI & Machine Learning
IDS 568 1 Introduction to Cryptography
IDS 569 1 Introduction to Cybersecurity
IDS 567 1 Introduction to Digital Forensics
IDS 540 1 Introduction to Python Programming
IDS 570 1 Mobile and Wireless Ethical Hacking
IDS 515 1 Mobile Applications (iOS, Android, and IoT)
IDS 566 1 Python for Cybersecurity
IDS 527 1 Python for Excel and data analysis programming

Elective Courses for the Three MS Programs

In each of the 3 MS programs (MSCS, MSIC, MSSE) Electives must be chosen from the list below so that the total number of credit hours is at least 39. All electives count in each program, except when explicitly stated otherwise.

SWE 565 1 Advanced Database Systems
SWE 600 1 Advanced Software Engineering
SWE 557 1 Artificial Intelligence and Machine Learning Programming
SWE 645 1 Blockchain and Peer to Peer Software
SWE 690 1 Capstone Project
SWE 695 1 Capstone Thesis
DGA 501 1 New Media Production
SWE 685 1 Software & Cloud Architecture
AMS 510 Linear Algebra (3)
AMS 540 Discrete Mathematics (3)
AMS 750 Abstract Algebra (3)
AMS 760 Practical Number Theory (3)
CEN566 Routing in Computer Networks (3)
CSC505 The UNIX/Linux OS (3)
CSC507 Unix/Linux System Administration (3)
CSC509 Windows Administration (3)
CSC511 OO Programming with C++ (3)
CSC512 Data Structures (3)
CSC515 I-Phone Application Development (3)
CSC518 OO Programming with Java (3)
CSC519 Android Application Development (3)
CSC520 Python Programming (3)
CSC527 Mobile Web Development (3)
CSC570 Web Security Fundamentals (3)
CSC580 Computer Algorithms (3)
CSC633 Machine Learning (3)
CSC670 Network and Data Security (3)
CSC730 Cryptography & Cryptanalysis (3)
CSC750 Coding Theory (3)
CSC760 Advanced Topics in Data Science (3)
ICS550 Security Policies (3)
ICS520 Personal Computer Security (3)
ICS620 Computer Malware (3)
ICS630 Digital Forensics Technology (3)
ICS688 Special Topics (3)
SWE510 Information Security Countermeasures (3)
SWE520 Principles of Ethical Hacking (3)
SWE530 Cloud Computing Security (3)
SWE561 Cloud Computing (3)

Admission Requirements

  • Bachelor’s degree with a minimum GPA of 2.75, or a Master’s degree with a minimum GPA of 3.0.
  • Proof of English proficiency:* All applicants whose native language is not English and who did not receive either a bachelor’s or graduate degree from an English-speaking institution must take one of the following English proficiency tests:
    • Test of English as a Foreign Language (TOEFL) examination: score of 72 or better for the internet-based test (iBT).
    • International English Language Testing System (IELTS) examination: band score of 6.0 or better for the academic module.
    • Duolingo English Test: score of 120 or better out of 160.
  • Demonstrated commitment to contribute to and complete the program

*U.S. citizens or U.S. Permanent Residents who have earned an undergraduate or graduate degree from a regionally accredited institution in the U.S. are waived from this requirement.

*Who has 2+ years of work experience in the United States are waived from this requirement.



should apply

This graduate engineering program is geared towards competitive, mathematically-inclined students with a high level of technical expertise, and who are interested in pursuing a career in research, biomaterials, or in emerging technologies. Graduates will be prepared for leadership roles in labs, global engineering programs, and institutes like NASA AMES or Lam Research.

What You Will Learn

Coursework in software ethics, software architectures, and software quality assurance and testing is supplemented by labwork, capstone projects, and a wealth of career resources.

Learning Outcomes


  • Be able to identify and apply current and emerging software engineering technologies required for the creation of reliable, predictable, well-engineered software systems.
  • Be able to utilize multiple programming paradigms, including object-oriented, functional, logic, and emerging programming technologies.
  • Show understanding of SE principles and practices as described in the SWEBOK, and other emerging software development processes.
  • Develop sufficient soft skills to be able to interact with stakeholders from multiple disciplines on the systems engineering level.
  • Have working skills in SE management including team building, leadership, project planning, selection of tools and processes appropriate to a project.