Airbnb
Staff Software Engineer, Technician Lead
Microsoft Jun 2012 - Apr 2016
Sde Ii
Yahoo May 2011 - Aug 2011
Software Engineer Intern Ii
Education:
Carnegie Mellon University 2010 - 2012
Masters, Computer Science
Peking University
Bachelors, Bachelor of Science, Electrical Engineering
Peking University
Masters, Communications, Engineering, Electronics
Skills:
Java Perl Sql Algorithms Computer Science Algorithm Design Distributed Systems Linux C Python Data Structures Cloud Computing Javascript Software Development C++ Programming Git Mysql Ruby on Rails React C#
Microsoft
Principal Software Engineering Manager
Microsoft Jan 2006 - Sep 2015
Senior Software Engineer
Microsoft Jan 2006 - Sep 2015
Principal Software Engineer
Emc 1999 - 2006
Principal Software Engineer
Education:
University of Massachusetts Amherst 1997 - 1999
Master of Science, Masters, Computer Science
Tsinghua University 1992 - 1997
Bachelors, Computer Science
Skills:
Object Oriented Design Web Services C# Software Engineering Software Development Storage Sip Multithreading C++ .Net Microsoft Azure Cloud Computing Restful Webservices Windows Azure Video Conferencing Html C Xml Unix Win32 Kernel Com Iscsi File Systems Agile Methodologies Scalability Software Project Management Microservices Enterprise Software Representational State Transfer Management
Us Patents
Methods And Apparatus For Accessing Data Using A Cache
Jeffrey L. Alexander - Watertown MA Paul M. Bober - Lexington MA Rui Liang - Framingham MA
Assignee:
EMC Corporation - Hopkinton MA
International Classification:
G06F 1200
US Classification:
711129, 711119, 711 3, 711 4
Abstract:
Mechanisms and techniques disclose a system that provides access to data using a two part cache. The system receives a data access request containing a first data reference, such as an open systems request to access data. The system then obtains a history cache entry from a history cache based on the first data reference and obtains a partition cache entry from a partition cache based on the first data reference. Cache entries contain mappings between open systems reference locations and non-open systems references to locations in the data to be accessed. The system then performs a data access operation as specified by the data access request using a second data reference based upon either the history cache entry or the partition cache entry. Upon performance of the data access operation, the system then updates the history and partition caches with new cache entries and can resize the partition and history caches as needed.
Methods And Apparatus For Accessing Data Using A Cache
Jeffrey L. Alexander - Watertown MA, US Paul M. Bober - Lexington MA, US Rui Liang - Framingham MA, US
Assignee:
EMC Corporation - Hopkinton MA
International Classification:
G06F012/00
US Classification:
711129, 711 3, 711 4, 711 19
Abstract:
Mechanisms and techniques disclose a system that provides access to data using a two part cache. The system receives a data access request containing a first data reference, such as an open systems request to access data. The system then obtains a history cache entry from a history cache based on the first data reference and obtains a partition cache entry from a partition cache based on the first data reference. Cache entries contain mappings between open systems reference locations and non-open systems references to locations in the data to be accessed. The system then performs a data access operation as specified by the data access request using a second data reference based upon either the history cache entry or the partition cache entry. Upon performance of the data access operation, the system then updates the history and partition caches with new cache entries and can resize the partition and history caches as needed.
Management Of The File-Modification Time Attribute In A Multi-Processor File Server System
Stephen A Fridella - Newton MA, US Gang Ma - Shrewsbury MA, US Xiaoye Jiang - Shrewsbury MA, US Sorin Faibish - Newton MA, US Rui Liang - Natick MA, US
Assignee:
EMC Corporation - Hopkinton MA
International Classification:
G06F 15/16 G06F 15/173
US Classification:
709219, 709203, 709217, 709225, 709229
Abstract:
To permit multiple unsynchronized processors to update the file-modification time attribute of a file during concurrent asynchronous writes to the file, a primary processor having a clock manages access to metadata of the file. A number of secondary processors service client request for access to the file. Each secondary processor has a timer. When the primary processor grants a range lock upon the file to a secondary, it returns its clock time (m). Upon receipt, the secondary starts a local timer (t). When the secondary modifies the file data, it determines a file-modification time that is a function of the clock time and the timer interval, such as a sum (m+t). When the secondary receives an updated file-modification time (mp) from the primary, if mp>m+t, then the secondary updates the clock time (m) to (mp) and resets its local timer.
Rui Liang - Natick MA, US Jiannan Zheng - Ashland MA, US Mark K Ku - Braintree MA, US Xiaoye Jiang - Shrewsbury MA, US Sorin Faibish - Newton MA, US
Assignee:
EMC Corporation - Hopkinton MA
International Classification:
G06F 15/16 G06F 7/00 G06F 17/00
US Classification:
709219, 709230, 709233, 707610
Abstract:
A storage object such as a virtual disk drive or a raw logical volume is contained in a UNIX compatible file so that the file containing the storage object can be exported using the NFS or CIFS protocol and shared among UNIX and MS Windows clients or servers. The storage object can be replicated and backed up using conventional file replication and backup facilities without disruption of client access to the storage object. For client access to data of the storage object, a software driver accesses the file containing the storage object. For example, a software driver called a virtual SCSI termination is used to access a file containing a virtual SCSI disk drive. Standard storage services use the SCSI over IP protocol to access the virtual SCSI termination. An IP replication or snapshot copy facility may access the file containing the virtual SCSI disk drive using a higher-level protocol.
Communication Interface For Non-Communication Applications
Yiu-Ming Leung - Kirkland WA, US Rui Liang - Sammamish WA, US Yu Shao - Bellevue WA, US Marcelo Farjalla - Seattle WA, US Li Zhang - Sammamish WA, US Danilo Perez Solano - Redmond WA, US Sergei Osobov - Redmond WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 3/00
US Classification:
719328
Abstract:
Software applications are enabled with multimodal communication capabilities and features associated with enhanced communication systems through a communication application programming interface (API). Applications for document processing, scheduling, audio/video data processing, and/or business operations can exchange communication system data and parameters bi-directionally with components of an enhanced communication system, initiate communication sessions through the application's user interface, and preserve post-communication updates.
Pluggable Token Provider Model To Implement Authentication Across Multiple Web Services
Ranjith Narayanan - Bellevue WA, US Rui Liang - Sammamish WA, US Srivatsa Srinivasan - Renton WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
H04L 29/06
US Classification:
726 9, 713159, 713172, 709225, 709229
Abstract:
A pluggable token provider model for message level authentication across multiple web services is provided. Web service and token provider implementations within a client application are separated from an actual component that operates the business logic to formulate and understand a web request. The web service components may request web services to be executed and supply the body for the web service message while a common framework maintains the web services metadata, which includes definitions associated with respective tokens. The framework may further maintain token provider implementations that actually fetch authentication tokens and perform the web requests.
Amit Gupta - Bellevue WA, US Amritansh Raghav - Seattle WA, US Cindy Kwan - Bellevue WA, US Dejun Zhou - Seattle WA, US Rui Liang - Sammamish WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 17/30
US Classification:
707748, 707804, 707752
Abstract:
Contacts lists are dynamically managed in association with communication and collaboration applications and devices. Automated and user defined factors are determined based on information from various resources such as user profile, contact information, past communication information, application/device types, and comparable ones. Factors may be weighted and employed to prioritize contacts lists under different circumstances. Prioritized contacts lists may be provided to a user, stored, updated, or otherwise processed.
Hybrid Client-Server Protocol For Fast Writes To A File
Xiaoye Jiang - Shrewsbury MA, US Uday Gupta - Westford MA, US Sorin Faibish - Newton MA, US Rui Liang - Natick MA, US
International Classification:
G06F 17/30
US Classification:
707003000
Abstract:
A network file server has storage for storing a file system, and a computer programmed for access to the file system in accordance with a file access protocol and in accordance with a storage access protocol. The computer receives a file access request from a network client for access to a file in the file system in accordance with the network file access protocol. The computer decides whether it should finish the file access using the file access protocol or the client should finish the file access using the storage access protocol. Upon deciding that the client should finish the file access using the storage access protocol, the computer returns to the client metadata of the file including metadata specifying addresses of logical blocks of storage allocated to the file, and then the computer responds to storage access requests from the client by performing read-write access to the file.
Youtube
- Shan Liang - Henan xin yi liu he quan branc...
Le petit fils de L Rui Fang(1908-1999)L... musulman qui a hrit de deu...
Category:
Sports
Uploaded:
05 Dec, 2008
Duration:
1m
ROTK TV SERIES- EPISODE 68 (PART 1 OF 5)
Part 1 of Episode 68 in the Rotk Tv Series : Cao Pi dies, and Cao Rui ...
Category:
Entertainment
Uploaded:
27 Mar, 2009
Duration:
9m 17s
Liang Xiao - Beautiful Evening - erhu
Liang Xiao performed by David M. Dahl May 20, 2011 - Portland, Oregon ...
Category:
Music
Uploaded:
22 May, 2011
Duration:
2m 14s
Black Rose Episode 10 Trailer: Michelle Chong...
Black Rose Episode 10 Trailer: Michelle Chong as Rui En Episode 10, 4 ...
Category:
Entertainment
Uploaded:
01 May, 2010
Duration:
25s
ROTK TV SERIES- EPISODE 72 (PART 1 OF 5)
Part 1 of Episode 72 in the Rotk Tv Series : Zhuge Liang, feeling stre...
Category:
Entertainment
Uploaded:
29 Mar, 2009
Duration:
9m 41s
ROTK TV SERIES- EPISODE 76 (PART 1 OF 5)
Part 1 of Episode 76 in the Rotk Tv Series : In following battle at Sh...
Category:
Entertainment
Uploaded:
30 Mar, 2009
Duration:
10m 46s
ROTK TV SERIES- EPISODE 77 (PART 1 OF 5)
Part 1 of Episode 77 in the Rotk Tv Series : Zhuge Liang, in knowing t...
Category:
Entertainment
Uploaded:
30 Mar, 2009
Duration:
9m 48s
LNY '10 | Temptasians | Bu Hui Fen Li
Temptasians - Bu Hui Fen Li by Guang Liang Soloists: Yujing Xue Alex S...