Education:
University of Illinois at Urbana-Champaign GPA: 3.36/4.00
Bachelor of Science in Computer Engineering
Graduated May 2015
Relevant Coursework
ECE 411 – Computer Organization and Design
CS 461 – Computer Security 1
ECE 391 – Computer Systems Engineering
CS 463 – Computer Security 2
ECE 385 – Digital Systems Laboratory
CS 418 – Interactive Computer Graphics
ECE 340 – Semiconductor Electronics
CS 225 – Data Structures
ECE 444 – Theory and Fabrication of Integrated Circuits
CS 433 – Computer Systems Organization
Skills:
Programming Languages:
C, C++, Java, Python, VHDL, System Verilog, Smali, x86 Assembly
Spoken Languages:
Fluent in English and Filipino
Project Experience
Android App Modification April 2015 – May 2015
Injected code in a legitimate Android App in order to gather extra information such as contacts, GPS location, and inbox messages
Modifications were written using Java and then converted into Smali
Interactive Graphics January 2015 - May 2015
Used C++ and utilized the OpenGL library to create a simple flight simulator and graphically enhance a movable virtual teapot
Flight simulator had the user flying in first person view over a small terrain and the plane can roll, rotate, and yaw
Virtual teapot had lighting and had two textures mapped into it which can be turned on/off independently
Integrated Circuit Fabrication September – December 2014
Fabricated integrated circuits containing MOSFETS, MOS Capacitors, pn Diodes, BJT’s, and resistors from scratch
Tested correct device behavior after fabrication using four-point probes
Central Processing Unit Design September – December 2014
Designed a five-stage pipelined LC3X microprocessor with a two-level cache using System Verilog
Implemented early branch resolution which resolved branch in the third pipeline stage instead of the fifth
Predicted branches based on previous branch history and stored their destinations in a branch table buffer
Designed a 4-way set associative L2 Cache which also utilized a Pseudo LRU replacement policy
Linux Based Operating Systems Design March – May 2014
Operating System had support for scheduled context-switching, segmented memory protection, a simple file system, and drivers for keyboard inputs, text outputs, and a clock
Operating system code written in C and x86 assembly language
Worked in a group of four to accomplish the task
Game Driver and Graphics February – March 2014
Extended C driver code to receive and process packets of data from a tux controller to the game program
Utilized Video Graphics Array’s Mode X to output the game on a computer screen
Tank Wars FPGA Game November – December 2013
Worked with a partner to program an FPGA Board using VHDL to create a two-player tank game that outputted graphics on a VGA Monitor and processed packets of data from the keyboard as the game input
Additional Experiences
Copier Machine Repair July – August 2014
Worked with a technician and fixed black and white and colored copier machines
Learned about crucial copier parts and common copier problems
EZ - Movers Intern June – August 2014
Created a program that stores files in a content repository using Java and Alfresco Content Management Software
Learned about networking basics such as the TCP/IP protocol, VOIP, setting up servers and firewalls, and connecting phones and cameras to the company network