Schools

UCLA

GPA: 3.87
'17-'21
BS, Computer Science & Engineering

Magna Cum Laude, UPE CS Honor Society, HKN EECS Honor Society, Dean's List

Las Lomas HS

GPA: 4.50
'13-'17
High School Diploma

National Merit Commended Scholar, Gifted and Talented Education, Scholar Athlete

Software Coursework

CS 180: Introduction to Algorithms and Complexity

None
A

Design and analysis of algorithms: divide-and-conquer, greedy, dynamic programming, max-flow. Selection of prototypical algorithms; choice of data structures and representations. Complexity measures: time, space, upper, lower bounds, asymptotic complexity. NP-completeness.

EE C147: Neural Networks and Deep Learning

Python
A

Neural network architectures; backpropagation; regularization and optimization for training neural networks; CNN's; deep learning libraries in Python; RNN's, backpropagation through time, LSTM's and GRU's; VAE's; GAN's; adversarial examples and training.

CS M146: Introduction to Machine Learning

Python, MATLAB
A

Application of tools and models to data gathering and analysis. Topics include statistical foundations, regression, classification, kernel methods, clustering, expectation maximization, principal component analysis, decision theory, reinforcement learning and deep learning.

CS 161: Fundamentals of Artificial Intelligence

Lisp
A

Introduction to fundamental problem solving and knowledge representation paradigms of artificial intelligence. State-space and problem reduction methods, brute-force and heuristic search, planning techniques, two-player games. Knowledge structures including predicate logic, production systems, semantic nets and primitives, frames, scripts.

CS M119: Fundamentals of Embedded Networked Systems

C
A

Design trade-offs and principles of operation of cyber physical systems such as devices and systems constituting Internet of Things. Topics include signal propagation and modeling, sensing, node architecture and operation, and applications.

CS M151B: Computer Systems Architecture

RISC-V
A

Computer system organization and design, implementation of CPU datapath and control, instruction set design, memory hierarchy (caches, main memory, virtual memory) organization and management, input/output subsystems (bus structures, interrupts, DMA), performance evaluation, pipelined processors.

CS 118: Computer Network Fundamentals

C++, C
A

Introduction to design and performance evaluation of computer networks, including such topics as what protocols are, layered network architecture, Internet protocol architecture, network applications, transport protocols, routing algorithms and protocols, internetworking, congestion control, and link layer protocols including Ethernet and wireless channels.

CS 174A: Introduction to Computer Graphics

JavaScript
A

Three-dimensional computer graphics systems, including complete set of steps in modern graphics pipelines. How to position and manipulate objects in scene using geometric transformations. How to create final image using perspective transformations. Basics of modeling primitives such as polygonal models and parametric surfaces. Color spaces, illumination models, shading, and texture mapping.

CS 136: Introduction to Computer Security

C++
B

Introduction to basic concepts of information security necessary for students to understand risks and mitigations associated with protection of systems and data. Topics include security models and architectures, security threats and risk analysis, access control and authentication/authorization, cryptography, network security, secure application design, and ethics and law.

CS 131: Programming Languages

Java, Python, OCaml, Scheme, Prolog
A-

Design and use of programming languages, including abstraction, modularity, control mechanisms, types, declarations, syntax, and semantics. Study of several different language paradigms, including functional, object-oriented, and logic programming.

CS 111: Operating Systems Principles

C, Python, Bash, Linux
A-

Operating Systems design and evaluation; performance, robustness, and functionality. Kernel structure, bootstrapping, I/O devices and interrupts. Processes; address spaces, memory management, and virtual memory. Scheduling, synchronization. File systems. Distributed systems. Protection and security.

CS 35L: Software Construction Laboratory

C, Python, Bash, Linux
A

Fundamentals of commonly used software tools and environments, particularly open-source tools: System calls, multithreading, ssh, dynamic linking, regex's, version control.

CS 32: Introduction to Computer Science II

C++
A

Object-oriented software development. Abstract data type definition and use. Overloading, inheritance, polymorphism. Object-oriented view of data structures: stacks, queues, lists. Complexity algorithm analysis. Trees, graphs, and associated algorithms. Searching and sorting.

CS 33: Introduction to Computer Organization

C, Linux
A

Introduction to computer architecture, assembly language, and operating systems fundamentals. Procedure calls, stacks, interrupts, and traps. Assemblers, linkers, and loaders. Processes and process management, input/output (I/O) programming, memory management, file systems.

APCS: Advanced Placement Computer Science

Java
A

Introduction to computer science principles. Logic control, program design. Object-oriented software design and development.

Hardware Coursework

ECE 113: Digital Signal Processing

Matlab
A+

Relationship between continuous-time and discrete-time signals. Z-transform. Discrete Fourier transform. Fast Fourier transform. Structures for digital filtering. Introduction to digital filter design techniques.

ECE 102: Systems and Signals

Matlab
A

Input/output description, linearity, time-invariance, and causality. Impulse response functions, superposition and convolution integrals. Laplace transforms and system functions. Fourier series and transforms. Frequency responses, responses of systems to periodic signals. Sampling theorem.

CS M152B: Digital Design Project Laboratory

Verilog
A+

Design and implementation of complex digital subsystems using field-programmable gate arrays (e.g., processors, special-purpose processors, device controllers, and input/output interfaces). Students work in teams to develop and implement designs and to document and give oral presentations of their work.

CS M152A: Introductory Digital Design Laboratory

Verilog
A

Hands-on design, implementation, and debugging of digital logic circuits, use of computer-aided design tools for schematic capture and simulation, implementation of complex circuits using programmed array logic.

CS M51A: Logic Design of Digital Systems

None
A+

Specification and implementation of combinational and sequential systems. Standard logic modules. Specification and implementation of algorithmic systems; data and control sections, number systems and arithmetic algorithms.

ECE 115C: Digital Electronic Circuits

Cadence Design
A-

Transistor-level digital circuit analysis and design. Modern logic families (static CMOS, pass-transistor, dynamic logic), integrated circuit (IC) layout, digital circuits (logic gates, flipflops/latches, counters, etc.), computer-aided simulation of digital circuits.

ECE 100: Electrical and Electronic Circuits

None
A-

Electrical quantities, linear circuit elements, circuit principles, signal waveforms, transient and steady state circuit behavior, semiconductor diodes and transistors, small signal models, and operational amplifiers.