SlideShare a Scribd company logo
GraphQL
Lessons Learned
Bernd Schönbach, Patrick Surrey
LeanIX GmbH
Agenda
2
Introduction
• About	us
• About	LeanIX
• About	GraphQL
Why	GraphQL?
GraphiQL
API	Design
GraphQL Client	Design
Apollo
Mutations
N	+	1	Select	Issue
Exception	Handling
About Us
3
Patrick	Surrey Bernd	Schönbach
About LeanIX
4
5
• Shorter	time	to	market
• Real-time	big	data	insights
• Efficient	scalability
• Exceptional	user	experience
• Consistent	channels
• Integrated	workflows
• …
More
• APIs
• Devices
• Sensors
IT	Architectures	are	more	important	than	ever	before
LeanIX	is	the	most	comfortable	solution	– as	SaaS
6
Available	Integrations
7
Industrials	&
Manufacturing
Financial	&
Insurance Consumer
Energy	&
Materials Pharma
Travel
Logistics
Media
Telecoms
INTERNATIONAL
EXPANSION
Well-known	brands	of	all	industries	trust	in	LeanIX
LeanIX	is	based	on	a	modern	Microservices Stack
8
Pathfinder
Postgres
Elasticsearch
ArangoDB
Pathfinder	UI
Single	Page	App
•Angular	(2)
•Typescript
Backend	Services
•GraphQL or	REST	API
•oAuth2	/w	JWT
•Swagger	API	Docs
•Event-Bus	(Webhooks)
Resources
•No	sharing	across
services
•Deployment	with
Docker
Web-
hooks
MTM Export
Image
s
Survey Metric
Postgres
Kafka
Postgres
Shibboleth
PhantomJS
Postgres
Elasticsearch
InfluxDB
“Platform	Services”
GraphQL
About GraphQL
9
10
“A query language for your API”
http://graphql.org/
11
History
• 2012	native	mobile	client	for	News	Feed
• Early	2015	announced	publicly	
(https://www.youtube.com/watch?v=9sc8Pyc51uU)
• Sep.	2015	officially	open	sourced
• Nov.	2016:	Many	more	users
12
Basic	idea
Server
WHAT	is	
available
Client
WHICH	data	
is	needed
1.	Schema
2.	Data	requirements
Java,	Node,	Ruby,	
PHP,	Go,	Scala,	
.NET	…
Simple	HTTP-Client
http://graphql.org/code/
Why GraphQL?
13
Why GraphQL?
14
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Why GraphQL?
15
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Why GraphQL?
16
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Why GraphQL?
17
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Why GraphQL?
18
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
query {
id name type release
alias description
...on Application {
lifecycles {}
relToSuccessor {}
relToPredecessor {}
relToBusinessCapability {}
relToUserGroups {}
[...]
}
}
Why GraphQL?
19
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
query {
id name type release
alias description
}
Why GraphQL?
20
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
query {
id name
}
query {
id name alias
}
query {
id name description
}
Why GraphQL?
21
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
query {
id name
...on Application {
lifecycles {}
relToBusinessCapabilities {}
relToUserGroups {}
}
}
GRAPHIQL
GraphiQL –Interactive in-browser	GraphQL IDE
23
Run	queries
Integrated Explore	API
See	result
GraphiQL
24
• Available here:	https://github.com/graphql/graphiql
• Great	way to document and explore the API
• Very helpfull during devolpment,	e.g.	for quickly testing the API
à Get it up and running from day one!
API	DESIGN
Connections	– Inspired	by	Relay	Framework
26
{
"id": "factsheet-123”,
"tags": [
{ "id": "tag-1", "label": "Tag 1" },
{ "id": "tag-2", "label": "Tag 2" },
{ "id": "tag-3", "label": "Tag 3" }
]
}
{
id
tags { id label }
}
Fact	
Sheet
Tag
Tag
Tag
Connections
27
{
"id": "factsheet-123”,
"tags": {
"edges": [
{ "node": { "id": "tag-1", "label": "Tag 1" } },
{ "node": { "id": "tag-2", "label": "Tag 2" } },
{ "node": { "id": "tag-3", "label": "Tag 3" } }
]
}
}
{
id
tags {
edges {
node { id label }
}
}
}
Fact	
Sheet
Tag
Tag
Tag
Connections	- Advantages
28
{
id
tags {
totalCount
pageInfo { startCursor endCursor hasNextPage }
edges {
node { id label }
}
}
}
Connections	- Advantages
29
{
id
tags {
permissions { create read update delete }
edges {
node { id label }
}
}
}
Connections	– Lessons	learned
30
• Makes	the	API	more	graph	like
• Use	the	connection	pattern	right	from	the	start
• Prevents	breaking	changes	in	API
• Use	the	same	pattern	throughout	the	API
• Clients	can	handle	connections	in	the	same	way
API	Design	– No	“dead	ends”
31
{
id
tagId
}
{
id
tag { id label }
}
API	Design	– General	lessons	learned
32
• API	design	should	be	not	too	use	case	specific
• YAGNI	(„You	aren‘t	gonna need	it“)	is	usually	a	good	advice,	but	should	
not	be	applied	here
• GraphQL is	advertised	as	„...	gives	clients	the	power	to	ask	for	exactly	
what	they	need“	so	do	not	artificially	restrict	the	API
GRAPHQL CLIENT	DESIGN
Doomed to fail ...
34
Lots	of	parameters
Nobody	dares	to	touch	this
Even	more	
generic
GraphQL client – Query	building
35
No	parameters	
Simple!	:-)
Helper	to	make	requests
APOLLO
What about the Apollo	Client?
37
• Apollo	Client	available	here:	
https://github.com/apollographql/apollo-client
• “A	fully-featured,	production	ready	caching	GraphQL client	for	every	
server	or	UI	framework”
• Deep	integration	possible	with	React,	Angular,	iOS,	Android,	…
What about the Apollo	Client?
38
So,	what about it then?
39
• Did	you	use	it?
• No,	it	was	not	available	when	we	started	…
• Would	you	use	it?
• Perhaps	- it	offers	some	nice	abstractions	(queries	can	be	restarted	
for	instance),	but	our	own	very	simplistic	approach	works	very	well	
at	the	moment
Mutations
40
Mutations
41
Mutation createApplication(name: “Application A“,
alias: „APP-A“) {
name
alias
}
GraphQL Suggests:
Mutations
42
Mutation createFactSheet(input: {
name: “Application A“, type: Application
}, patches: $patches) {
name
alias
}
Query:
{ patches: [
{op:“add“, path:“/alias“, value:“APP-A“}
]}
Variables:
N	+	1	Select	Issue
43
What is the N	+	1	Select	Issue?
44
Application application =	appDAO.getApplication();
for(Successor successor:	application.getSucessors())	{
System.out.println(“Successor:“	+	successor.getName());
}	
Application application =	appDAO.getApplication();
for(Successor successor:	application.getSucessors())	{
System.out.println(“Successor:“	+	successor.getName());
}	
SELECT	*	FROM	application WHERE	...SELECT	*	FROM	application WHERE	...
SELECT	*	FROM	successor WHERE	id =	successor.id;
SELECT	*	FROM	successor WHERE	id =	successor.id;
SELECT	*	FROM	successor WHERE	id =	successor.id;
...
#	Selects
1
N
+
SELECT	*	FROM	successor WHERE	id =	successor.id;
SELECT	*	FROM	successor WHERE	id =	successor.id;
SELECT	*	FROM	successor WHERE	id =	successor.id;
...
Why do	we have this issue with GraphQL?
45
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Why do	we have this issue with GraphQL?
46
• Java	Library	uses Datafetcher
• Is a	function to connect GraphQL to underlying DB
• Knows only his level
Why do	we have this issue with GraphQL?
47
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
id
name
type
release
alias
description
Lifecycles
Relations
id
name
type
release
alias
description
Lifecycles
Relations
Why do	we have this issue with GraphQL?
48
• No context awareness
• No easy	implementation due	to „everything is a	graph“
• Needs	manual implementation to fix.
How To Solve This
49
• Prediction Library	(enable context awareness)
• Batching
• Caching
• Facebooks solution is called relay
Exception Handling
50
Exception Handling
51
• Exceptions of Java	GraphQL Library	are useless
• “An	error occurred“
• You need context information to show usefull exceptions
• We implemented our own handler for that
Conclusion
52
Conclusion
53
• Stop thinking in	REST
• No dead ends
• GrahpiQL first
• GraphQL is not	the solution for erverything
Breaking News
54
Breaking News
55
Breaking News
56
https://medium.com/@dwalsh.sdlr/using-graphql-why-facebook-now-owns-you-3182751028c9
Breaking News
57
https://code.facebook.com/posts/121714468491809/relicensing-the-graphql-specification/
Thank You
Questions?
Slides are available at:
https://de.slideshare.net/leanIX_net
Sources
• http://williamdurand.fr/2014/02/14/please-do-not-patch-like-an-idiot/
• http://graphql.org/
• https://github.com/graphql/graphiql
• https://www.leanix.net/de
• https://www.apollodata.com
• https://github.com/graphql-java/graphql-java
• https://angular.io/
• https://facebook.github.io/relay/

