Teaching

18-613 Foundations of Computer Systems

Graduate Course, CMKL University, Electrical and Computer Engineering, 2020

This course provides a programmer’s view of how computer systems execute programs, store information, and communicate. It enables students to become more effective programmers, especially in dealing with issues of performance, portability and robustness. It also serves as a foundation for courses on compilers, networks, operating systems, and computer architecture, where a deeper understanding of systems-level issues is required. Topics covered include: machine-level code and its generation by optimizing compilers, performance evaluation and optimization, computer arithmetic, processor architecture, memory organization and management, networking technology and protocols, and supporting concurrent computation. This course is modeled after 15-213/18-213/15-513, and is intended for ECE MS students with expanded course contents presented at the graduate level. It prepares students for other graduate level computer systems courses as well as working in the industry.

18-900 Research, Entrepreneurship and Innovation

Graduate Course, CMKL University, Electrical and Computer Engineering, 2019

This unique course for Carnegie Mellon University Thailand program introduces students to explore the connections between research, entrepreneurship and innovation. Students will be introduced to industries and tech communities. Students will participate in exploratory projects which introduce research methodologies while also learning how to apply engineering techniques to solve challenging real-world problems.

01266212 Cyber-Physical System Design

Undergraduate Course, King Mongkut's Institute of Technology Ladkrabang, Computer Innovation Engineering, 2019

This course introduces students to the design and analysis of cyber-physical systems — computational devices and systems that integrate with physical processes for applications such as medical devices, consumer electronics, automotive systems, critical infrastructure control and robotics control. Students will learn about fundamental architecture of embedded systems. Basic topics include computer arithmetic, memory, system bus, I/O, microcontroller and microprocessor design. Students also study the interactions between computer systems and physical dynamics including interfacing with physical environments, distributed communications, real-time control, energy conservation, safety and reliability.

01266312 Cloud Computing

Undergraduate Course, King Mongkut's Institute of Technology Ladkrabang, Computer Innovation Engineering, 2019

This course gives students an overview of Cloud Computing, its enabling technologies and hands-on experience from public and private cloud infrastructure. The course covers the topics of data centers, virtualization, infrastructure, platform, and programming models. The course will discuss the motivating factors, benefits, challenges, and service models; including the concepts behind software-defined infrastructure design and management. Students will explore virtualization and resource isolation technique for offering software, computation, network and storage services. Students will also be introduced to existing cloud platform, programming models and patterns for cloud native applications.

01266214 Information Network and Cyber Security

Undergraduate Course, King Mongkut's Institute of Technology Ladkrabang, Computer Innovation Engineering, 2019

This course covers the topics of computer networking and cyber security. Students will learn about principle of computer networking such as OSI model, networking standards, protocols, network services, network devices, network design, cyber security concepts, network attack, cybercrime, network management procedure, network protection technique, laws, and security standard.

01266111 Fundamentals of Programming

Undergraduate Course, King Mongkut's Institute of Technology Ladkrabang, Computer Innovation Engineering, 2018

This course introduces basic concepts of computer programming such as elementary programming, data types, expressions, simple algorithms and problem solving involving sequential statements, conditionals and iterations. Students learn routines or methods as fundamental concepts and practice using strings, arrays, lists, maps or dictionaries, pre-defined libraries and classes, abstraction mechanisms and basic object- oriented programming concepts. Students will practice related activities of software development life cycle such as system requirement analysis, debugging, testing and validation.