SlideShare a Scribd company logo
1 of 40
Rakuten Ichiba globalisation - 
Challenges and solutions 
Rakuten Technology Conference 2014 
Oct. 25th 2014 
Olivier Claquin 
Rakuten Ichiba Department 
http://global.rakuten.com
2 
Me 
Who I am 
French, please bear with my accent… 
What I was 
A consultant in system integration and Service Oriented 
Architecture 
What I am 
Since 2013, I am part of the E-Commerce Architecture 
group. I am currently working on integrating the Rakuten 
Group's e-commerce systems.
3 
The history of Rakuten Ichiba globalisation 
1997: Opening of Japan Ichiba 
2008: Opening of Taiwan Ichiba 
2010-: Rakuten acquired several e-commerce companies 
around the world 
2011: Japanese merchants can sell their products 
overseas (outside of Japan) 
2012-: Rakuten started to open new E-commerce 
websites in new countries on a regular basis 
2013-: Rakuten started to consolidate the group E-commerce 
systems
4 
Current Rakuten Ichiba marketplaces
5 
From a Japan-only platform to a global platform 
The challenges 
Part 1 – To a unified platform 
Part 2 – To a multi-language system 
Part 3 – To an expendable and extensible system 
Part 4 – To a global ‘one team’
From a Japan-only platform to a global 
platform 
Part 1 – To a unified platform 
Part 2 – To a multi-language system 
Part 3 – To an expendable and extensible system 
Part 4 – To a global ‘one team’
7 
The idea seems great but 
1. Are the features even compatible from one 
system to another? 
2. How well do we know our system? 
3. How can we inter-connect systems?
8 
Borders between marketplace specific and global features 
• Each marketplace does things differently 
• Where does global start/end? 
=> Our product management team manages 
case by case 
=> Build a feature gaps backlog 
Image source: http://commons.wikimedia.org/wiki/File:Information1.svg
9 
Know yourself first 
• We have system metrics, but are they 
meaningful? 
• How can we compare 2 systems that use 
different technologies? 
=> Go back to user stories
10 
And our user stories look like 
Shopper Merchant 
Buy a product 
Cancel an order 
Register as a member 
… 
Update product price 
Update order status 
… 
Mall UI Merchant UI 
Ichiba Backend
11 
Inter-connecting systems, but how? 
• In complex environments, integration often 
requires an additional layer (ESB, EAI, …) 
• It is quite nice, but we want to keep it simple 
and extensible 
=> We chose to use HTTP based “APIs” in 
our system design 
• ESB: Enterprise Service Bus 
• EAI: Enterprise Application Integration
12 
Let’s go back in time… 
UI Application External System UI Application 
Data 
source 
Data 
source
13 
UI Application External System 
Data API 
Data 
source 
Data API 
Data 
source 
UI Application 
And fast forward
14 
UI Application 
And fast forward 
UI Application External System 
Data 
source 
Service API 
Data API 
Data API 
Data 
source 
Service API 
Caching 
Quality of Service 
…
15 
API 
• Did you say API? 
• How do we use them in our systems 
– They provide data to the presentation layer 
– Some level of abstraction is good! 
• How do they help integrating systems? 
– Simplify the technical integration
16 
We can go from 
System 
For marketplace A 
System 
For marketplace B 
???
17 
To the following 
System A System B ? 
Item API 
Campaign API 
Order API 
Mall UI 
Item API 
Billing system 
? 
?
18 
Test: what, when, how? 
• Integration tests, but what to test and how? 
=> 60% to 75 % of our UIs tests are 
automated 
=> Elaborate end-to-end scenarios
From a Japan-only platform to a global 
platform 
Part 1 – To a unified platform 
Part 2 – To a multi-language system 
Part 3 – To an expendable and extensible system 
Part 4 – To a global ‘one team’
20 
Global Shopping 
• We want to help our merchants to sell their 
products in other markets 
=> Therefore, we offer the ability to 
merchants to translate their items to different 
languages 
Fact: 97% of our translations are automatic!
21 
Translation IS rocket science 
• No translation engine is perfect so we are using 
a mix of several translation engines 
• Each of those engine has its specificities that we 
have to learn 
• We are also improving the quality of those 
translations (e.g.: katakana processing)
22 
Our next target: images 
2個セット 
50%OFF 
ポイント10倍 
Buy 1, get 1 free 
and x10 points
From a Japan-only platform to a global 
platform 
Part 1 – To a unified platform 
Part 2 – To a multi-language system 
Part 3 – To an expendable and extensible system 
Part 4 – To a global ‘one team’
24 
Expandable = we can scale 
• For our Global Platform, all our applications are 
deployed in an R-PaaS Platform 
• It abstracts the Operating System layer, as well 
as the Virtual Machine layer and the physical 
layer
25 
RPaaS modules 
rpaas instances my_application +1 
Application 
Server 
O.S. (Linux) 
How does R-PaaS work? 
Load balancer 
Application 
WAR, Ruby… 
RPaaS modules 
Application 
Server 
Application 
WAR, Ruby… 
O.S. (Linux)
26 
How does R-PaaS work? 
RPaaS modules 
Application 
Server 
O.S. (Linux) 
Load balancer 
Application 
WAR, Ruby… 
RPaaS modules 
Application 
Server 
Application 
WAR, Ruby… 
O.S. (Linux) 
RPaaS modules 
Application 
Server 
Application 
WAR, Ruby… 
O.S. (Linux)
27 
Serving users from all over the world 
• We use Akamai for caching and serving 
customers all over the world 
• Because our system is based on HTTP calls, we 
can dispatch those components in different 
data centres 
• Our short term goal is to be able to do the same 
with our data storage layer 
=> If the application supports it, scale out
28 
Extensible = we can add new features easily 
• As the system grows, how can we add new 
features? 
• How do I know that my new feature does not 
break anything? 
• How do I develop features that make a 
difference to the business? 
=> We use event driven processing
29 
We have users and we have events 
Shoppers Merchants 
Buy a product 
Cancel an order 
Register as a member 
… 
Update product price 
Update order status 
… 
Mall UI Merchant UI 
Ichiba Backend An order has been created 
An order status has changed 
A product has been updated 
A new user has registered 
…
30 
So we have a database and we have an event bus 
Shoppers Merchants 
Buy a product 
Cancel an order 
Register as a member 
… 
Update product price 
Update order status 
… 
Mall UI Merchant UI 
Ichiba Backend 
An order has been created 
An order status has changed 
A product has been updated 
A new user has registered 
… 
Update product 
Update membership 
Update order 
…
31 
Events are meaningful, use them wisely 
• Search is expensive, generating / consuming 
events is not 
• For example, we use this pattern for: 
– invalidating cache 
– sending out notifications 
– rebuilding our search engine index 
• We can go further and bring new capabilities to 
our businesses
From a Japan-only platform to a global 
platform 
Part 1 – To a unified platform 
Part 2 – To a multi-language system 
Part 3 – To an expendable and extensible system 
Part 4 – To a global ‘one team’
33 
Language is only one problem 
In a global environment: 
• How do we assign tasks? 
• How do we share progress? 
• How do we make decisions? 
=> Collaborative tools do help but mostly, 
we have to educate ourselves
34 
About the usefulness of a glossary… 
• Like I mentioned in part 1, each team knows 
their own system 
• The problem is, that when you have similar 
systems, you tend to make easy shortcuts 
• Those shortcuts create a lot of 
misunderstanding 
=> Create a glossary
35 
About the usefulness of a glossary… 
Concept Meaning 
Glossary A table like this one  
Item An item is defined by a 
merchant […] 
Product A product is an item sold on 
a marketplace […] 
=> Create a glossary
In a nutshell
37 
Today I suggested to 
Describe your system with user stories 
Automate your tests 
Offer automatic translation to merchants 
and shoppers 
Use APIs to make system integration easier 
Design your application for scaling out 
Use the event driven paradigm 
Learn how to work in a global environment 
Build a glossary
38 
olivier.claquin@mail.rakuten.com 
Thank you for your attention!
Bonus slides / Annexes
40 
Bonus slide – how do we track progress when working 
remotely 
• Atlassian on-demand and Atlassian on premise 
• Jira for issue, features tracking 
• Confluence for information sharing

