What is computer science?

Computer science is the study of computer systems and their rapidly expanding role in households, businesses, and government agencies around the world. As computers have expanded into all aspects of daily life, computer scientists are needed to improve user interfaces, digital networks, data storage, cybersecurity, and web design. We focus on understanding the diverse properties of computer systems used in medical diagnosis, scientific visualization, biological simulation, artificial intelligence, and engineering design.

Earning a Bachelor of Science in Computer Science is a worthwhile investment for professional growth and future employment. According to the U.S. Department of Labor, the median annual salary for this field is $97,430 and related jobs are projected to grow 15% from 2021 to 2031, which is much faster than most other occupations.

students interact with a professor in a computer lab.students interact with eachother in a computer lab

What Makes the King’s Computer Science Program Different?

The King’s College Math and Computer Science Department in Wilkes-Barre, Pa., offers a Bachelor of Science in computer science that is designed to help you develop the analytical skills and computer expertise vital to both private and public employers. Our computer science curriculum teaches you to understand computing as an intellectual discipline and how to use your knowledge to solve technical problems and drive innovation in a variety of fields.

Compatible Majors and Minors FOR THE COMPUTER SCIENCE PROGRAM

Computer Science Careers

What can you do with a computer science degree?

Computer science careers include:

  • Software engineers and software developers
  • Computer systems analysts who manage databases and organize information
  • Scientists who develop algorithms and write programs that solve complex problems
  • Engineers who develop the hardware necessary to run businesses, government agencies, and private institutions

Computer scientists are in high demand across multiple sectors, including:

  • Financial planning
  • Banking
  • Cybersecurity
  • Data warehousing and mining
  • eCommerce
  • Encryption and security
  • Artificial intelligence
  • Expert systems
  • Robotics
  • Modeling and simulation
  • Scientific visualization
  • Medical diagnosis and treatment
  • Computer graphics
  • Computer-assisted design
  • Computer education

Opportunities for Graduate Studies

Many students with a computer science degree go on to attend graduate school part time with the support of their employers. Some of the companies that employ King’s graduates include Prudential Asset Management, Keane Inc., EDS, Sanchez Computer Associates, Phillip Morris, and Hughes Defense Industries.

Computer Science Curriculum

Computer Science Courses

View a comprehensive list of computer science education requirements here.

CS 100 — Introduction to Computing (3)

This course is an introduction to the broad and dynamic field of computing for nonmajors. While addressing the differences between computer science and computer information systems, the class covers topics including how a computer functions, how data is encoded, architectures, operating systems, high-level programming, information systems, applications, limitations of computing, and ethical questions in computing. Offered spring semesters.

CS 111 — Programming for Science and Engineering I (3)

This course is an introduction to using spreadsheets and MATLAB with an emphasis on the types of problems encountered in science and engineering. Topics include problem solving, control structures, simple data structures, basic numerical algorithms, and data visualization and analysis with emphasis on using the extensive MATLAB libraries for solving these types of problems. Two (2) lecture and two (2) laboratory hours are required to be taken in the same semester.

CS 112 — Introduction to Computer Programming (3)

This course is the first course in computer programming with an emphasis on problem solving and program design. Topics include algorithm design, testing, input and output, expressions, control structures, functions, list and dictionaries, and reading and writing files.

CS 120 — Object-Oriented Software Development (4)

This course is an introduction to object-oriented design and implementation with an emphasis on the tools, processes, and disciplines used in large-scale software development projects. Topics include class design, code refactoring, inheritance and interfaces, exception handling, and version control systems. Offered spring semesters. Three (3) lecture and two (2) laboratory hours.

CS 232 — Data Structures (4)

This course is an introduction to how computer data is stored. It introduces and examines the implementation of a variety of data structures including lists, stacks, queues, and trees. Additionally, this class covers fundamental algorithm analysis and design that is critical to application development in science and business. Offered fall semesters. Prerequisites: CS 120 or CIS 117, or consent of the instructor. Three (3) lecture and two (2) laboratory hours where laboratory hours are not required for the minor.