More Related Content

What's hot (20)

PDF
App Modernization
PT Datacomm Diangraha
 
PPTX
Data ops in practice
Lars Albertsson
 
PDF
GraphQL Advanced
LeanIX GmbH
 
PPTX
IT4IT - The Full Story for Digital Transformation - Part 2
Mohamed Zakarya Abdelgawad
 
PDF
OneStream Deep Dive
Finext
 
PDF
DATA & ANALYTICS
fireflylabz
 
PPTX
Lessons learned: A step-wise implementation for Application Rationalization
LeanIX GmbH
 
PDF
B2B eCommerce on Salesforce: The Facts
CloudCraze
 
PDF
Trailblazer community - Einstein for Service.pdf
yosra Saidani
 
PPTX
S4H_059.pptx
Sandeep617883
 
PDF
Data Migration Steps PowerPoint Presentation Slides
SlideTeam
 
PPTX
Sap business one or microsoft dynamics 365 which erp is better for your business
Silver Touch Technologies UK Ltd.
 
PPTX
APIs with Bounded Contexts: Modelling Apis with Domain-Driven Design
José Haro Peralta
 
PPTX
Next Level Enterprise Architecture
LeanIX GmbH
 
PPTX
Mendix Platform
SAKTHIVEL PERIYASAMY
 