More Related Content

What's hot

Oracle ebs overview 1
Oracle ebs overview 1 Oracle ebs overview 1
Oracle ebs overview 1 Sovanlal Das
 
B2 oracle mobile_any_app_to_any_service_lets_go
B2 oracle mobile_any_app_to_any_service_lets_goB2 oracle mobile_any_app_to_any_service_lets_go
B2 oracle mobile_any_app_to_any_service_lets_goDr. Wilfred Lin (Ph.D.)
 
B1 keynote reimagine_application_development_and_delivery_with_oracle_platform
B1 keynote reimagine_application_development_and_delivery_with_oracle_platformB1 keynote reimagine_application_development_and_delivery_with_oracle_platform
B1 keynote reimagine_application_development_and_delivery_with_oracle_platformDr. Wilfred Lin (Ph.D.)
 
What's New in Unifier 16.1
What's New in Unifier 16.1What's New in Unifier 16.1
What's New in Unifier 16.1p6academy
 
Oracle CRM On Demand Product Strategy And Roadmap
Oracle CRM On Demand Product Strategy And RoadmapOracle CRM On Demand Product Strategy And Roadmap
Oracle CRM On Demand Product Strategy And RoadmapJerome Leonard
 
OOW15 - case study: oracle application management suite for oracle e-business...
OOW15 - case study: oracle application management suite for oracle e-business...OOW15 - case study: oracle application management suite for oracle e-business...
OOW15 - case study: oracle application management suite for oracle e-business...vasuballa
 
OOW15 - Building, Deploying, and Managing Smartphone Apps for Oracle E-Busine...
OOW15 - Building, Deploying, and Managing Smartphone Apps for Oracle E-Busine...OOW15 - Building, Deploying, and Managing Smartphone Apps for Oracle E-Busine...
OOW15 - Building, Deploying, and Managing Smartphone Apps for Oracle E-Busine...vasuballa
 
Siebel CRM Strategy & Roadmap
Siebel CRM Strategy & Roadmap Siebel CRM Strategy & Roadmap
Siebel CRM Strategy & Roadmap crm2life
 
OOW16 - Oracle E-Business Suite: What’s New in Release 12.2 Beyond Online Pat...
OOW16 - Oracle E-Business Suite: What’s New in Release 12.2 Beyond Online Pat...OOW16 - Oracle E-Business Suite: What’s New in Release 12.2 Beyond Online Pat...
OOW16 - Oracle E-Business Suite: What’s New in Release 12.2 Beyond Online Pat...vasuballa
 
Powering Business Transformation with Oracle Exadata: a Capgemini Case Study
Powering Business Transformation with Oracle Exadata: a Capgemini Case StudyPowering Business Transformation with Oracle Exadata: a Capgemini Case Study
Powering Business Transformation with Oracle Exadata: a Capgemini Case StudyCapgemini
 
OOW15 - Standards-Based Desktop Integration in Oracle E-Business Suite
OOW15 - Standards-Based Desktop Integration in Oracle E-Business SuiteOOW15 - Standards-Based Desktop Integration in Oracle E-Business Suite
OOW15 - Standards-Based Desktop Integration in Oracle E-Business Suitevasuballa
 
Use of unifier with primavera
Use of unifier with primaveraUse of unifier with primavera
Use of unifier with primaveragjmstleonards
 
Lightning Connect: Lessons Learned
Lightning Connect: Lessons LearnedLightning Connect: Lessons Learned
Lightning Connect: Lessons LearnedSumit Sarkar
 
OOW15 - Customer Success Stories: Upgrading to Oracle E-Business Suite 12.2
OOW15 - Customer Success Stories: Upgrading to Oracle E-Business Suite 12.2 OOW15 - Customer Success Stories: Upgrading to Oracle E-Business Suite 12.2
OOW15 - Customer Success Stories: Upgrading to Oracle E-Business Suite 12.2 vasuballa
 
Weblogic 12c experiences - migrations from iAS-platform
Weblogic 12c experiences - migrations from iAS-platformWeblogic 12c experiences - migrations from iAS-platform
Weblogic 12c experiences - migrations from iAS-platformJon Petter Hjulstad
 
Delivering Mobile Apps to the field using Oracle
Delivering Mobile Apps to the field using OracleDelivering Mobile Apps to the field using Oracle
Delivering Mobile Apps to the field using OracleSimon Haslam
 
Two Unique Challenges NetApp has tackled while Implementing Machine Translati...
Two Unique Challenges NetApp has tackled while Implementing Machine Translati...Two Unique Challenges NetApp has tackled while Implementing Machine Translati...
Two Unique Challenges NetApp has tackled while Implementing Machine Translati...TAUS - The Language Data Network
 
Open erp
Open erpOpen erp
Open erpsgshiva
 

What's hot (20)

Oracle ebs overview 1
Oracle ebs overview 1 Oracle ebs overview 1
Oracle ebs overview 1
 
8iliteds
8iliteds8iliteds
8iliteds
 
B2 oracle mobile_any_app_to_any_service_lets_go
B2 oracle mobile_any_app_to_any_service_lets_goB2 oracle mobile_any_app_to_any_service_lets_go
B2 oracle mobile_any_app_to_any_service_lets_go
 
