Fundamentals of engineering graphics and drafting communication, with a focus on computer-aided design (CAD). Create and interpret 2D drawings and 3D solid models using industry-standard software. Apply drafting conventions to communicate technical ideas effectively through hands-on experience.

Course includes both lecture and lab components per week. Practice innovation by designing and building solutions subject to physical constraints. Explore the creative side of problem solving, learn the fundamentals of the design process, and strengthen solutions by working in teams. Sharpen real-world presentation skills by giving pitches to "customers". AE

Explore metacognitive strategies to better understand how you learn, reflect on problem-solving approaches, and build habits for lifelong learning in technical fields. Develop an applied understanding of precalculus, linear algebra, spatial reasoning, and calculus.

This graduate-level course introduces fundamental principles and practices in embedded systems design and builds upon these principles to study the interaction of computer systems (CPU, memory) and interfacing with those systems. The course covers microcontroller/microprocessor architecture, real-time operating systems (RTOS), hardware/software co-design, system-on-chip (SoC) architectures, and interfacing with peripherals. Prerequisite: three credits of introductory programming and a discrete math course.

Learn optimization and simulation methods including linear optimization, Monte Carlo, and discrete event simulation. Apply modeling to business problems to recommend possible actions toward a solution. Prerequisite: MATH-230 or equivalent and three credits of intro to programming course.

This graduate-level course builds on the foundational concepts of web development introduced at the undergraduate level. This course builds an understanding of how frameworks fit together through project-based learning. Students will gain experience with front-end and back-end development, explore advanced frameworks and tools, and apply best practices in building scalable and efficient web applications. Prerequisite: three-credit web development undergraduate course or equivalent industry experience.

Students work with a team to explore a realistic, open-ended and multifaceted case under the guidance of a faculty advisor. Students carry out and document solution exploration, solution refinement, and prototyping. Restricted to computer science majors with senior standing. Prerequisite: grade of C or highter in 498.

Students work with a team to explore a realistic, open-ended and multifaceted case under the guidance of a faculty advisor. Students carry out and document solution exploration, solution refinement, and prototyping. Restricted to computer science majors with junior or senior standing. Prerequisite: grade of C or higher in 310. A major specific (MATH) GPA of 2.5 or higher.

Application of computer science principles to solve real world problems at an organization while earning a wage. Students are expected to work full-time during the summer under the supervision of a software engineer. Restricted to computer science majors with junior standing and computer science faculty approval. Prerequisite: 310. Graded CR/NC.

Application of computer science principles to solve real world problems at an organization while earning a wage. Students are expected to work part-time during the semester under the supervision of a software engineer. Restricted to computer science majors with junior standing and computer science faculty approval. Prerequisite: 310. Graded CR/NC.