My coursework mostly surrounds analog circuits in my MSEE and biomedical optics, imaging, and computer engineering in my undergrad in CompE at UIUC. Also, I did a bit of biology and machine learning on the side. Here are a few significant ones:

Computer Engineering

  • ECE 411: Computer Organization and Design

    This course is an intensive introduction to the fundamentals of computer architecture. Relying heavily upon the elementary principles taught in ECE 220, ECE 385, and ECE 391, we will discuss the basic design, or architecture, of computing hardware. Computer systems involve architecture design at many levels. We will focus on the instruction set architecture (ISA) level (the interface between the software and computing hardware) and the microarchitecture level (the computing hardware itself). We will examine to some extent, the level above the instruction set (the programming language level) and the level below the microarchitecture (the logic gate level) in order to deepen our understanding of computing systems. This course has a demanding design component; you will implement some of the basic concepts presented in lecture using real hardware design tools.

  • ECE 391: Computer Systems Engineering

    This class will introduce you to the concepts and abstractions central to the development of modern computing systems, with an emphasis on the systems software that controls interaction between devices and other hardware and application programs. We will cover input-output semantics, synchronization, interrupts, multitasking, virtualization of resources, protection, and resource management concepts. You will also be introduced to network and storage device abstractions. In terms of practical skills, you will be exposed to software development tools for source control, debugging, dependency management, and compilation, and will work in the context of a real operating system executing in a virtual machine. You will also develop software analysis skills as well as team-based development and testing skills. The list of topics includes:

    • x86 assembly: review of basic constructs and structures, interfacing C to assembly, macros, stack frame and calling convention
    • system software basics: resource management, virtualization, protection, system call interface, asynchronous and synchronous interactions
    • simple data structures: queues, heaps, stacks, lists
    • interrupts and exceptions: controlling generation and handling, chaining, cleanup code, interactions with device functionality, interrupt controllers
    • synchronization: primitives, memory semantics, mutual exclusion, semaphores, scheduling, race conditions
    • virtualization of the CPU: processes and scheduling
    • I/O interface: file descriptors, buffering, control operations
    • device programming: basic abstractions, character and block devices, device driver development process
    • user-level programming interfaces for file and network I/O, relationship to kernel I/O abstractions
    • virtualization of memory: hardware support and software abstractions
    • signals: semantics, generation, and delivery
    • file system abstractions and disk layout
  • ECE 408: Applied Parallel Programming

    Parallel programming with emphasis on developing applications for processors with many computation cores. Computational thinking, forms of parallelism, programming models, mapping computations to parallel hardware, efficient data structures, paradigms for efficient parallel algorithms, and application case studies.

  • ECE 385: Digital System Engineering

    Design, build, and test digital systems using transistor-transistor logic (TTL), SystemVerilog, and field-programmable gate arrays (FPGAs). Topics include combinational and sequential logic, storage elements, input/output and display, timing analysis, design tradeoffs, synchronous and asynchronous design methods, datapath and controller, microprocessor design, software/hardware co-design, and system-on-a-chip.

