Zheng Mu's CPT Project

From CSclasswiki
Jump to: navigation, search

Program Introduction

During the Summer of 2017, I worked as an Engineering Practicum Intern at Google, in New York city.

The Engineering Practicum (EP) program is a 12-week developmental opportunity for first and second-year undergraduate students with a passion for technology—especially students from historically underrepresented groups including women, Native American, Black, Latino, Veteran and students with disabilities.

The application process took me about a month. I first submitted my application with my resume and three short essays, after a week, I heard from my recruiter and arranged two 45-minute consecutive technical interviews with two different engineers for the next coming week. After my interview, I waited another 2 weeks to receive my offer.

After receiving my offer, I was matched with Cloud team in NYC.



Google Cloud Platform, offered by Google, is a suite of cloud computing services that runs on the same infrastructure that Google uses internally for its end-user products, such as Google Search and YouTube. Alongside a set of management tools, it provides a series of modular cloud services including computing, data storage, data analytics and machine learning.

Project Description

My pod worked on a new storage offering on the Google Cloud Platform. I specifically worked on features for the Beta launch of this product which involves implementing details page and additional UX enhancements. I wrote the design document, implemented a front-end interface, designed the file structure and url routing scheme. In addition, I designed a way for displaying metrics on time series chart, which enhanced the readability of codebase by avoiding duplicated code and can also be adopted by other Google Cloud Platform products.

Languages and Tools

  • AngularJS:

AngularJS is a structural javascript framework for dynamic web apps. Use HTML as template language and extend HTML's syntax to express application's components clearly. AngularJS's data binding and dependency injection eliminate much of the code you would otherwise have to write.

  • Typescript:

TypeScript is a superset of JavaScript which primarily provides optional static typing, classes and interfaces. TypeScript is designed for development of large applications and compiles to JavaScript.

  • Webstorm:

WebStorm is a cross-platform IDE primarily for web, JavaScript and TypeScript development. Many of JetBrain's other IDEs include the feature set of WebStorm via plugins.