B1 keynote reimagine_application_development_and_delivery_with_oracle_platform
B1 keynote reimagine_application_development_and_delivery_with_oracle_platformB1 keynote reimagine_application_development_and_delivery_with_oracle_platform
B1 keynote reimagine_application_development_and_delivery_with_oracle_platform
 
What's New in Unifier 16.1
What's New in Unifier 16.1What's New in Unifier 16.1
What's New in Unifier 16.1
 
Oracle CRM On Demand Product Strategy And Roadmap
Oracle CRM On Demand Product Strategy And RoadmapOracle CRM On Demand Product Strategy And Roadmap
Oracle CRM On Demand Product Strategy And Roadmap
 
OOW15 - case study: oracle application management suite for oracle e-business...
OOW15 - case study: oracle application management suite for oracle e-business...OOW15 - case study: oracle application management suite for oracle e-business...
OOW15 - case study: oracle application management suite for oracle e-business...
 
OOW15 - Building, Deploying, and Managing Smartphone Apps for Oracle E-Busine...
OOW15 - Building, Deploying, and Managing Smartphone Apps for Oracle E-Busine...OOW15 - Building, Deploying, and Managing Smartphone Apps for Oracle E-Busine...
OOW15 - Building, Deploying, and Managing Smartphone Apps for Oracle E-Busine...
 
Siebel CRM Strategy & Roadmap
Siebel CRM Strategy & Roadmap Siebel CRM Strategy & Roadmap
Siebel CRM Strategy & Roadmap
 
OOW16 - Oracle E-Business Suite: What’s New in Release 12.2 Beyond Online Pat...
OOW16 - Oracle E-Business Suite: What’s New in Release 12.2 Beyond Online Pat...OOW16 - Oracle E-Business Suite: What’s New in Release 12.2 Beyond Online Pat...
OOW16 - Oracle E-Business Suite: What’s New in Release 12.2 Beyond Online Pat...
 
Powering Business Transformation with Oracle Exadata: a Capgemini Case Study
Powering Business Transformation with Oracle Exadata: a Capgemini Case StudyPowering Business Transformation with Oracle Exadata: a Capgemini Case Study
Powering Business Transformation with Oracle Exadata: a Capgemini Case Study
 
OOW15 - Standards-Based Desktop Integration in Oracle E-Business Suite
OOW15 - Standards-Based Desktop Integration in Oracle E-Business SuiteOOW15 - Standards-Based Desktop Integration in Oracle E-Business Suite
OOW15 - Standards-Based Desktop Integration in Oracle E-Business Suite
 
Use of unifier with primavera
Use of unifier with primaveraUse of unifier with primavera
Use of unifier with primavera
 
Lightning Connect: Lessons Learned
Lightning Connect: Lessons LearnedLightning Connect: Lessons Learned
Lightning Connect: Lessons Learned
 
OOW15 - Customer Success Stories: Upgrading to Oracle E-Business Suite 12.2
OOW15 - Customer Success Stories: Upgrading to Oracle E-Business Suite 12.2 OOW15 - Customer Success Stories: Upgrading to Oracle E-Business Suite 12.2
OOW15 - Customer Success Stories: Upgrading to Oracle E-Business Suite 12.2
 
Weblogic 12c experiences - migrations from iAS-platform
Weblogic 12c experiences - migrations from iAS-platformWeblogic 12c experiences - migrations from iAS-platform
Weblogic 12c experiences - migrations from iAS-platform
 
Delivering Mobile Apps to the field using Oracle
Delivering Mobile Apps to the field using OracleDelivering Mobile Apps to the field using Oracle
Delivering Mobile Apps to the field using Oracle
 
Ebr the key_to_online_application_upgrade at amis25
Ebr the key_to_online_application_upgrade at amis25Ebr the key_to_online_application_upgrade at amis25
Ebr the key_to_online_application_upgrade at amis25
 
Two Unique Challenges NetApp has tackled while Implementing Machine Translati...
Two Unique Challenges NetApp has tackled while Implementing Machine Translati...Two Unique Challenges NetApp has tackled while Implementing Machine Translati...
Two Unique Challenges NetApp has tackled while Implementing Machine Translati...
 
Open erp
Open erpOpen erp
Open erp
 

Viewers also liked

Challenges due to globalization
Challenges due to globalizationChallenges due to globalization
Challenges due to globalizationSharon Mansoor
 
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems
Java EE 6 Adoption in One of the World’s Largest Online Financial SystemsJava EE 6 Adoption in One of the World’s Largest Online Financial Systems
Java EE 6 Adoption in One of the World’s Largest Online Financial SystemsArshal Ameen
 
[RakutenTechConf2013] [B-3_3] Rakuten Category
[RakutenTechConf2013] [B-3_3] Rakuten Category[RakutenTechConf2013] [B-3_3] Rakuten Category
[RakutenTechConf2013] [B-3_3] Rakuten CategoryRakuten Group, Inc.
 
12 Months of Learning about eBooks in 40 minutes
12 Months of Learning about eBooks in 40 minutes12 Months of Learning about eBooks in 40 minutes
12 Months of Learning about eBooks in 40 minutesKobo
 
[RakutenTechConf2013][C-4_3] Our Goals and Activities at Rakuten Institute o...
[RakutenTechConf2013][C-4_3] Our Goals and Activities at Rakuten Institute o...[RakutenTechConf2013][C-4_3] Our Goals and Activities at Rakuten Institute o...
[RakutenTechConf2013][C-4_3] Our Goals and Activities at Rakuten Institute o...Rakuten Group, Inc.
 
Kobo Executive Team
Kobo Executive TeamKobo Executive Team
Kobo Executive TeamJay Watson
 
Recommendations @ Rakuten Group
Recommendations @ Rakuten GroupRecommendations @ Rakuten Group
Recommendations @ Rakuten Grouprecsysfr
 
What’s attractive in Rakuten Technology Conference 2016. (English Version)
What’s attractive in Rakuten Technology Conference 2016. (English Version)What’s attractive in Rakuten Technology Conference 2016. (English Version)
What’s attractive in Rakuten Technology Conference 2016. (English Version)Rakuten Group, Inc.
 
[Rakuten TechConf2014] [D-6] Rakuten BaaS in ROOM & Rakuten Kobo
[Rakuten TechConf2014] [D-6] Rakuten BaaS in ROOM & Rakuten Kobo[Rakuten TechConf2014] [D-6] Rakuten BaaS in ROOM & Rakuten Kobo
[Rakuten TechConf2014] [D-6] Rakuten BaaS in ROOM & Rakuten KoboRakuten Group, Inc.
 