Optics & Imaging

  • ECE 460: Optical Imaging

    Scalar fields, geometrical optics, wave optics, Gaussian beams, Fourier optics, spatial and temporal coherence, microscopy, interference chromatic and geometric aberrations, Jones matrices, waveplates, electromagnetic fields, and electro-optic and acousto-optic effects. Laboratory covers numerical signal processing, spectroscopy, ray optics, diffraction, Fourier optics, microscopy, spatial coherence, temporal coherence, polarimetry, fiber optics, electro-optic modulation and acousto-optic modulation.

  • ECE 564: Modern Light Microscopy

    Current research topics in modern light microscopy: optics principles (statistical optics, Gaussian optics, elastic light scattering, dynamic light scattering); traditional microscopy (bright field, dark field, DIC, phase contract, confocal, epi-fluorescence, confocal fluorescence); current research topics (multiphoton, CARS, STED, FRET, FIONA, STORM, PALM, quantitative phase).

  • ECE 455: Optical Electronics

    Optical beams and cavities; semiclassical theory of gain; characteristics of typical lasers (gas, solid state, and semiconductor); application of optical devices.

    • Optical beams and cavities: Review of electromagnetics, ray tracing, ABCD matrix, stable cavities, Gaussian beams, resonant cavities
    • Interaction of Photons and Matter: Blackbody radiation, Einstein coefficients, lineshape functions, gain, absorption, saturation
    • Basic Laser Theory: Threshold gain, laser oscillation, steady-state and dynamic systems, Q-switching, mode-locking
    • Laser Systems: 3- and 4-level lasers, rare-earth-ion lasers, broad-band-gain, tunable lasers, gas discharge lasers
    • Nonlinear processes and harmonic generation
    • Semiconductor lasers: Review of semiconductor fundamentals, absorption, gain, oscillation, optical modes
  • ECE 467: Biophotonics

    Overview of the field of biophotonics, in three segments: (1) fundamental principles of light, optics, lasers, biology, and medicine; (2) diagnostic biophotonics including imaging, spectroscopy, and optical biosensors; (3) therapeutic applications of biophotonics including laser ablation and photodynamic therapies. Reviews and presentations of current scientific literature by students. Tours of microscopy facilities.

  • ECE 380: Biomedical Imaging

    Physics and engineering principles associated with x-ray, computed tomography, nuclear, ultrasound, magnetic resonance, and optical imaging, including human visualization and perception of image data.


  • EE214A: Fundamentals of Analog Integrated Circuit Design

    This course provides a comprehensive introduction to various aspects of modern digital integrated circuit design. Navigate through the maze of tools, technologies and techniques including circuit components, component variations and practical design paradigms. Learn how to analyze, simulate and design a complementary metal oxide semiconductor (CMOS) analog integrated circuit. Analyze and simulate elementary transistor stages, current mirrors, supply- and temperature-independent bias and reference circuits. Explore performance evaluation using computer-aided design tools.

  • EE214B: Advanced Integrated Circuit Design

    The advanced treatment of analog integrated circuit design using noise and distortion constrained wideband amplification presents complex subjects of electronic noise, distortion and feedback in a holistic framework that is unavailable in commonly used textbooks. Designed to bridge the separation of introductory material on integrated circuit analysis and performance-driven design, this content will prove invaluable to those in the field. This course is a must for students who wish to acquire a deep understanding of the fundamental effects that limit the performance of high-speed transistor circuits commonly found in electronic products. Knowledge acquired will prepare students for graduate study at an advanced/300 level and prepare them for a successful career as a transistor-level integrated circuit designer. Topics Include:

    • Device operation and compact modeling for circuit simulations
    • Quantitative evaluations of performance using hand calculations and circuit simulations
    • Intuitive approaches to design
    • Analytical and approximate treatments of noise, distortion and feedback circuit analysis
    • Treatment of advanced MOS and bipolar technologies
    • Archtypical analog blocks such as broadband gain stages and transimpedance amplifiers
  • EE 315: Analog-Digital Interface Circuits

    Fundamental circuit elements and sensor interfaces for microelectromechanical and biomedical applications are key components in modern electronics. This course analyzes the design of circuits and circuit architectures for signal conditioning and data conversion.

    • Active filters
    • A/D and D/A converters
    • Nyquist sampling
    • Operational transconductance amplifiers
    • Sampling circuits
    • Switched capacitor stages
    • Voltage comparators
    • Sensor interfaces


  • MCB 150: The Molecular and Cellular Basis of Life

    Introductory course focusing on the basic structure, metabolic, and molecular processes (including membranes, energy metabolism, genes) common to all cells. Emphasis on unique properties that differentiate the major sub-groups of organisms (Archaea, Bacteria, plants, and animals), and will discuss how cells are integrated into tissues and organs in multicellular organisms.

  • MCB 250: Molecular Genetics

    MCB 250 is a lecture/discussion course that provides detailed coverage of the fundamentals of molecular genetics, including key molecular biology concepts, structure of DNA, RNA and proteins, mechanisms of DNA replication, transcription and translation, gene organization, genetic variation and repair, and regulation of gene expression in Bacteria and Eukarya.

  • MCB 252 : Cells, Tissues & Development

    MCB 252 is a lecture course that focuses on cell biology. Over the course of the semester we are going to study transcriptional and translational controls of gene expression, the cellular periphery, the cytoskeleton and cell-cell interactions. We will then examine the control of cell proliferation, cell birth, lineage and death and cancer. In addition, the course will cover current issues and research in the areas of stem cells and cancer.

  • MCB 314: Introduction to Neurobiology

    Introduction to functional and organizational principles of the mammalian nervous system. Topics include the function of nerve cells, neural signaling, sensory and motor systems, learning and memory, attention, motivation, emotions, language, neural development and neurological disorders. A general introduction appropriate for all majors.

Machine Learning

  • STATS 216: Introduction to Statistical Learning

    Overview of supervised learning, with a focus on regression and classification methods. Syllabus includes: linear and polynomial regression, logistic regression and linear discriminant analysis; cross-validation and the bootstrap, model selection and regularization methods (ridge and lasso); nonlinear models, splines and generalized additive models; tree-based methods, random forests and boosting; support-vector machines; Some unsupervised learning: principal components and clustering (k-means and hierarchical). Computing is done in R, through tutorial sessions and homework assignments. This math-light course is offered via video segments (MOOC style), and in-class problem solving sessions. Prerequisites: first courses in statistics, linear algebra, and computing.

  • CS 273B: Deep Learning in Genomics and Biomedicine

    Recent breakthroughs in high-throughput genomic and biomedical data are transforming biological sciences into “big data” disciplines. In parallel, progress in deep neural networks are revolutionizing fields such as image recognition, natural language processing and, more broadly, AI. This course explores the exciting intersection between these two advances. The course will start with introduction to deep learning and overview the relevant background in genomics and high-throughput biotechnology, focusing on the available data and their relevance. It will then cover the ongoing developments in deep learning (supervised, unsupervised and generative models) with the focus on the applications of these methods to biomedical data, which are beginning to produced dramatic results. In addition to predictive modeling, the course emphasizes how to visualize and extract interpretable, biological insights from such models. Recent papers from the literature will be presented and discussed. Students will work in groups on a final class project using real world datasets.