CS 233 — Data Structures (4)

This course begins where CS 232 left off and looks at more complex data structures including balanced trees, dictionaries, and graphs. Additionally, this class will cover advanced programming techniques such as efficient sorting and graph algorithms, file I/O, and storage management. Offered spring semesters. Prerequisites: CS 232, or consent of the instructor. Three (3) lecture and two (2) laboratory hours where laboratory hours are not required for the minor.

CS 256 — Database Management (4)

A study of the design, maintenance, and use of databases. Topics include relational modeling, normalization, query languages, and programming APIs for database access. Students will design their own database and write a database-driven application that uses it. Offered fall semesters. Lecture portion cross-listed as CIS 356. Prerequisites: CS 120 or CIS 117, or consent of the instructor. Three (3) lecture and two (2) laboratory hours.

CS 270 — Computer Organization (4)

This course is the study of the relationship between hardware and software. It includes an introduction to assembly language and the design of digital logic circuits. Additionally, this class covers the organization of the central processor including instruction sets, register transfer operations, control microprogramming, data representation, and arithmetic algorithms. Offered spring semesters. Prerequisites: CS 232, or consent of the instructor. Three (3) lecture and two (2) laboratory hours where laboratory hours are not required for the minor.

CS 305 — Compiler Design (3)

This course covers formal description of languages, lexical analysis, syntax analysis, syntax-directed translation, runtime system management, code generation, code optimization, and compiler-building tools. Prerequisites: CS 233, or consent of the instructor.

CS 315 — Programming Paradigms (3)

This course introduces the design and implementation issues of contemporary programming languages. Topics covered include programming paradigms, the syntax and semantics of programming language constructs, and formal languages. Several different languages are introduced and examined to illustrate these topics. Offered every other year. Prerequisites: CS 232, or consent of the instructor.

CS 328 — Theory of Algorithms (3)

This course is an introduction to the techniques for designing efficient computer algorithms, proving their correctness, and analyzing their running times. General topics include asymptotics, solving summations and recurrences, algorithm design techniques (such as divide-and-conquer, dynamic programming, and greedy algorithms), analysis of data structures, sorting, searching and selection, and an introduction to NP-completeness. Offered fall semesters. Prerequisites: CS 233, MATH 235, or consent of the instructor.

CS 364 — Operating Systems (3)

An introduction presents an introduction to major concepts of modern operating systems. Topics include operating system structure, process and thread management, inter-process communication and synchronization, scheduling, memory management, input/output operations, and file systems. Offered every other year. Prerequisites: CS 270, or consent of the instructor.

CS 375 — Computer Graphics (3)

This course explores fundamental concepts in 2D and 3D computer graphics. It introduces 2D-raster graphics techniques including simple image processing, interaction techniques, and user interface design. It then progresses into 3D modelling, geometric transformation, and 3D viewing and rendering techniques. Some basic knowledge of linear algebra is helpful but not required. Prerequisites: CS 233, or consent of the instructor.

CS-380 Image Processing & Parallelism (3 Credits)

This course presents the fundamentals of image processing through the application of parallel computing with the GPU and the OpenCL programming environment. Topics include image processing algorithms, the GPU programming model and architecture, parallel programming patterns, shared data structures, synchronization techniques, and load balancing. Prerequisites: CS 233 or consent of the instructor.

CS 420 — Advanced Programming (3)

An advanced look at significant concepts underlying modern programming languages including expressions, advanced topics on inheritance, pointers, garbage collection, and explicit memory management from a prospective of implementation issues. Prerequisites: CS 310, or consent of the instructor.

CS 448 — Artificial Intelligence (3)