[Rakuten TechConf2014] [B-1] Performance at scale
[Rakuten TechConf2014] [B-1] Performance at scale[Rakuten TechConf2014] [B-1] Performance at scale
[Rakuten TechConf2014] [B-1] Performance at scaleRakuten Group, Inc.
 
Globalization Final Slides
Globalization Final SlidesGlobalization Final Slides
Globalization Final Slidesguest156d5f7
 
Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)
Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)
Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)VirtualTech Japan Inc.
 
楽天のプライベートクラウドを支えるフラッシュストレージ
楽天のプライベートクラウドを支えるフラッシュストレージ楽天のプライベートクラウドを支えるフラッシュストレージ
楽天のプライベートクラウドを支えるフラッシュストレージRakuten Group, Inc.
 
楽天トラベルの開発プロセスに関して
楽天トラベルの開発プロセスに関して楽天トラベルの開発プロセスに関して
楽天トラベルの開発プロセスに関してRakuten Group, Inc.
 
Globalisation, its challenges and advantages
Globalisation, its challenges and advantagesGlobalisation, its challenges and advantages
Globalisation, its challenges and advantagesfathima habeeb
 

Viewers also liked (19)

Challenges due to globalization
Challenges due to globalizationChallenges due to globalization
Challenges due to globalization
 
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems
Java EE 6 Adoption in One of the World’s Largest Online Financial SystemsJava EE 6 Adoption in One of the World’s Largest Online Financial Systems
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems
 
[RakutenTechConf2013] [B-3_3] Rakuten Category
[RakutenTechConf2013] [B-3_3] Rakuten Category[RakutenTechConf2013] [B-3_3] Rakuten Category
[RakutenTechConf2013] [B-3_3] Rakuten Category
 
12 Months of Learning about eBooks in 40 minutes
12 Months of Learning about eBooks in 40 minutes12 Months of Learning about eBooks in 40 minutes
12 Months of Learning about eBooks in 40 minutes
 
[RakutenTechConf2013][C-4_3] Our Goals and Activities at Rakuten Institute o...
[RakutenTechConf2013][C-4_3] Our Goals and Activities at Rakuten Institute o...[RakutenTechConf2013][C-4_3] Our Goals and Activities at Rakuten Institute o...
[RakutenTechConf2013][C-4_3] Our Goals and Activities at Rakuten Institute o...
 
Kobo Executive Team
Kobo Executive TeamKobo Executive Team
Kobo Executive Team
 
Rakuten's Private Cloud
Rakuten's Private CloudRakuten's Private Cloud
Rakuten's Private Cloud
 
Recommendations @ Rakuten Group
Recommendations @ Rakuten GroupRecommendations @ Rakuten Group
Recommendations @ Rakuten Group
 
What’s attractive in Rakuten Technology Conference 2016. (English Version)
What’s attractive in Rakuten Technology Conference 2016. (English Version)What’s attractive in Rakuten Technology Conference 2016. (English Version)
What’s attractive in Rakuten Technology Conference 2016. (English Version)
 
[Rakuten TechConf2014] [D-6] Rakuten BaaS in ROOM & Rakuten Kobo
[Rakuten TechConf2014] [D-6] Rakuten BaaS in ROOM & Rakuten Kobo[Rakuten TechConf2014] [D-6] Rakuten BaaS in ROOM & Rakuten Kobo
[Rakuten TechConf2014] [D-6] Rakuten BaaS in ROOM & Rakuten Kobo
 
[Rakuten TechConf2014] [B-1] Performance at scale
[Rakuten TechConf2014] [B-1] Performance at scale[Rakuten TechConf2014] [B-1] Performance at scale
[Rakuten TechConf2014] [B-1] Performance at scale
 
Globalization Final Slides
Globalization Final SlidesGlobalization Final Slides
Globalization Final Slides
 
Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)
Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)
Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)
 
Intro to GraphQL
 Intro to GraphQL Intro to GraphQL
Intro to GraphQL
 
楽天のプライベートクラウドを支えるフラッシュストレージ
楽天のプライベートクラウドを支えるフラッシュストレージ楽天のプライベートクラウドを支えるフラッシュストレージ
楽天のプライベートクラウドを支えるフラッシュストレージ
 
Globalization
GlobalizationGlobalization
Globalization
 
楽天トラベルの開発プロセスに関して
楽天トラベルの開発プロセスに関して楽天トラベルの開発プロセスに関して
楽天トラベルの開発プロセスに関して
 
India-Globalization Challenges
India-Globalization ChallengesIndia-Globalization Challenges
India-Globalization Challenges
 
Globalisation, its challenges and advantages
Globalisation, its challenges and advantagesGlobalisation, its challenges and advantages
Globalisation, its challenges and advantages
 

Similar to [Rakuten TechConf2014] [E-6] Rakuten Ichiba Globalization - Challenges and Solutions

code talks Commerce: The API Economy as an E-Commerce Operating System
code talks Commerce: The API Economy as an E-Commerce Operating Systemcode talks Commerce: The API Economy as an E-Commerce Operating System
code talks Commerce: The API Economy as an E-Commerce Operating SystemAdelina Todeva
 
Lecture 9 - E-Commerce - Marketing in The Digital Age.pptx
Lecture 9 - E-Commerce - Marketing in The Digital Age.pptxLecture 9 - E-Commerce - Marketing in The Digital Age.pptx
Lecture 9 - E-Commerce - Marketing in The Digital Age.pptxFaizanGul6
 
Profoundis - Why OpenERP
Profoundis - Why OpenERPProfoundis - Why OpenERP
Profoundis - Why OpenERPArjun Pillai
 
