Introduction
Uber Technologies Inc., from here on out to be abbreviated to simply ‘Uber’, is a global digital car dispatch company headquartered in San Francisco, alifornia. Uber is constantly developing its global mar!et presence and as of "ay #$, #%&', the service (as available in '$ countries and )%% cities (orld(ide&. The company operates the Uber mobile app, (hich allo(s consumers (ith smartphones to submit a trip request *+ to - (hich is then routed to Uber drivers in the near vicinity (ho typically use their o(n cars# to pic! and up drop off clients in the destinations of their choice. In the United States of o f +merica, +merica, Uber operates under the ‘Transportat ‘Transportation ion et(or! ompany’ label. Uber (as founded as /Uberab/ by Travis 0alanic! and 1arrett amp in #%%2 and the app (as released the follo(ing 3une. eginning in #%, Uber e4panded internationally and in #%&5, it e4perimented (ith carpooling features and made other updates. 0lout ran!ed the San Francisco based company as the 5$thmost 5$th most po(erful company in +merica in #%&5. y late#%&', late #%&', Uber (as estimated to be (orth 67#.' billion.) Uber (as first launched in San Francisco, a city notorious for its highly regulated ta4i industry (ith steep prices and insufficient services. The idea, ho(ever, originated in 8aris at the 9e:eb conference; confer ence; a popular internat international ional event event for Internet Internet startups startups.. There There,, 0alanic! 0alanic! met 1arrett 1arrett amp, then o(ner of StumbleUpon, and discussed the possibility of a reliable and quic!ly accessi acce ssible ble bla blac! c! car ser servic vice. e.
o!ingly discussed ideas for a limousine to transport them safely to their hotel rooms. :hile limousines required preboo!ing in advance, Uber (ould gro( rapidly in use and popularity because its smartphone application allo(ed users to access clean and stylish vehicles at any moment and location. This early e4change bet(een the founders (ould coin the origin original al Uber slogan? @Averyone’s @Ave ryone’s 8rivate or success in the greater @shared economy.B 9argely a technology enabled movement, (here the general business model enables companies to help consumers find (ays to rent rather than o(n an e4pensive assetCthe @sharing economy eco nomyBB fee feeds ds on the prefere preferences nces for @e4perien @e4perienceB ceB over @o( @o(ner nershi ship.B p.B Dnl Dnline ine service service companies compani es utiliEe big data and given algorithms algorithms to allo( people to share e4pensive e4pensive goods such as cars, rooms, and other household appliances. :hile sharing among friends, family, and community is nothing ne(, technology companies have formaliEed the practice to ma!e it a scalable and profitable business model. :ith over 7'%% employees and gro(ing, Uber is a technology company that offers a free soft(are platform available on mobile devices for those (ishing to request a ride. +t its core, Uber Uber see! see!ss to matc match h pass passeng enger erss to driv driver ers. s. Th Thee plat platfo form rm is able able to trac trac! ! a user’ user’ss 18S coordinates, even if the user does not !no( (here he or she is, and (ithin minutes, an Uber driver (ill arrive. The user is able to trac! the arrival of the ride, and receives a te4t message confirming (hen the Uber driver has reached the pic!up point. From the driver’s end, he is able to hit a button on his o(n app that says @+rriving o(B (hich sends a te4t message. The driver is never given the user’s phone number directly, but each is able to contact the other through a
number scrambling soft(are (hich allo(s for privacy. Uber typically costs less than a normal ta4i in most mar!ets. Go(ever, in times of high demand, li!e e( Hear’s Ave and sno(storms, @surge pricingB !ic!s in, and rates become any(here from &.' 2 times as high. Financials of the company
Uber (as bootstrapped by its founders and they invested 6#%%,%%% in seed money upon conception in #%%2. In #%&%, Uber raised 6&.#' million in additional funding. y the end of #%&&, Uber had raised 655.' million in funding. In #%&), 1oogle Jentures invested 6#'$ million in the company based on a 6).5 billion pre=money valuation. In
Industry analysis
Aggregator Business Model is a network where firms collect the information about a particular good/service provider, make the providers their partners, and sell their services under its own brand. Since aggregator is a brand, they have to provide services which has a uniform quality and price. This is done through signing up a contract with the partners.
The t(o revenue model follo(ed in aggregator business are? •
•
+ggregators provide the service provider (ith customers and in return charge some commission. *Uber usiness "odel-, or The aggregators negotiate the minimum price at (hich the service provider (ill (or! and then gives the final price to the customers *Dyo usiness "odelImportant (ays in (hich aggregators tries to increase their profit margins are? Broadening footprint Cashless payment Improving User experience Products Pricing
"ost aggregators run on very asset=light models. This means someone else o(ns the infrastructure, the people, the maintenance, the depreciation, the compliance and the domain e4pertise = these companies come in a hoist an app on top it and call all of it their o(n. Uber’s gro(th over the past five years is an e4ample of a ma>or success in the greater @aggregator business.B 9argely a technology enabled movement, (here the general business model enables companies to help consumers find (ays to rent rather than o(n an e4pensive asset Cthe @sharing economyB feeds on the preferences for @e4perienceB over @o(nership.B Dnline service companies utiliEe big data and given algorithms to allo( people to share e4pensive goods such as cars, rooms, and other household appliances. :hile sharing among friends, family, and community is nothing ne(, technology companies have formaliEed the practice to ma!e it a scalable and profitable business model.
g n i c i r P e g r u S > w o l e t i u q s i t s o c l a n o i t a r e p O > m e t s y s g n i t a r l a u D > n o i t i t e p m o c e l t t i l y r e V > s r o t s e v n i t e k c o p p e e D >
h t g n e r t S
Threat
Weakness
> Privacy concerns > ontroversies > !asily imita"le > #npredicta"le "usiness model
Swo t
> $ow%pro&t margins > Strict rules and regulations > $ocal service provders > Fraud and scandals
y r e v i l e D d o o F ) y r e v i l e D e g a k c a P > s r a d e t a m o t u ( > d e s u e " n a c s r a c c i r t c e l e r e p a e h > n o i t a l u p o p n a " r # g n i w o r ' >
s e i t i n u t r o p p O
Pioneering *ech
Uber is mainly !no(n for its proprietary surge pricing algorithm but the compan y on the line of apple has patented almost everything of its app form the design, user interface and the icons. It appears that its main strategy in protecting its intellectual property is through the use of utility patent protection. The utility patents that Uber currently o(ns are mainly directed to business methods, Uber runs the ris! that it (ill lose its protections if faced (ith a la( suit, even after it has disclosed its methods to the public through the patents. Uber acquired dearta, 99, (hich had built a mapping platform that offers search, @near=me=no(B discovery, turn=by=turn directions and location +8Is. It is currently listed as the assignee &5 patents, and ') pending patent applications, #7 applications have yet to be e4amined. Df the remaining #L patent applications, Uber has received &% final re>ections. Uber currently has filed at least 7 Mequests for ontinuing +pplications and is involved in at least 5 +ppeals. In at least ) patent applications, Uber has filed multiple MAs and +ppeals, in order to defend its intellectual property.
Some of the patents held by Uber are? •
Augmenting transport services using driver profiling : Uber collects the data of its driver not only from the customers, but also has many sensor devices installed in the car (hich gives information regarding the driving style of the driver, after the driver has
completed fe( trips enough training is available to learn the driving pattern of the driver. The collected data helps in providing customer (ith the preferred driving style driver. •
System and method for dynamically adjusting prices for services: The method for dynamically ad>usting prices for services provided. 8rocessors determines the amount of requesters for a service at a given time and an amount of available service providers for providing the service. + price, relative to the base price, for using the service is ad>usted based on the determined amount of requesters and the determined amount of available service providers. The ad>usted price is transmitted to one or more requesting devices and be indicative of an ad>ustment in price as compared to the default price.
Enaling a user to verify a price change for an on!demand service ? The method enables users to verify the price change for an on=demand service. Dne or more processors determines a real=time price for providing the on=demand service to the user. Then determine (hen the real=time price is equal to or e4ceeds a given threshold price. In response the higher price is sho(n to the user and user is as!ed to input the increased price manually to accept it.
•
"ransitioning user interface features for on!demand services through use of portale computing devices: The method of operating a digital device for on=demand service. The user interface of the application running on device is displayed. The user interface (ill have different panels in fi4ed locations. The device (ill receive input from the user and (ill display some ne( information in the panels (hich (as not displayed before ta!ing the user input.
Fraud Detection
Dne of the ma>or problems bugging the technology based businesses are the fraud detection. 1reater the dependency of the business on technology also ma!es it more vulnerable to frauds and mal(are attac!s. So it becomes important to have an efficient and robust fraud detection system at place (hich can prevent such activities.
Fraud detection has become the one of the most important area of research and development in Uber >ust after the automation pro>ect. +s the platform is gro(ing day b y day, the threat of frauds has also increased e4ponentially, and it becomes very difficult to catch these frauds manually so the company is in dire need of a fraud prevention system. Dne of the main problem is that the opportunity cost of detecting the (rong person is very high, as it leads to loss of business. So they are (or!ing on developing neural net(or!s (hich can learn quic!ly and has very lo( miss rates, and moreover can predict for any future threats. The frauds are mainly of t(o types?
+ider,s Fraud- The most common fraudulent activity on Uber is (hen riders create multiple accounts to get free rides and use the referral mechanism to earn free Uber cash. For e4ample, (hen Uber (as first launched in handigarh people started ma!ing different fa!e accounts on the app to get the benefit of the referral mechanism, at that time Ms'%% (orth of Uber cash (as credited on a successful referral and one mobile sim (as available for Ms#% so people bought sims in large numbers and created bogus accounts to earn the Uber cash. 9ater (hen this activity came under the radar, company started flagging the mobiles operating multiple accounts from the same phone, but till then the damage (as already done. Driver,s fraud- These frauds are most difficult to detect, in this the driver as!s his friends and relatives to boo! multiple short rides in order to earn the per ride incentive. In some cases, the driver purposely re>ects the ride in order to increase he surcharge pricing. Till date Uber have no automatic system to detect these frauds and they are generally caught mechanically. Uber’s success relies on machine learning, data science, and large=scale distributed systems to innovate in these technical domains, and it is this ne4t generation of development that (ill build our success. A4perienced systems engineers (ill transform our e4isting infrastructure into highly scalable, online machine learning platforms that can deal (ith ever=increasing transactional demands in real=time.
.aster.ind-
It is a rules engine that can detect highly evolved forms of fraud in a fraction of a second. Uber doesn’t (ant to interrupt the seamless e4perience for riders and driver partners, the algorithm should deduce a rider’s ability to payCand detect an y fraudCin a fraction of a second. The fraud prevention scope covers payment fraud, account ta!eover, driver=partnerNrider collusion, and promotion abuse. Measons for choosing rule engine over machine learning engine?
•
Fraudsters act faster than (e can train a machine learning model.
•
There are cases (here heuristics are more accurate than training data.
•
•
uild models for the important and complicated events, li!e trip requests, and use rules for everything else. Incredibly easy for analysts to use
+nalysts can (rite, test, and deploy a rule (ithin minutes. 1iven a problem, a set of user features, and a business model, they can (rite a rule and test by running the rule in Evaluate mode. + status of Evaluate means that the rule is being run but (on’t actually affect the user, >ust logging data to analyEe later. Dnce it is successfully tested the status of Active can be given and ma!ing it live.
Pro"lems-
"ost rules are effective only for several (ee!s; then fraudsters adapt, and rules end up (ith more false positives. eed to automatically evaluate the effectiveness of rules over time. If the confidence is not high enough send cases for manual revie(.
Integrating the processes-
Uber uses "ySO9 for database management but don’t have any 1UI for its employee, so they do(nload the data in spreadsheets to (or! on it and multiple spreadsheets are there and they have to toggle from on sheet to another to loo! for the data. Integrating the "ySO9 (ith spreadsheets (ill help in better analyEing the data.
'IS - + geographic information system *or 1IS- is a system designed to capture, store, manipulate, analyEe, manage, and present spatial or geographic data. The t(o 1IS used at Uber are? •
#apping: It is used for finding the best routes for travelling. It is also used to generate the heat mat of the riders and drivers; this information is then fed into
•
$ocation: It is used to find the location of the rider and the driver’s in the vicinity of the rider so that the rider could be connected to the driver that (ill have minimum arrival time.
"PS: + transaction processing system *T8S- or transaction server is a soft(are system, or soft(areNhard(are combination, that supports transaction processing.
Personal account? 8hishing is one of the difficult challenges for any enterprise. :ell e4ecuted phishing attac!s can tric! people into ma!ing costly mista!es. Thus the email id verification during the creation of personal account is very important, and Uber has developed its o(n email intrusion detection system. Measons for developing its o(n system?
%ast and &eliale: Solving for speed and performance is a constant priority at Uber. "any commercial I
•
•
%uture!Proof: +n important e4pectation for solutions to build in=house is the ability to scale and adapt as the company gro(s and threats evolve. Cost Effective: uilding their o(n solution reduced their annual costs to a fraction of the price of a commercial solution. :ith a cloud based storage service such as +:S, it can closely monitor costs and ma!e immediate ad>ustments based on our needs. Extensiility and Beyond: :ith an e4tensible platform, it can continuously e4plore and add ne( capabilities as micro services are developed on the team, such as analysis for natural language processing, analysis of
/usiness statement- Travelers getting them from point + to point need e4pense reporting, integration (ith travel management systems, centraliEed payment methods, and the ability to give the right sets of people the right options to get around. The ride receipts for(arded to rider’s email, and also to the Uber app from (here the rider can also vie( his previous rides.
Verifying a +ide- ustomers uses the centraliEed platform, (hich have ride policies, ride is accepted only (hen the policy applies. From the customer’s perspective, they need a simple but po(erful system that let them evaluate these rules in real time; as they don’t (ant the rider to (ait. This means that the upper bound for acceptable performance, even including outliers, is some(here in the region of tens of milliseconds. To ensure that the system performed (ell enough to insert into the request flo(, the logic that e4ecutes (hen a rider requests a car.
'#S: 0no(ledge management systems refer to any !ind of IT system that stores and retrieves !no(ledge, improves collaboration, locates !no(ledge sources, mines repositories for hidden !no(ledge, captures and uses !no(ledge, or in some other (ay enhances the 0" process.
•
Uber has developed ") in 1o to collect and store metrics from every part of Uber Angineering *every server, host service, and piece of code-.+fter they collect the data, they build dashboards and graphs by modifying 1rafana to more e4pressively conte4tualiEe information. Avery engineer (atching a dashboard tends to care about data in a particular location or region, around a set of e4periments, or related to a certain product. They have added data slicing and dicing to 1rafana.
#"er *ech Stack
/ottom- Platform
Infrastructure and Storage
Uber’s business runs on a hybrid cloud model, using a mi4 of cloud providers and multiple active data centers. If one data center fails, trips *and all the services associated (ith trips- fail over to another one. They assign cities to the geographically closest data center, but every city is bac!ed up on a different data center in another location. This means that all of their data centers are running trips at all times; they have no notion of a @bac!upB data center. To provision this infrastructure, (e use a mi4 of internal tools and Terraform. They currently use Schemaless *built in=house on top of "ySO9-, Mia! , and assandra. Schemaless is for long=term data storage; Mia! and assandra meet high= availability, lo(=latency demands. They have mover from 8ostgress to "ySO9 discussed further under the same topic.
Logging
Uber services interact (ith each other and mobile devices, and those interactions are valuable for internal uses li!e debugging as (ell as business cases li!e dynamic pricing. For logging, they use multiple 0af!a clusters, and the data is archived into Gadoop andNor a file storage (eb service before it e4pires from 0af!a. App Provisioning
Using obs. Routing and Service Discovery
Service=oriented architecture *SD+- ma!es service discovery and routing crucial to Uber’s success. Services must be able to communicate (ith each other in their comple4 net(or!. They use a combination of G+8ro4y and Gyperbahn to solve this problem. Gyperbahn is part of a collection of open source soft(are developed at Uber? Mingpop, Thannel, and Gyperbahn all
share a common mission to add automation, intelligence, and performance to a net(or! of services. Development and Deploy
Uber Angineering strives to ma!e development simulate production as closely as possible, so they develop mostly on virtual machines running on a cloud provider or a developer’s laptop. They have their o(n internal deployment system to manage builds. 3en!ins does continuous integration. They have combined 8ac!er , Jagrant, oto, and Unison to create tools for building, managing, and developing on virtual machines. They use lusto for inventory management in development. 8uppet manages system configuration. Languages
+t the lo(er levels, Uber’s engineers primarily (rite in 8ython, ode.>s, 1o, and 3ava. They started (ith t(o main languages? ode.>s for the "ar!etplace team, and 8ython for everyone else. These first languages still po(er most services running at Uber today.They have also adopted 1o and 3ava for high performance reasons Testing
T(o internal tools? Gailstorm and u
agios alerting for monitoring, tied to an alerting system for notifications. Anomaly (etection
+rgos, their in=house anomaly detection tool, e4amines incoming metrics and compares them to predictive models based on historical data to determine (hether current data is (ithin the e4pected bounds. Acting on #etrics
Uber’s P"onitor tool enables engineers to vie( this information and thresholding *either static or +rgos’s smart thresholding- and ta!e action on it. If a stream of data goes out of boundsCsay trips drop belo( a certain threshold in some cityCthis information gets passed to the ommon +ction 1ate(ay.
.iddle- .arketplace
"ar!etplace, the frontmost end of the Uber engine, funnels the real=(orld, real=time requests and locations into the engineering chutes and ladders of Uber. The persistence layer, matching system, and real=time transaction pieces live here. It also houses much of the logic for products li!e UberMUSG and UberA+TS. "ar!etplace has the highest availability requirements at Uber.
The dge
The frontline +8I for the mobile apps consists of over 7%% stateless endpoints that >oin together multiple services. It routes incoming requests from our mobile clients to other +8Is or services. It’s all (ritten in ode.>s. This part of "ar!etplace integrates (ith a number of internal infrastructure initiatives. !ighly Available" Self#!ealing" Persistent
Mingpop, a library for building cooperative distributed systems, solved some of "ar!etplace’s problems before its adoption in other teams at Uber and beyond. It gives the high=availability, partition=tolerant properties of distributed databases li!e
assandra and 1o are primarily used the main reason being speed. assandra scales (ell out of the bo4, and 1o compiles e4tremely fast. $ptimi%ing and Balancing
"ar!etplace teams control optimiEation and balance through dynamic pricing, supply positioning, intelligent matching, and health. The stac! is re(ritten in 1o for higher performance. loc!s on net(or! calls and IND slo(ed our services in (eird (ays, requiring more capacity and services provisioned to get the same request throughput. Seeing and &sing Data
Uber uses 3avaScript for (eb front=end applications. MeactQFlu4, <), and "apbo4 are the libraries and frame(or!s behind this group.
*op- 0e" and .o"ile
:eb and mobile engineers share many elements (ith the lo(er parts of the stac!, but many technologies are unique to the top. 'eb
reate and promote modular, separately=deployed (eb apps (ith shared user interfaces and a unified user e4perience. $anguages
ode.>s is used so that sharing 3avaScript code bet(een client and server to create universal *isomorphic- (eb applications. )e Server
edroc!, is built on top of the (idely popular (eb frame(or! A4press.>s, (hich has a set of default middle(are to provide security, internationaliEation, and other Uber=specific pieces that handle infrastructure integration. Android
Dn the +ndroid side, 1radle is our build system. They use D!Gttp, Metrofit, and 1son for net(or!ing. ection frame(or!. The Aspresso e4tension enables us to (rite a lot of native automation code using familiar +ndroid S<0s (ithin the I
iDS code lives in a monorepo that (e build (ith uc! . "asonry and Snap0it (ith +uto 9ayout help (ith component placement and siEing. For crash detection, they use 0Srash and report the crashes using their internal reporting frame(or!.