PDF
What is MLOps
Henrik Skogström
 
PDF
Business intelligence
Roots Cast Pvt Ltd
 
PPTX
Presentasi 1 - Business Intelligence
DEDE IRYAWAN
 
PPTX
Transforming Traditional ITSM with Chatbots - kore.ai
kore.ai
 
PPTX
API Governance in the Enterprise
Apigee | Google Cloud
 
App Modernization
PT Datacomm Diangraha
 
Data ops in practice
Lars Albertsson
 
GraphQL Advanced
LeanIX GmbH
 
IT4IT - The Full Story for Digital Transformation - Part 2
Mohamed Zakarya Abdelgawad
 
OneStream Deep Dive
Finext
 
DATA & ANALYTICS
fireflylabz
 
Lessons learned: A step-wise implementation for Application Rationalization
LeanIX GmbH
 
B2B eCommerce on Salesforce: The Facts
CloudCraze
 
Trailblazer community - Einstein for Service.pdf
yosra Saidani
 
S4H_059.pptx
Sandeep617883
 
Data Migration Steps PowerPoint Presentation Slides
SlideTeam
 
Sap business one or microsoft dynamics 365 which erp is better for your business
Silver Touch Technologies UK Ltd.
 
APIs with Bounded Contexts: Modelling Apis with Domain-Driven Design
José Haro Peralta
 
Next Level Enterprise Architecture
LeanIX GmbH
 
Mendix Platform
SAKTHIVEL PERIYASAMY
 
What is MLOps
Henrik Skogström
 
Business intelligence
Roots Cast Pvt Ltd
 
Presentasi 1 - Business Intelligence
DEDE IRYAWAN
 
Transforming Traditional ITSM with Chatbots - kore.ai
kore.ai
 
API Governance in the Enterprise
Apigee | Google Cloud
 

Similar to LeanIX GraphQL Lessons Learned - CodeTalks 2017 (20)

PDF
Adding GraphQL to your existing architecture
Sashko Stubailo
 
PDF
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Hafiz Ismail
 
PPTX
React Flux to GraphQL
Turadg Aleahmad
 
PDF
Graphql
Niv Ben David
 
PDF
GraphQL for Native Apps
Emanuele Di Saverio
 
PDF
apidays LIVE Paris - GraphQL meshes by Jens Neuse
apidays
 
PDF
GraphQL: Enabling a new generation of API developer tools
Sashko Stubailo
 
PDF
The Apollo and GraphQL Stack
Sashko Stubailo
 
PDF
Sashko Stubailo - The GraphQL and Apollo Stack: connecting everything together
React Conf Brasil
 
PDF
GraphQL over REST at Reactathon 2018
Sashko Stubailo
 
PPTX
GraphQL research summary
Objectivity
 
PDF
Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...
Codemotion
 
PDF
Introduction to GraphQL for beginners
Martin Pham
 
PPTX
GraphQL - Missing Link In REST
Anubolu Sreekanth
 