LF_APIStrat17_Connect Your RESTful API to Hundreds of Others in Minutes (Zapi...
LF_APIStrat17_Connect Your RESTful API to Hundreds of Others in Minutes (Zapi...LF_APIStrat17_Connect Your RESTful API to Hundreds of Others in Minutes (Zapi...
LF_APIStrat17_Connect Your RESTful API to Hundreds of Others in Minutes (Zapi...LF_APIStrat
 
L4MS Webinar - All you need to know (25th Oct)
L4MS Webinar - All you need to know (25th Oct)L4MS Webinar - All you need to know (25th Oct)
L4MS Webinar - All you need to know (25th Oct)L4MS
 
Caso de Sucesso Vodafone e Splunk
Caso de Sucesso Vodafone e SplunkCaso de Sucesso Vodafone e Splunk
Caso de Sucesso Vodafone e SplunkSplunk
 
Splunk All the Things: Our First 3 Months Monitoring Web Service APIs - Splun...
Splunk All the Things: Our First 3 Months Monitoring Web Service APIs - Splun...Splunk All the Things: Our First 3 Months Monitoring Web Service APIs - Splun...
Splunk All the Things: Our First 3 Months Monitoring Web Service APIs - Splun...Dan Cundiff
 
Introduction to Serverless. Oracle Fn Project.
Introduction to Serverless. Oracle Fn Project.Introduction to Serverless. Oracle Fn Project.
Introduction to Serverless. Oracle Fn Project.Rolando Carrasco
 
Shop24 Presentation Slide sixth semester
Shop24 Presentation Slide sixth semesterShop24 Presentation Slide sixth semester
Shop24 Presentation Slide sixth semesterAmrit Timalsina
 
Smile - Erwin de Vries presentatie #DMSummit 2011
Smile - Erwin de Vries presentatie #DMSummit 2011Smile - Erwin de Vries presentatie #DMSummit 2011
Smile - Erwin de Vries presentatie #DMSummit 2011Copernica BV
 
Crafting an API Strategy with an API Marketplace
Crafting an API Strategy with an API MarketplaceCrafting an API Strategy with an API Marketplace
Crafting an API Strategy with an API MarketplaceWSO2
 
MuleSoft Composer | Patna MuleSoft Meetup #14
MuleSoft Composer | Patna MuleSoft Meetup #14MuleSoft Composer | Patna MuleSoft Meetup #14
MuleSoft Composer | Patna MuleSoft Meetup #14shyamraj55
 
Medi Cube Digital Tools Presentation
Medi Cube Digital Tools PresentationMedi Cube Digital Tools Presentation
Medi Cube Digital Tools PresentationURENIO Research Unit
 
Dev Ops for systems of record - Talk at Agile Australia 2015
Dev Ops for systems of record - Talk at Agile Australia 2015Dev Ops for systems of record - Talk at Agile Australia 2015
Dev Ops for systems of record - Talk at Agile Australia 2015Mirco Hering
 
MuleSoft Meetup | Reading Meetup Group | Hosted by Integral Zone
MuleSoft Meetup | Reading Meetup Group | Hosted by Integral ZoneMuleSoft Meetup | Reading Meetup Group | Hosted by Integral Zone
MuleSoft Meetup | Reading Meetup Group | Hosted by Integral ZoneIntegralZone
 
Product Lines and Ecosystems: from customization to configuration
Product Lines and Ecosystems: from customization to configurationProduct Lines and Ecosystems: from customization to configuration
Product Lines and Ecosystems: from customization to configurationAdaCore
 
Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...
Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...
Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...Nordic APIs
 
Openerp rise
Openerp riseOpenerp rise
Openerp riseSudarat
 

Similar to [Rakuten TechConf2014] [E-6] Rakuten Ichiba Globalization - Challenges and Solutions (20)

code talks Commerce: The API Economy as an E-Commerce Operating System
code talks Commerce: The API Economy as an E-Commerce Operating Systemcode talks Commerce: The API Economy as an E-Commerce Operating System
code talks Commerce: The API Economy as an E-Commerce Operating System
 
Lecture 9 - E-Commerce - Marketing in The Digital Age.pptx
Lecture 9 - E-Commerce - Marketing in The Digital Age.pptxLecture 9 - E-Commerce - Marketing in The Digital Age.pptx
Lecture 9 - E-Commerce - Marketing in The Digital Age.pptx
 
Profoundis - Why OpenERP
Profoundis - Why OpenERPProfoundis - Why OpenERP
Profoundis - Why OpenERP
 
LF_APIStrat17_Connect Your RESTful API to Hundreds of Others in Minutes (Zapi...
LF_APIStrat17_Connect Your RESTful API to Hundreds of Others in Minutes (Zapi...LF_APIStrat17_Connect Your RESTful API to Hundreds of Others in Minutes (Zapi...
LF_APIStrat17_Connect Your RESTful API to Hundreds of Others in Minutes (Zapi...
 
L4MS Webinar - All you need to know (25th Oct)
L4MS Webinar - All you need to know (25th Oct)L4MS Webinar - All you need to know (25th Oct)
L4MS Webinar - All you need to know (25th Oct)
 
Caso de Sucesso Vodafone e Splunk
Caso de Sucesso Vodafone e SplunkCaso de Sucesso Vodafone e Splunk
Caso de Sucesso Vodafone e Splunk
 
Splunk All the Things: Our First 3 Months Monitoring Web Service APIs - Splun...
Splunk All the Things: Our First 3 Months Monitoring Web Service APIs - Splun...Splunk All the Things: Our First 3 Months Monitoring Web Service APIs - Splun...
Splunk All the Things: Our First 3 Months Monitoring Web Service APIs - Splun...
 
Introduction to Serverless. Oracle Fn Project.
Introduction to Serverless. Oracle Fn Project.Introduction to Serverless. Oracle Fn Project.
Introduction to Serverless. Oracle Fn Project.
 
Shop24 Presentation Slide sixth semester
Shop24 Presentation Slide sixth semesterShop24 Presentation Slide sixth semester
Shop24 Presentation Slide sixth semester
 
Smile - Erwin de Vries presentatie #DMSummit 2011
Smile - Erwin de Vries presentatie #DMSummit 2011Smile - Erwin de Vries presentatie #DMSummit 2011
Smile - Erwin de Vries presentatie #DMSummit 2011
 
Crafting an API Strategy with an API Marketplace
Crafting an API Strategy with an API MarketplaceCrafting an API Strategy with an API Marketplace
Crafting an API Strategy with an API Marketplace
 
MuleSoft Composer | Patna MuleSoft Meetup #14
MuleSoft Composer | Patna MuleSoft Meetup #14MuleSoft Composer | Patna MuleSoft Meetup #14
MuleSoft Composer | Patna MuleSoft Meetup #14
 
Sap – An Applications Perspective Vikram Singh Sankhala
Sap – An Applications Perspective Vikram Singh SankhalaSap – An Applications Perspective Vikram Singh Sankhala
Sap – An Applications Perspective Vikram Singh Sankhala
 
Medi Cube Digital Tools Presentation
Medi Cube Digital Tools PresentationMedi Cube Digital Tools Presentation
Medi Cube Digital Tools Presentation
 
Dev Ops for systems of record - Talk at Agile Australia 2015
Dev Ops for systems of record - Talk at Agile Australia 2015Dev Ops for systems of record - Talk at Agile Australia 2015
Dev Ops for systems of record - Talk at Agile Australia 2015
 
Smartone v1.0
Smartone v1.0Smartone v1.0
Smartone v1.0
 
MuleSoft Meetup | Reading Meetup Group | Hosted by Integral Zone
MuleSoft Meetup | Reading Meetup Group | Hosted by Integral ZoneMuleSoft Meetup | Reading Meetup Group | Hosted by Integral Zone
MuleSoft Meetup | Reading Meetup Group | Hosted by Integral Zone
 
Product Lines and Ecosystems: from customization to configuration
Product Lines and Ecosystems: from customization to configurationProduct Lines and Ecosystems: from customization to configuration
Product Lines and Ecosystems: from customization to configuration
 
Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...
Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...
Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...
 
Openerp rise
Openerp riseOpenerp rise
Openerp rise
 

More from Rakuten Group, Inc.

コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話Rakuten Group, Inc.
 
楽天における安全な秘匿情報管理への道のり
楽天における安全な秘匿情報管理への道のり楽天における安全な秘匿情報管理への道のり
楽天における安全な秘匿情報管理への道のりRakuten Group, Inc.
 
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...Rakuten Group, Inc.
 
DataSkillCultureを浸透させる楽天の取り組み
DataSkillCultureを浸透させる楽天の取り組みDataSkillCultureを浸透させる楽天の取り組み
DataSkillCultureを浸透させる楽天の取り組みRakuten Group, Inc.
 
大規模なリアルタイム監視の導入と展開
大規模なリアルタイム監視の導入と展開大規模なリアルタイム監視の導入と展開
大規模なリアルタイム監視の導入と展開Rakuten Group, Inc.
 
楽天における大規模データベースの運用
楽天における大規模データベースの運用楽天における大規模データベースの運用
楽天における大規模データベースの運用Rakuten Group, Inc.
 
楽天サービスを支えるネットワークインフラストラクチャー
楽天サービスを支えるネットワークインフラストラクチャー楽天サービスを支えるネットワークインフラストラクチャー
楽天サービスを支えるネットワークインフラストラクチャーRakuten Group, Inc.
 
楽天の規模とクラウドプラットフォーム統括部の役割
楽天の規模とクラウドプラットフォーム統括部の役割楽天の規模とクラウドプラットフォーム統括部の役割
楽天の規模とクラウドプラットフォーム統括部の役割Rakuten Group, Inc.
 
Rakuten Services and Infrastructure Team.pdf
Rakuten Services and Infrastructure Team.pdfRakuten Services and Infrastructure Team.pdf
Rakuten Services and Infrastructure Team.pdfRakuten Group, Inc.
 
The Data Platform Administration Handling the 100 PB.pdf
The Data Platform Administration Handling the 100 PB.pdfThe Data Platform Administration Handling the 100 PB.pdf
The Data Platform Administration Handling the 100 PB.pdfRakuten Group, Inc.
 
Supporting Internal Customers as Technical Account Managers.pdf
Supporting Internal Customers as Technical Account Managers.pdfSupporting Internal Customers as Technical Account Managers.pdf
Supporting Internal Customers as Technical Account Managers.pdfRakuten Group, Inc.
 
Making Cloud Native CI_CD Services.pdf
Making Cloud Native CI_CD Services.pdfMaking Cloud Native CI_CD Services.pdf
Making Cloud Native CI_CD Services.pdfRakuten Group, Inc.
 
How We Defined Our Own Cloud.pdf
How We Defined Our Own Cloud.pdfHow We Defined Our Own Cloud.pdf
How We Defined Our Own Cloud.pdfRakuten Group, Inc.
 
Travel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech infoTravel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech infoRakuten Group, Inc.
 
Travel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech infoTravel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech infoRakuten Group, Inc.
 
Introduction of GORA API Group technology
Introduction of GORA API Group technologyIntroduction of GORA API Group technology
Introduction of GORA API Group technologyRakuten Group, Inc.
 
100PBを越えるデータプラットフォームの実情
100PBを越えるデータプラットフォームの実情100PBを越えるデータプラットフォームの実情
100PBを越えるデータプラットフォームの実情Rakuten Group, Inc.
 
社内エンジニアを支えるテクニカルアカウントマネージャー
社内エンジニアを支えるテクニカルアカウントマネージャー社内エンジニアを支えるテクニカルアカウントマネージャー
社内エンジニアを支えるテクニカルアカウントマネージャーRakuten Group, Inc.
 

More from Rakuten Group, Inc. (20)

コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
 
楽天における安全な秘匿情報管理への道のり
楽天における安全な秘匿情報管理への道のり楽天における安全な秘匿情報管理への道のり
楽天における安全な秘匿情報管理への道のり
 
What Makes Software Green?
What Makes Software Green?What Makes Software Green?
What Makes Software Green?
 
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
 
DataSkillCultureを浸透させる楽天の取り組み
DataSkillCultureを浸透させる楽天の取り組みDataSkillCultureを浸透させる楽天の取り組み
DataSkillCultureを浸透させる楽天の取り組み
 
大規模なリアルタイム監視の導入と展開
大規模なリアルタイム監視の導入と展開大規模なリアルタイム監視の導入と展開
大規模なリアルタイム監視の導入と展開
 
楽天における大規模データベースの運用
楽天における大規模データベースの運用楽天における大規模データベースの運用
楽天における大規模データベースの運用
 
楽天サービスを支えるネットワークインフラストラクチャー
楽天サービスを支えるネットワークインフラストラクチャー楽天サービスを支えるネットワークインフラストラクチャー
楽天サービスを支えるネットワークインフラストラクチャー
 
楽天の規模とクラウドプラットフォーム統括部の役割
楽天の規模とクラウドプラットフォーム統括部の役割楽天の規模とクラウドプラットフォーム統括部の役割
楽天の規模とクラウドプラットフォーム統括部の役割
 
Rakuten Services and Infrastructure Team.pdf
Rakuten Services and Infrastructure Team.pdfRakuten Services and Infrastructure Team.pdf
Rakuten Services and Infrastructure Team.pdf
 
The Data Platform Administration Handling the 100 PB.pdf
The Data Platform Administration Handling the 100 PB.pdfThe Data Platform Administration Handling the 100 PB.pdf
The Data Platform Administration Handling the 100 PB.pdf
 
Supporting Internal Customers as Technical Account Managers.pdf
Supporting Internal Customers as Technical Account Managers.pdfSupporting Internal Customers as Technical Account Managers.pdf
Supporting Internal Customers as Technical Account Managers.pdf
 
Making Cloud Native CI_CD Services.pdf
Making Cloud Native CI_CD Services.pdfMaking Cloud Native CI_CD Services.pdf
Making Cloud Native CI_CD Services.pdf
 
How We Defined Our Own Cloud.pdf
How We Defined Our Own Cloud.pdfHow We Defined Our Own Cloud.pdf
How We Defined Our Own Cloud.pdf
 
Travel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech infoTravel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech info
 
Travel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech infoTravel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech info
 
OWASPTop10_Introduction
OWASPTop10_IntroductionOWASPTop10_Introduction
OWASPTop10_Introduction
 
Introduction of GORA API Group technology
Introduction of GORA API Group technologyIntroduction of GORA API Group technology
Introduction of GORA API Group technology
 
100PBを越えるデータプラットフォームの実情
100PBを越えるデータプラットフォームの実情100PBを越えるデータプラットフォームの実情
100PBを越えるデータプラットフォームの実情
 
社内エンジニアを支えるテクニカルアカウントマネージャー
社内エンジニアを支えるテクニカルアカウントマネージャー社内エンジニアを支えるテクニカルアカウントマネージャー
社内エンジニアを支えるテクニカルアカウントマネージャー
 

Recently uploaded

CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 

Recently uploaded (20)

CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 

[Rakuten TechConf2014] [E-6] Rakuten Ichiba Globalization - Challenges and Solutions

  • 1. Rakuten Ichiba globalisation - Challenges and solutions Rakuten Technology Conference 2014 Oct. 25th 2014 Olivier Claquin Rakuten Ichiba Department http://global.rakuten.com
  • 2. 2 Me Who I am French, please bear with my accent… What I was A consultant in system integration and Service Oriented Architecture What I am Since 2013, I am part of the E-Commerce Architecture group. I am currently working on integrating the Rakuten Group's e-commerce systems.
  • 3. 3 The history of Rakuten Ichiba globalisation 1997: Opening of Japan Ichiba 2008: Opening of Taiwan Ichiba 2010-: Rakuten acquired several e-commerce companies around the world 2011: Japanese merchants can sell their products overseas (outside of Japan) 2012-: Rakuten started to open new E-commerce websites in new countries on a regular basis 2013-: Rakuten started to consolidate the group E-commerce systems
  • 4. 4 Current Rakuten Ichiba marketplaces
  • 5. 5 From a Japan-only platform to a global platform The challenges Part 1 – To a unified platform Part 2 – To a multi-language system Part 3 – To an expendable and extensible system Part 4 – To a global ‘one team’
  • 6. From a Japan-only platform to a global platform Part 1 – To a unified platform Part 2 – To a multi-language system Part 3 – To an expendable and extensible system Part 4 – To a global ‘one team’
  • 7. 7 The idea seems great but 1. Are the features even compatible from one system to another? 2. How well do we know our system? 3. How can we inter-connect systems?
  • 8. 8 Borders between marketplace specific and global features • Each marketplace does things differently • Where does global start/end? => Our product management team manages case by case => Build a feature gaps backlog Image source: http://commons.wikimedia.org/wiki/File:Information1.svg
  • 9. 9 Know yourself first • We have system metrics, but are they meaningful? • How can we compare 2 systems that use different technologies? => Go back to user stories
  • 10. 10 And our user stories look like Shopper Merchant Buy a product Cancel an order Register as a member … Update product price Update order status … Mall UI Merchant UI Ichiba Backend
  • 11. 11 Inter-connecting systems, but how? • In complex environments, integration often requires an additional layer (ESB, EAI, …) • It is quite nice, but we want to keep it simple and extensible => We chose to use HTTP based “APIs” in our system design • ESB: Enterprise Service Bus • EAI: Enterprise Application Integration
  • 12. 12 Let’s go back in time… UI Application External System UI Application Data source Data source
  • 13. 13 UI Application External System Data API Data source Data API Data source UI Application And fast forward
  • 14. 14 UI Application And fast forward UI Application External System Data source Service API Data API Data API Data source Service API Caching Quality of Service …
  • 15. 15 API • Did you say API? • How do we use them in our systems – They provide data to the presentation layer – Some level of abstraction is good! • How do they help integrating systems? – Simplify the technical integration
  • 16. 16 We can go from System For marketplace A System For marketplace B ???
  • 17. 17 To the following System A System B ? Item API Campaign API Order API Mall UI Item API Billing system ? ?
  • 18. 18 Test: what, when, how? • Integration tests, but what to test and how? => 60% to 75 % of our UIs tests are automated => Elaborate end-to-end scenarios
  • 19. From a Japan-only platform to a global platform Part 1 – To a unified platform Part 2 – To a multi-language system Part 3 – To an expendable and extensible system Part 4 – To a global ‘one team’
  • 20. 20 Global Shopping • We want to help our merchants to sell their products in other markets => Therefore, we offer the ability to merchants to translate their items to different languages Fact: 97% of our translations are automatic!
  • 21. 21 Translation IS rocket science • No translation engine is perfect so we are using a mix of several translation engines • Each of those engine has its specificities that we have to learn • We are also improving the quality of those translations (e.g.: katakana processing)
  • 22. 22 Our next target: images 2個セット 50%OFF ポイント10倍 Buy 1, get 1 free and x10 points
  • 23. From a Japan-only platform to a global platform Part 1 – To a unified platform Part 2 – To a multi-language system Part 3 – To an expendable and extensible system Part 4 – To a global ‘one team’
  • 24. 24 Expandable = we can scale • For our Global Platform, all our applications are deployed in an R-PaaS Platform • It abstracts the Operating System layer, as well as the Virtual Machine layer and the physical layer
  • 25. 25 RPaaS modules rpaas instances my_application +1 Application Server O.S. (Linux) How does R-PaaS work? Load balancer Application WAR, Ruby… RPaaS modules Application Server Application WAR, Ruby… O.S. (Linux)
  • 26. 26 How does R-PaaS work? RPaaS modules Application Server O.S. (Linux) Load balancer Application WAR, Ruby… RPaaS modules Application Server Application WAR, Ruby… O.S. (Linux) RPaaS modules Application Server Application WAR, Ruby… O.S. (Linux)
  • 27. 27 Serving users from all over the world • We use Akamai for caching and serving customers all over the world • Because our system is based on HTTP calls, we can dispatch those components in different data centres • Our short term goal is to be able to do the same with our data storage layer => If the application supports it, scale out
  • 28. 28 Extensible = we can add new features easily • As the system grows, how can we add new features? • How do I know that my new feature does not break anything? • How do I develop features that make a difference to the business? => We use event driven processing
  • 29. 29 We have users and we have events Shoppers Merchants Buy a product Cancel an order Register as a member … Update product price Update order status … Mall UI Merchant UI Ichiba Backend An order has been created An order status has changed A product has been updated A new user has registered …
  • 30. 30 So we have a database and we have an event bus Shoppers Merchants Buy a product Cancel an order Register as a member … Update product price Update order status … Mall UI Merchant UI Ichiba Backend An order has been created An order status has changed A product has been updated A new user has registered … Update product Update membership Update order …
  • 31. 31 Events are meaningful, use them wisely • Search is expensive, generating / consuming events is not • For example, we use this pattern for: – invalidating cache – sending out notifications – rebuilding our search engine index • We can go further and bring new capabilities to our businesses
  • 32. From a Japan-only platform to a global platform Part 1 – To a unified platform Part 2 – To a multi-language system Part 3 – To an expendable and extensible system Part 4 – To a global ‘one team’
  • 33. 33 Language is only one problem In a global environment: • How do we assign tasks? • How do we share progress? • How do we make decisions? => Collaborative tools do help but mostly, we have to educate ourselves
  • 34. 34 About the usefulness of a glossary… • Like I mentioned in part 1, each team knows their own system • The problem is, that when you have similar systems, you tend to make easy shortcuts • Those shortcuts create a lot of misunderstanding => Create a glossary
  • 35. 35 About the usefulness of a glossary… Concept Meaning Glossary A table like this one  Item An item is defined by a merchant […] Product A product is an item sold on a marketplace […] => Create a glossary
  • 37. 37 Today I suggested to Describe your system with user stories Automate your tests Offer automatic translation to merchants and shoppers Use APIs to make system integration easier Design your application for scaling out Use the event driven paradigm Learn how to work in a global environment Build a glossary
  • 38. 38 olivier.claquin@mail.rakuten.com Thank you for your attention!
  • 39. Bonus slides / Annexes
  • 40. 40 Bonus slide – how do we track progress when working remotely • Atlassian on-demand and Atlassian on premise • Jira for issue, features tracking • Confluence for information sharing

Editor's Notes

  1. With all those expansions, we ended up building several E-Commerce systems. However, we are in the process of consolidating those systems. When consolidating systems that have been around from quite some time, you usually get into the following issues:
  2. Of course, from all marketplace perspective, the way they do business is different. However, if we want to provide a global platform, we have to make some concession. We try to make our global platform customisable by a marketplace but there are limits of what we can do. One of the big challenges of data migration is that the data topology can be different: one country could have an item with 20 images associated to it whereas another only 1. What should we chose? On this topic, we see it case by case, there is no generic way for handling this issue
  3. Systems tend to grow complex over time. One issue that systematically comes with all the integration works we have done was the following: "We know our system can support our needs, prove that yours can". This is a very tricky question. Of course, when migrating from one system to another, the legacy system could handle what it was handling. But a new system will have a completely different topology, architectures and concepts.   The way we are trying to tackle this is to try to come to a common ground, as much as possible. If we look at a complex website, knowing only "how many users come and visit the website" is far from being enough. We need to translate Those numbers that are very contextual to a more abstract way.   Some systems cache a lot, some systems do pre-rendering, some systems integrate in a different way with a search engine ...
  4. Legacy systems = a big box that has a lot of dependencies and that works "as it is" Our solution for that has been to promote the use of APIs between systems. We usually split our systems into the following: UI for shoppers UI for merchants UI for Business Units Open APIs that are accessed by third parties (merchants, partner companies, …) API layer, across the above layers   => Our basic rule is to centralize in the API layer what can be re-used in any of the above layers. We want to code once and for all. => By standardizing the way a system communicates with the outside, we can reduce the effort for replacing a system by another. => By abstracting the data layer by an API layer, we can freely change the backend without impacting the UI components (add a caching layer, replace an RDBMS by a NoSQL solution, etc…). => In my experience, it is almost impossible to do a big-bang approach of integrating "System A" with "System B". By separating the API layer, that offers us the ability to look at one functional area after the other. We can say "First, let's integrate the order API of System A with the order system of System B".
  5. What we do: 60% to 75 % of UIs automated tests Then the rest of the standard package is tested manually Then, the new features that come into the platform, we test those separately In parallel, we run load and stress tests
  6. With all those expansions, we ended up building several E-Commerce systems. However, we are in the process of consolidating those systems. When consolidating systems that have been around from quite some time, you usually get into the following issues:
  7. With all those expansions, we ended up building several E-Commerce systems. However, we are in the process of consolidating those systems. When consolidating systems that have been around from quite some time, you usually get into the following issues:
  8. Please note that this diagram is a temporary diagram Basically, RPaaS is based on Cloud Foundry and on a top of a Virtualization layer. It provides the application with the ability of easily deploying and scaling. It also provides environment variables so we can deploy the same artifact (WAR file, ruby runtime, php modules etc…) in all the environments without having to modify them or building custom scripts. It also supports deploying a new application without any service stop. We can deploy a new application then map it to the endpoint to which external services should call. It is basically HTTP based traffic so that the UI calls API using JSON APIs over HTTP, then the APIs would connect to a database via JDBC or other protocol.
  9. Please note that this diagram is a temporary diagram Basically, RPaaS is based on Cloud Foundry and on a top of a Virtualization layer. It provides the application with the ability of easily deploying and scaling. It also provides environment variables so we can deploy the same artifact (WAR file, ruby runtime, php modules etc…) in all the environments without having to modify them or building custom scripts. It also supports deploying a new application without any service stop. We can deploy a new application then map it to the endpoint to which external services should call. It is basically HTTP based traffic so that the UI calls API using JSON APIs over HTTP, then the APIs would connect to a database via JDBC or other protocol.
  10. Is it okay to say that we have a partnership with Akamai? Regarding the data storage layer, we can of course easily split the data by marketplace. But then what happens when a merchant in Indonesia wants to sell an item in Malaysia? We could then split the data by region. But then, what happens when a merchant in Asia wants to sell an item in Europe? How do we keep the consistency of the item and inventory information? To address those challenges, we are building a data storage that is not based on relational databases because, unfortunately, those kind of features are missing from traditional relational databases
  11. During our design phase, we realised that our platform would be communicating with a lot of external systems (dataware house, internal search engines, …) Usually, from an E-Commerce system perspective, external systems are mostly interested in changes that occur in our platform. Those changes can be of any type: a merchant registers a new item, an item runs out of stock, an order is cancelled, and so on. However, having a lot of systems polling for changes is very expensive system wise. That is why we are doing event driven mechanisms for those cases. A system will register on a message bus saying “I am interested in being notified when an order changes”. We can then use this mechanism, without any change in the original source for: invalidating cache, sending emails, rebuilding our search engine indexes and so on and so forth
  12. With all those expansions, we ended up building several E-Commerce systems. However, we are in the process of consolidating those systems. When consolidating systems that have been around from quite some time, you usually get into the following issues:
  13. With all those expansions, we ended up building several E-Commerce systems. However, we are in the process of consolidating those systems. When consolidating systems that have been around from quite some time, you usually get into the following issues:
  14. With all those expansions, we ended up building several E-Commerce systems. However, we are in the process of consolidating those systems. When consolidating systems that have been around from quite some time, you usually get into the following issues: