Stephyn Butcher, PhD - Johns Hopkins University
Dr. Stephyn G. W. Butcher is a professor of computer science at the John Hopkins University Whiting School of Engineering. He teaches computer science courses including data science and artificial intelligence.
Before going into academia, Dr. Butcher held several roles as a software engineer and data scientist. Currently, his research examines machine learning (particularly evolutionary computation), programming languages, and software engineering issues. As with other professors in JHU's program, he is committed to continuing work outside of academia, paying thought to the broader, real-world contributions of his research. He has published his work in top journals such as the Journal of Electronic Testing and IEEE Transactions on Instrumentation and Measurement.
Dr. Butcher completed his doctorate in computer science and master of science in computer science at Johns Hopkins University, his master of arts in economics at American University, and his bachelor of arts in economics at California State University, Sacramento.
Nenad Medvidovic, PhD - University of Southern California
Dr. Nenad Medvidovic teaches computer science at the University of Southern California, including courses in software engineering, software engineering for embedded systems, software architectures, and design and construction of large software systems.His research explores architecture recovery, architecture-based software development, middleware facilities for architectural implementation, domain-specific architectures, and architectures of distributed, mobile, decentralized, resource-constrained, and embedded systems. He has published his work in several high-impact journals such as the Journal of Empirical Software Engineering, the Journal of Systems and Software, and the Journal of Grid Computing. Dr. Medvidovic is the recipient of the Distinguished Engineering Merit Award, the USC Mellon Mentoring Award, and a Best Paper Award.
He earned his doctorate and master's in computer science from the University of California, Irvine, and his bachelor's degree in the same subject from Arizona State University.
Haiping Xu, PhD - University of Massachusetts, Dartmouth
Dr. Haiping Xu serves as an associate professor of computer and information science at the University of Massachusetts, Dartmouth. He leads computer science courses such as multi-agent software systems, theoretical computer science, models of computation, formal methods of software engineering, object-oriented programming, and parallel and distributed software systems. His research focuses on software engineering, distributed computing, formal methods, cybersecurity, and reliability and security of cloud services.
Dr. Xu has published his work in prominent journals such as the Journal of Electronic Commerce Research, the International Journal of Software Engineering and Knowledge Engineering, and The Computer Journal. He also has received many honors, including the Outstanding PhD Thesis Award and a University Fellowship.
He holds a doctorate in computer science from the University of Illinois at Chicago, a master of science in computer science from Wright State University, and a bachelor of science in electrical engineering from Zhejiang University in China.
John Hopkins University offers an online master of science degree in computer science with three flexible options: online, on-site, or in a combination of both. The program is focused on solving real-world problems and building the expertise to succeed in computer science. It is ideal for scientists, computer professionals, and engineers.
Admission requirements include a bachelor’s degree from a regionally accredited college or university, a grade point average (GPA) of at least 3.0, and official transcripts, among other documentation. GRE scores are not required, but students are encouraged to submit them if they have them.
The program is made up of ten courses that must be completed within five years. The curriculum provides students concentration options in bioinformatics, cybersecurity, data communications and networking, data science and cloud computing, software engineering, enterprise and web computing, database systems, knowledge management, human-computer interaction and visualization, systems, and theory.
Each concentration consists of a different set of courses. For instance, the data structures concentration introduces students to principles of bioinformatics, operating systems security, principles of data communications networks, social media analytics, artificial intelligence, enterprise computing with Java, data visualization, software project management, and operating systems.
Students learn how to analyze the performance of computer algorithms, the determination of the accuracy of algorithms, and the application strategies and maintenance of graphs and algorithms.
The Georgia Institute of Technology offers an online master of science in computer science. This program has created a worldwide community of computing professionals with various professional networks, wherein they share job opportunities, make in-person connections, and support each other through their studies and in their careers.
To get accepted, students need a four-year bachelor’s degree from a regionally-accredited institution, a cumulative GPA of 3.0 or higher, and satisfactory scores on the TOEFL for international applicants, among other documentation. GRE scores are not a requirement.
The program allows students to customize their education by selecting one of four specializations: machine learning, computational perception and robotics, interactive intelligence, or computing systems. This program requires at least 30 credits. Specializations require 12 to 15 hours of coursework, and the remaining 15 to 18 hours are electives. Throughout the program, students learn about artificial intelligence, information security, advanced operating systems, computer networks, network security, and data and visual analytics.
Students uncover the basic principles of computer science and information security and gain insight into the fundamental approaches to securing computers and networks. They also learn how to use networking research tools, the use of software processes in product development, and techniques to ensure the quality of the software products. Graduates can pursue various opportunities in the computer science field.
The University of Massachusetts, Dartmouth offers a 100 percent online master of science in computer science. While its emphasis is on software development, the program strikes a balance between theory, systems, and applications. It is taught by experienced faculty members who have served as conference chairs, program committee members, and grant proposal reviewers for federal funding agencies.
Admissions requirements to this master's program include a bachelor’s degree from an accredited institute, GRE scores (which can be waived), and a personal statement.
The 30-credit program explores topics in algorithms and complexity, software systems design, and software system application. Students also learn how to conduct advanced data mining and work with advanced computer graphics and systems. The program also imparts skills in research and presentation.
Graduates are prepared to compete for high-level positions in the computer industry, research institutions, or government, or to further pursue their education in doctoral programs.
The USC Viterbi School of Engineering offers an online master of science in computer science that provides students with a thorough understanding of foundational issues in computer science and computer engineering. The fully online program gives students access to the same faculty and curriculum as the on-campus program.
Applicants to the program must have an undergraduate degree in engineering, math, or another hard science from a regionally-accredited university, a satisfactory undergraduate GPA, GRE test scores, official transcripts, statement of purpose, letters of recommendation, and TOEFL scores for international students.
The 28-credit program introduces students to the concepts and techniques related to the design and programming of computer systems. Students take courses in the analysis of algorithms, the foundations to artificial intelligence, database systems, operating systems, an introduction to programming systems design, database systems, and advanced computer systems.
The program prepares students to pursue opportunities in several industries such as aerospace and defense, computer programming, software design, bioinformatics, computer simulation, and information technology.
The New Jersey Institute of Technology offers an online master of science program in computer science. The program provides students with knowledge of algorithms, programming, logical reasoning, and complex computing systems. It is ideal for students who wish to pursue advanced studies in computer science.
Admission requirements for the program include an undergraduate degree in a related science field with a minimum grade point average of 3.0, while GRE scores are encouraged in all cases, and TOEFL scores are required for international students.
The 30-credit online master’s program gives students adequate experience in algorithms, data structure design, and implementation. Of these, 12 credits must be obtained by taking four prescribed core courses, while the remaining may be obtained by taking a combination of nine credits from one specialization and nine credits from the free electives listing. The specializations on offer are database and data mining, networking, and cybersecurity.
Students delve into courses on data structures and algorithms, data management system design, operating system design, data mining, internet and higher-layer protocols, cloud computing, and network management and security. The program introduces students to computer operating system design, including concepts such as multiprogramming, time-sharing and real-time processing, methods of database design, and parallel programming techniques for cloud computing.
At the end of the program, graduates can pursue opportunities in the computer science field as NJIT partners with big as well as small firms, startups, and other business organizations. As an added advantage, students also have access to startups part of NJIT’s business incubator that frequently hires graduates.
Purdue University’s College of Science offers an online master of science in computer science. The online classes are taught by the same faculty who teach in the on-campus programs, and for the larger course sections, additional teaching assistants provide further resources to the students.
Students applying to the program must have a bachelor's degree in computer science or engineering from a regionally accredited university, a CS course background, and a satisfactory GPA.
The 30-credit program provides maximum flexibility, making it ideal for busy students who want to explore topics in algorithm design, analysis, and implementation; data communication and computer networks; parallel computing; random variables; and systems simulation. They learn various programming languages, operating systems, data structures, and networks, as well as analysis of algorithms, distributed systems, and fundamentals of computer science.
Upon completion of the program, graduates can pursue opportunities in a variety of settings related to the field of computer science.
Data science, as described by University of California, Berkeley, involves the analysis and management of large quantities of data. The discipline requires professionals who can ask the right questions, chart out what information is needed, collect the data, and analyze it effectively.
Meet 25 leading professors of computer science, and learn more about what makes them standout educators and innovators.
Learn from the best. Meet 25 well-regarded software engineering professors who teach proven, best practice approaches to software engineering and testing.
We are surrounded by software. A master’s degree in software engineering equips students with the knowledge and skills they need to develop software and work with different computer systems.
The programming field is as diverse as it is promising, which makes distinguishing interrelated jobs difficult. Perhaps one of the most contested comparisons, however, is between software engineers and software developers.