I build games and full-stack web application as a means to impact the world. I have interest and experience in web dev, game dev, cloud computing technologies, big data analytics and machine learning.
Games
Last Semester, I worked on the Team Wonderland to build game prototypes in Oculus Rift to teach basic programming knowledge. To know more about Project Wonderland, please visit http://www.etc.cmu.edu/projects/wonderland/
Also, feel free to check out the games built for Building Virtual World Class in five different rounds!
Web Devs
Check out dsa-shin.com. The next generation chatbot builder that helps you build an intelligent chatbot in messnger.
Agent Shin was a 3-month effort full stack web application, built using MEAN stack. I and the other two team members developed the application using our summer time. We had a vision that chatbot was going to revolutionize the industry.
Through the Nodejs backend, we made request to Facebook using its APIs to authorize the user on our website, and thus connect his account to our database. With authorization and the public page on which the user wants to install the chatbot, he will configure his chatbot logic in the following dashboard.
The front-end part of the application was built using AnguarJS with Google Angular Material. I was the guy building most of the front-end, handling API calls and user authentications, and even CSS styling. With the use of AngularJS, we gained the benefit of having reusable components(directives) and separate controller modules for different pages, which made it very easy for us to develop and maintain independently.
I also contributed to the file uploading feature in backend development. Since we allow users to upload the images they want to use for messages sent by their chatbot, we decided to develop this feature. Because our time was very limited, I offered to complete this feature and it worked very well.
The product is not officially launched for public usage, but I have set the link up for you to have a look!
Cloud Computing / Scalability
I have completed the Spring 2017 Cloud Computing Course at Carnegie Mellon University. It was a great class! Through the class, I get experience configuring scalable web applications on AWS, Azure and Google Cloud Platform. I had exposure to latests technologies in cloud computing field: Hadoop MapReduce, Docker and Kubernetes, and distributed NoSQL database like HBase, MongoDB.
We also had a chance to resolve consistency-level problem relating to databases under multi-threading server. Also, we learned different map-reduce paradigms (Batch Processing, Iterative Processing and Stream Processing). For Iterative Processing, we were introduced Spark and coded up a scala program that runs page rank algorithm. For Stream Processing, we had a chance to use Samza and Kafka to process streams in real time.
In the end, we implemented a twitter analytics web service on the cloud. This was the most challenging and most interesting project for the class. We used all the knowledge learned from individual project, and was able to rank top 10 among 66 teams in the finial live test.
Specifically, we first performed ETL on the raw data from twitter. Then we chose to use Java Undertow as server and wrote the server code to handle different queries. Queries include message decoding, data filtering, sorting and ranking, range query, data insertion, update, and deletion, and shortest-path finding in a graph.
Moreover, during my time at UCLA, I had a chance to develop a highly scalable Ruby on Rails web application called Pickachu. Check out the Performance Summary Slide HERE.
Machine Learning / Computer Vision
During my time at UCLA, I had a chance to work with a professor Fabien on Automatic Co-registering MRI Images using Machine Learning techniques. For this project, I familiarized myself with using Matlab to extract patches from images and detect features. I used Linear Regression, Multilinear Regression and Spectral Regression to train the model, each of them leading to better result incrementally. Cross-validation was used to validate the effectiveness of the model. Check out the report HERE.
I was also able to use matlab to perform image stitching(Mosaic) for Computer Vision class at UCLA. Checkout the report HERE.