PPT
Graphql presentation
Vibhor Grover
 
PDF
All you need to know about GraphQL.pdf
YAN IT Solutions Pvt. Ltd
 
PDF
From rest api to graph ql a 10 year journey
Arno Schulz
 
PDF
GraphQL across the stack: How everything fits together
Sashko Stubailo
 
PPTX
GraphQL API Crafts presentation
Sudheer J
 
PDF
Apollo server II
NodeXperts
 
Adding GraphQL to your existing architecture
Sashko Stubailo
 
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Hafiz Ismail
 
React Flux to GraphQL
Turadg Aleahmad
 
Graphql
Niv Ben David
 
GraphQL for Native Apps
Emanuele Di Saverio
 
apidays LIVE Paris - GraphQL meshes by Jens Neuse
apidays
 
GraphQL: Enabling a new generation of API developer tools
Sashko Stubailo
 
The Apollo and GraphQL Stack
Sashko Stubailo
 
Sashko Stubailo - The GraphQL and Apollo Stack: connecting everything together
React Conf Brasil
 
GraphQL over REST at Reactathon 2018
Sashko Stubailo
 
GraphQL research summary
Objectivity
 
Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...
Codemotion
 
Introduction to GraphQL for beginners
Martin Pham
 
GraphQL - Missing Link In REST
Anubolu Sreekanth
 
Graphql presentation
Vibhor Grover
 
All you need to know about GraphQL.pdf
YAN IT Solutions Pvt. Ltd
 
From rest api to graph ql a 10 year journey
Arno Schulz
 
GraphQL across the stack: How everything fits together
Sashko Stubailo
 
GraphQL API Crafts presentation
Sudheer J
 
Apollo server II
NodeXperts
 
Ad

More from LeanIX GmbH (20)

PDF
LeanIX Virtual Workspaces
LeanIX GmbH
 
PDF
How to reduce complexity by segregating your data with Virtual Workspaces
LeanIX GmbH
 
PDF
Gartner EA: The Rise of Data-driven Architectures
LeanIX GmbH
 
PDF
Application Harmonisation using Design Principles in LeanIX
LeanIX GmbH
 
PPT
Effective EAM: whet your appetite & deliver solutions
LeanIX GmbH
 
PPTX
Lean EAM with the Microservices Add-on and the Signavio Integration
LeanIX GmbH
 
PDF
Integration Architecture with the Data Flow
LeanIX GmbH
 
PPTX
Application Rationalization with LeanIX
LeanIX GmbH
 
PPTX
LeanIX Inventory: Import & Export
LeanIX GmbH
 
PDF
Survey Add-on Showcase: Cloud Transformation
LeanIX GmbH
 
PDF
The LeanIX Microservices Integration
LeanIX GmbH
 
PPTX
Ensure GDPR Compliance with LeanIX
LeanIX GmbH
 
PPTX
LeanIX-Signavio Integration
LeanIX GmbH
 
PPTX
How to set up a Lean Standards Governance
LeanIX GmbH
 
PPTX
Innovative API-Based LeanIX Enhancements
LeanIX GmbH
 
PDF
Moving EA - from where we are to where we should be
LeanIX GmbH
 
PDF
Is next generation EAM more than just agile IT planning?
LeanIX GmbH
 
PPTX
Beyond CIO - Will there still be Architecture Management in 2025
LeanIX GmbH
 
PDF
The Day After Tomorrow
LeanIX GmbH
 
PPTX
The state of SAP S/4HANA Transformation seen from an Enterprise Architecture ...
LeanIX GmbH
 
LeanIX Virtual Workspaces
LeanIX GmbH
 
How to reduce complexity by segregating your data with Virtual Workspaces
LeanIX GmbH
 
Gartner EA: The Rise of Data-driven Architectures
LeanIX GmbH
 
Application Harmonisation using Design Principles in LeanIX
LeanIX GmbH
 
Effective EAM: whet your appetite & deliver solutions
LeanIX GmbH
 
Lean EAM with the Microservices Add-on and the Signavio Integration
LeanIX GmbH
 
Integration Architecture with the Data Flow
LeanIX GmbH
 
Application Rationalization with LeanIX
LeanIX GmbH
 
LeanIX Inventory: Import & Export
LeanIX GmbH
 
Survey Add-on Showcase: Cloud Transformation
LeanIX GmbH
 
The LeanIX Microservices Integration
LeanIX GmbH
 
Ensure GDPR Compliance with LeanIX
LeanIX GmbH
 
LeanIX-Signavio Integration
LeanIX GmbH
 
