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
TEDxOhioStateUni... Liang-Catch the Spark
Born and raised in China, Rui (pronounced Ray) Liang moved to the U.S....
Duration:
10m 5s
WRWTC - Taicang 2018 - Rui Liang - CHN - Gold
WRWTC - Taicang 2018 - Rui Liang - CHN - Gold.
Duration:
1m 4s
Roar - Katty Perry ft. Rui Liang
I used to bite my tongue and hold my breath Scared to rock the boat an...
Duration:
3m 44s
Cao Zhen's Death (Three Kingdoms [2010 TV ser...
Historically, he died by illness. In the novel, while being ill, kille...
Duration:
9m 13s
Liang Yanning vs Patrick Franziska | MS | WTT...
Download the new WTT app and follow us on social media for a full 360 ...
Duration:
7m 16s
FULL MATCH | Lee Sangsu vs Liang Jingkun | MS...
Watch the FULL match replay of Lee Sangsu vs Liang Jingkun in the Men'...