I am senior software engineer, with experience at Tiktok and Google.
Effect House
TikTok, San Jose
AR Ads
Google, NYC
Model Viewer
Google, Open Source
Earlier Projects
Construction Planning
Contour Crafting
Cloud Platform for CAD
Autodesk
Gestured VR
Tree Hack
Travel Plan Generation
Cal Hack
Hearthstone Redesign
Software Engineering, USC CSCI 201
SSS Rover Animation
Craft USC
Tiktok Effect House
Creating AR Sticker for Global User
Effect House is a powerful AR tool that makes it easy to create, publish, and share high-quality augmented effects for TikTok.
We launched alpha in 2021, Beta in 2022 and publicly launched in 2023
I lead many features in Effect House. From public facing user experiences: New User Guidance, Submission Flow, Login Flow, and developer oriented frameworks and optimization:
full functioned scripting visualization, application automation and metrics logging.
Google introduced AR beauty features since 2019 to help shoppers easily and confidently find the right product for them. And people are continuing to gravitate toward these tools: In fact, shoppers interact with beauty products 10% more when AR is present.
At AR Beauty, my works including powering AR Beauty Authoring experience, Cloud Powered Thumbnail Rendering, and Client Integration.
Model Viewer is an Open Sourced library to power interactive 3D display on the Web.
My main contribution for the project is the authoring workflow for model viewer, where user can interactively import, modify and preview models. The tool would also generate fully functional model-viewer snippet for exporting.
This was used to power 3D display ads from Google.
Visualization and Design Automation for 3D printing.
Contour Crafting is a layered fabrication technology developed by Dr. Behrokh Khoshnevis of the University of Southern California. Contour Crafting technology has great potential for automating the construction of whole structures as well as sub-components.
I joined the Contour Crafting team on August 2017 and am currently working on visualization of printing process and automation of facility placement on software side.
I designed and implemented Unity framework to visualize printing process of building construction, enabled architects to control printing parameters real time.
I introduced the team with cloud platform provided by Autodesk, reduced the data translation time by 80%.
Quantum is designed to be the next generation of cloud platform for the building information modeling (BIM) industry. It allows architects and developers to collaborate on the same project with minimized data transmission.
Additional Information here.
During my three months of internship at Autodesk, I collaborated with a team with four full time developers to research and develop the central data pipeline of Quantum. My specific responsibility includes building Node.js API server, prototyping front-end web application in 3D and testing applications.
By the end of my internship, the team was able to transimit data with twice the efficiency as before, with also 80% less memory taken on the front end. I contributed 15000+ lines of code on both front-end and back-end with 80+ commits, more than 35% of the codebase.
Cortex is my Capstone (Senior Design) project at University of Southern California. We are collaborating with a start up company in Santa Monica to apply machine learning on business intelligence, predicting the best time and content to post on social media.
I am working with a team of four USC students to extract the data from Facebook, Twitter and Google Analytics, prepare data in RDS, training datasets and deploy training results on AWS. My personal responsibility includes visualize data, prepare data fields and deploy application.
Within a month of development, we have processed the dataset, trained data to predict engagements with 70+% accuracy, and deploy first version on AWS.
Inspired by Leap Motion's Pinch Draw module, Doodle Noodle is a intuitive Virtual Reality game that allows user to actively engage in the gaming space with no controller.
Players use a "pinch and drag" motion to create 3d pathways in mid-air, from point A to G. Bob, the pony will follow along the path and if she hits the moving cube. The game would respond with player's gesture, no controller and keyboard are ever needed to play the game.
During the 36 hours hackathon, we finished the UI/UX design, animation, game logics and integration. My specific responsibility includes game logics and integration on Oculus and Leap Motion SDK.
Hamiltonia was the prototype of ultimate trip planner. We allow user to design the travel plan by simply drawing on the map, approximating the locations and optimizing the schedule.
I lead a team of three developers to finish the application with 36 hours. My specific responsibility includes integrating Google Map API, enabling drawing features and visualizing travel plans.
201 Stone was a group project in CSCI 201 at University of Southern California, we redesigned and developed Hearthstone with professors and students as characters.
I worked with a group of five developers on both the front-end and back-end of the game. Within 2 months, we were able to build the game from scratch up with basic game logics and UI. My personal responsibility includes providing game logics in backend and connecting Java with Unity on both side.
Perfit was a start up making cloth simulation for online shopping. We applied cloth simulation algorithm on body mesh scanned by user's smart phone to provide accurate fitting results.
I collaborated with a team of four to research and develop cloth simulation algorithm applied for practical usage. My personal responsibility includes research different papaers on cloth simulation, manage libraries and deploy application on AWS.
SSS Rover was the grand prize winner of 2016 NASA material challenge, applying 3-D printing process on Mars and Moon with native material. I was honored to make this animation for Professor Behrokh Khoshnevis with his potentially game changing invention.
With in 2 month, I was able to understand the project settings, model the environment, animate the process and render the final picture.