This course is an overview of the main topics and issues in artificial intelligence (AI). This course studies the philosophy and history of the field, presents a view of AI that is centered around the notion of an agent acting on an environment. Topics include searching, planning, ontologies, uncertain reasoning, and learning as problems faced by our agents. Overview of more specialized files such as natural language processing and robotics will be covered as time permits. Offered every other year. Prerequisites: CS 310, or consent of the instructor.

CS 480 — Software Engineering (3)

This course starts a two-semester capstone course incorporating the senior integrated assessment. Topics include project planning, system requirements, structure software design, testing for verification and validation, and security and privacy considerations. Implementation of a capstone project is required. Open to senior-level computer science majors upon approval of the chairperson or program director.

CS 481 — Applied Software Engineering (3)

This course continues the implementation of the capstone project started in CS 480. Project presentation is required. Open to senior-level computer science majors upon approval of the chairperson or program director.

CS 490 — Topics in Computer Science (3)

The course covers current topics in computer science as selected by the student and instructor. Individual or group work is supplemented by guided research to gain mastery of the topic selected. Recent topics have included machine learning, cybersecurity, ethical hacking, decision analysis, and robot motion planning. Open to junior and senior computer science majors upon approval of the chairperson or program director.

CS 491 — Independent Study in Computer Science (3)

Projects in a specialized area of computer science under the supervision of a faculty member in the computer science program. The student and faculty member define the scope of the project and meet regularly throughout the semester. Open to junior and senior computer science majors upon approval of the chairperson or program director.

CS 499 — Computer Science Internship (3)

An option for junior or senior majors to gain practical experience in the application of computer systems. Regular meetings with a faculty coordinator are required.

Computer Science Degree requirements

View a comprehensive list of all computer science degree requirements here.

MAJOR SEQUENCE REQUIREMENTS

(18 COURSES — 56 CREDITS)

  • CS 112 Introduction to Computer Programming (3)
  • CS 120 Object Oriented Software Development with Lab (4)
  • CS 232 Data Structures with Lab (4)
  • CS 233 Advanced Data Structures with Lab (4)
  • CS 256 Database Management with Lab (4)
  • CS 270 Computer Organization with Lab (4)
  • MATH 127 Logic & Axiomatics (3)
  • MATH 129 Analytical Geometry and Calculus I (4)
  • MATH 130 Analytical Geometry and Calculus II (4)
  • MATH 235 Discrete Mathematics (3)
  • CS 480 Software Engineering (3)

At least one of the following:

  • CS 481 Applied Software Engineering (3)
  • CS 499 CS Internship (3)

At least six (6) of the following with no more than two (2) CIS counting:

  • CIS 385 Data Communications I (3)
  • CIS 386 Data Communications II (3)
  • CIS 487 Network Security (3)
  • CS 305 Compiler Design (3)
  • CS 315 Programming Paradigms (3)
  • CS 328 Theory of Algorithms (3)
  • CS 336 Theory of Computation (3)
  • CS 364 Operating Systems (3)
  • CS 375 Computer Graphics (3)
  • CS 420 Advanced Programming (3)
  • CS 448 Artificial Intelligence (3)
  • Any CS course 300 or higher.

The following electives are recommended for computer science majors:

  • MATH 126 Introduction to Statistics (3)
  • MATH 237 Applied Linear Algebra (3)
  • PHYS 111 General Physics I (4)

MINOR SEQUENCE REQUIREMENTS

(6 COURSES — 18 CREDITS)

  • CS 112 Introduction to Computer Programming (3)
  • CS 120 Object Oriented Software Development (4)
  • CS 232 Data Structures (lab optional) (3)
  • CS 256 Database Management Systems (lab optional) (3)
  • Six (6) credits CS/Math Electives 200-level or above with at least 3 credits in CS, as approved by department chairperson or program director

Computer Science Degree Faculty & Contacts

Department Chairperson

Janine Janoski, Ph.D.
E-mail: janinejanoski@kings.edu

Full-Time Faculty