How to set up a Lean Standards Governance
LeanIX GmbH
 
Innovative API-Based LeanIX Enhancements
LeanIX GmbH
 
Moving EA - from where we are to where we should be
LeanIX GmbH
 
Is next generation EAM more than just agile IT planning?
LeanIX GmbH
 
Beyond CIO - Will there still be Architecture Management in 2025
LeanIX GmbH
 
The Day After Tomorrow
LeanIX GmbH
 
The state of SAP S/4HANA Transformation seen from an Enterprise Architecture ...
LeanIX GmbH
 
Ad

Recently uploaded (20)

PDF
Understanding the EU Cyber Resilience Act
ICS
 
PDF
How to get the licensing right for Microsoft Core Infrastructure Server Suite...
Q-Advise
 
PDF
Meet in the Middle: Solving the Low-Latency Challenge for Agentic AI
Alluxio, Inc.
 
PDF
10 posting ideas for community engagement with AI prompts
Pankaj Taneja
 
PPTX
Transforming Lending with IntelliGrow – Advanced Loan Software Solutions
Intelli grow
 
PDF
Virtual Threads in Java: A New Dimension of Scalability and Performance
Tier1 app
 
PPTX
Odoo Migration Services by CandidRoot Solutions
CandidRoot Solutions Private Limited
 
PDF
SAP GUI Installation Guide for macOS (iOS) | Connect to SAP Systems on Mac
SAP Vista, an A L T Z E N Company
 
PPTX
BB FlashBack Pro 5.61.0.4843 With Crack Free Download
cracked shares
 
PDF
Notification System for Construction Logistics Application
Safe Software
 
PDF
chapter 5.pdf cyber security and Internet of things
PalakSharma980227
 
PDF
Code and No-Code Journeys: The Maintenance Shortcut
Applitools
 
PDF
AI Software Engineering based on Multi-view Modeling and Engineering Patterns
Hironori Washizaki
 
PDF
Best Insurance Compliance Software for Managing Regulations
Insurance Tech Services
 
PDF
Top 10 AI Use Cases Every Business Should Know.pdf
nicogonzalez1075
 
PPTX
prodad heroglyph crack 2.0.214.2 Full Free Download
cracked shares
 
PDF
custom development enhancement | Togglenow.pdf
aswinisuhu
 
PPTX
API DOCUMENTATION | API INTEGRATION PLATFORM
philipnathen82
 
PDF
How AI in Healthcare Apps Can Help You Enhance Patient Care?
Lilly Gracia
 
PDF
Why Are More Businesses Choosing Partners Over Freelancers for Salesforce.pdf
Cymetrix Software
 
Understanding the EU Cyber Resilience Act
ICS
 
How to get the licensing right for Microsoft Core Infrastructure Server Suite...
Q-Advise
 
Meet in the Middle: Solving the Low-Latency Challenge for Agentic AI
Alluxio, Inc.
 
10 posting ideas for community engagement with AI prompts
Pankaj Taneja
 
Transforming Lending with IntelliGrow – Advanced Loan Software Solutions
Intelli grow
 
Virtual Threads in Java: A New Dimension of Scalability and Performance
Tier1 app
 
Odoo Migration Services by CandidRoot Solutions
CandidRoot Solutions Private Limited
 
SAP GUI Installation Guide for macOS (iOS) | Connect to SAP Systems on Mac
SAP Vista, an A L T Z E N Company
 
BB FlashBack Pro 5.61.0.4843 With Crack Free Download
cracked shares
 
Notification System for Construction Logistics Application
Safe Software
 
chapter 5.pdf cyber security and Internet of things
PalakSharma980227
 
Code and No-Code Journeys: The Maintenance Shortcut
Applitools
 
AI Software Engineering based on Multi-view Modeling and Engineering Patterns
Hironori Washizaki
 
Best Insurance Compliance Software for Managing Regulations
Insurance Tech Services
 
Top 10 AI Use Cases Every Business Should Know.pdf
nicogonzalez1075
 
prodad heroglyph crack 2.0.214.2 Full Free Download
cracked shares
 
custom development enhancement | Togglenow.pdf
aswinisuhu
 
API DOCUMENTATION | API INTEGRATION PLATFORM
philipnathen82
 
How AI in Healthcare Apps Can Help You Enhance Patient Care?
Lilly Gracia
 
Why Are More Businesses Choosing Partners Over Freelancers for Salesforce.pdf
Cymetrix Software
 

LeanIX GraphQL Lessons Learned - CodeTalks 2017