Hi, my name is Andrew and I am a senior majoring in Mathematics and Computer Science at University of Illinois Urbana Champaign. I am curious about many fields in computer science including but not limited to: machine learning, web development, parallel programming, and cloud networking. I will be graduating Winter of 2020 and am currently actively searching for full time jobs.
-
Experience
Oracle America, Responsys May 2020 - Aug 2020
Software Engineer Intern in the Responsys, Oracle Marketing Cloud Group
- Implemented Bloom Filter to support real-time in-memory processing of additional types of user actions on emails(event) from event database, processing 4-5 million events per hour utilizing Spring Framework
- Devised and implemented end to end integration tests to verify the whole dataflow of capturing events, passing it through the Bloom Filter, and persisting unique counts for each event type to the database
- Wrote local environment setup scripts to support setting up customer database, event database, and data warehouse database to use Oracle Database and deploy on Docker on linux
- Created Confluence documentation documenting steps to enable Bloom Filter support for additional event types
National Center for Supercomputing Applications May 2019 - Jan 2020
Research Assistant at BDEEP
- Developed a website for collecting Google Timeline KML location data of users in Cairo Egypt through user cookies using HTML/CSS, Javascript, and Python
- Wrote a pipeline to retrieve KML data in the backend by calling the Google Timeline API using user cookies and persisting and parsing data into a MySQL database with Python
JD.COM May 2018 - Aug 2018
Data Engineer Intern at Division of Personalized Search
- Used Hive and Hadoop to reduce number of duplicate products appearing in a single query from 100,000 to 2,000 by reevaluating number of duplicates within a single cache and not counting ad products
- Wrote scripts to query from JD’s search database and calculate statistics utilizing Hive; provided graphic visualizations observing trends in these statistics across different product positions using Python
-
Projects
Parallelization of Neural Network Training on Handwritten Digits Apr 2020 - Apr 2020
- Designed and implemented kernel code to parallelize sequential code training of three-layer neural network on MNIST dataset on NVIDIA GPU using CUDA and C
- Reduced training time from 274 min to 3 sec with accuracy of 95.1% executing tiled matrix multiplication, optimizing memory coalescence, and utilizing shared memory
Task Management backend service https://tinyurl.com/y4krt75k Apr 2020 - Apr 2020
- Developed backend server implementing RESTful API for a todo list application managing interactions with database storing tasks and users responsible for the tasks utilizing ExpressJS for endpoint routing, Node.js for runtime, MongooseJS and MongoDB for database
- Offers various query parameters for GET requests such as sorting results, filtering results based on JSON query, specifying the number of results to return, returning the count of results, and specifying fields to include in results
Top Rated Movies Website https://tinyurl.com/yyo8z2rx Mar 2020 - Mar 2020
- Designed and built a frontend website containing information about top-rated movies from The Movie Database API leveraging ReactJS. - Included features: sorting search results based on rank, date, and title; filtering movies based on genre; detailed information for each movie