Amy Sliva, Ph.D. (Program Director)
amysliva@kings.edu
(570) 208.5900 ext. 5502
Office: 417 Administration
Read Bio

Amy Sliva, Ph.D. is an Assistant Professor of Computer Science and Program Director for the Computer Science major.  Dr. Sliva teaches a broad range of Computer Science courses, including Introduction to Computer Programming, Database Management Systems, Artifical Intelligence, Image Processing, and Cybersecurity. Her research interests are interdisciplinary, with expertise as a computational social scientist developing new artificial intelligence models of human behavior to support decision making in security policy, international conflict, and international development. Dr. Sliva's current research projects involve combining probabilistic graphical models and sensitivity analysis to address the complexity of decision making related to food security in Gambella, Ethiopia, and using behavioral game theory to model the impact of fear and threat on politcal preferences and decisions. 

Before joining King's College, Dr. Sliva was a Senior Scientist at Charles River Analytics, leading diverse research teams developing novel intelligent systems solutions for the National Security and Intelligence Communities. She was the PI for projects under DARPA's World Modelers program, developing new solutions for uncertainty management and quantification in complex socioplitical systems, IARPA's Cyber-attack Automated Unconventional Sensor Environment (CAUSE) program, creating unconventional "sensors" mining social media, darkweb content, and news reports for behavioral indicators predictive of pending cyberattacks, and several US Army Small Business Innovation Research (SBIR) programs for prototoyping a cyber modeling toolkit for simulating behavioral characteristics of cyber adversaries for proactive responses to potential cyber threats. 

Dr. Sliva was previously an Assistant Professor of Computer Science and Political Science at Northeastern University. She has collaborated with the National Defense University on analysis of the strategic and legal aspects of cyber warfare and worked for the World Bank developing behavioral modeling technologies for education logistics and planning in Nigeria.

Education
Ph.D. in Computer Science, University of Maryland
Master of Public Policy (M.P.P.) in International Security and Economic Policy, University of Maryland
M.S. in Computer Science, University of Maryland
B.S. in Computer Science, Georgetown University

Website

Hiva Samadian, Ph.D.
hivasamadian@kings.edu
Office: 420 Administration
Read Bio

Dr. Hiva Samadian is an Assistant Professor of Computer Science at King's College. His main teaching interests are in courses such as Theory of Computation, Analysis of Algorithms, Discrete Structures, Programming, and Data Structures. His principle teaching objectives are raising student's motivation to learn, and facilitating student's mastery of the field, thereby making them become independent learners, and creative and critical thinkers in their future careers and daily lives. His research interests are Theoretical Computer Science, Algorithms and Data Structures, Computational Complexity, Logic, and Computability and Automata Theory. Dr. Samadian is a theorist who provides logical, mathematical, and algorithmic solutions to computer science problems. His research projects in the fields of Computational Biology, Access Control, Robot Motion Planning, and Data Mining all share the theoretical nature of their research methods. His current research on Solvable Graphs for Robot Motion Planning problem tries to find the properties of a solvable graph through identifying some basic topological structures that their solvability contributes vitally to the solvability of the graph containing them.

Since 2011, Dr. Samadian has enjoyed teaching and mentoring young computer science college students and involving them in undergraduate research projects. He is committed to Diversity, Equity, and Inclusion, and providing an interactive and collaborative learning environment for students, and cultivating ethical research and professional attitudes in students. Before joining King's College, he was a visiting assistant professor of computer science at Colgate University. He feels he is still young enough to continue playing soccer in his spare time.

Education
Ph.D. in Computer Science, University of Puerto Rico Mayaguez
M. S. in Information Technology, Tarbiat Modares University, Iran
B.S. Pure Mathematics, Amir Kabir University, Iran

Admission and Financial Aid Contacts

Office of Admission
admission@kings.edu
Office of Financial Aid
finaid@kings.edu

Computer Science Major resources

Computer Science Student Organizations

  • King's College Coding Club
  • Mathematics and Computer Science Club