SlideShare a Scribd company logo
Introduction to Building E-Commerce
Solutions on Heroku and Salesforce
Scott Geosits, Trifecta Technologies Inc., Salesforce.com Solutions Architect and Team Lead
@scottgeosits
All about Trifecta Technologies
▪ IT Business Solutions Company
▪ Custom Enterprise and Highly Integrated Solutions
▪ Specializing in Salesforce, Mobile, and Web
▪ Engaged by leading brands across many industries
▪ 22+ years of Customer Success
Who is Varsity? We are cheerleading!!!
Leading provider of
apparel and accessories
to cheer and dance
teams across North
America
The Varsity Colors business story
Business Need:
•Create fully branded online
fundraising stores on demand
for school teams
•Leverage existing
Salesforce implementation
•Quick and simple setup and
configuration for users
Solution overview

In
te
gr
at
io
n
Ti
er

- A
S
4
0
0
i
S
e
r
i
e
s
E
R
P

Team Store
Microsites

Product
Catalog

heroku add-ons
heroku add-ons

database.com
Worker
Services
Microsite
Configuration

- A
d
o
b
e
S
c
e
n
e
7

- C
y
b
e
r

Environment
Configuration

Microsite
Admin

Varsity Legacy Platform

Adobe
Scene7

-AS400 iSeries ERP
-Order Management System
-CyberSource Payment
Gateway
Solution overview – Force.com

Product
Catalog

database.com

Microsite
Configuration

Adobe
Scene7
Solution Details – Force.com
Why we chose Force.com
▪ Varsity has embraced Force.com across all levels of the business
▪ Significantly lower development costs
▪ Workflow for store approvals
▪ Sales reps do most of their work in Salesforce
▪ Reporting on fundraising program sales
Force.com – Product catalog and store maintenance
▪ Product data sourced from corporate ERP system
▪ Administrators configure product data
▪ Markup and web content controlled by administrator
▪ Configure customizable product layers
▪ Adobe Scene 7 integration updates images immediately
▪ Color scheme groupings for easy maintenance
▪ Sales reps configure store style and content
▪ Catalog per school allows reps to select products for sale
▪ One click to publish site to Heroku
Force.com – Product catalog and store maintenance
Force.com – Order capture and dashboards
▪ Orders captured in both Salesforce and ERP
▪ Dashboards provide easy visibility to sales totals
Force.com – Best practices and lessons learned
▪ Salesforce pushes updates for products, accounts to Heroku
▪ Heroku integration via Salesforce REST API
▪ Be aware of governor limits!
▪

Script limits - this has been removed

▪

DML Statements / query limits

▪

Downstream trigger cascade effects and considerations

▪

Large complex data model can cause you to exceed limits

▪

External email limit exceptions

▪ Limit your API calls
▪

Use custom Apex REST services where appropriate to reduce API calls and define
transaction boundaries
Solution overview – Heroku

In
te
gr
at
io
n
Ti
er

- A
S
4
0
0
i
S
e
r
i
e
s
E
R
P

Team Store
Microsites

Environment
Configuration

heroku add-ons
heroku add-ons

Worker
Services

- A
d
o
b
e
S
c
e
n
e
7

- C
y
b
e
r

Microsite
Admin

Varsity Legacy Platform

Adobe
Scene7

-AS400 iSeries ERP
-Order Management System
-CyberSource Payment
Gateway
Solution Details – Heroku
Why we chose Heroku
▪ Customer facing application functionality
• Java gives us more flexibility for pure custom solution.
• Customer facing sites do not need full Salesforce capabilities and would be cost
prohibitive for user licensing.

▪ Integration
• Real-time processing on Heroku vs. scheduled jobs in Force.com.

▪ Service options
• Availability of more ready-to-go functionality via add-ons

▪ Scalability
• Start small and add dynos as the application grows
Team store and fundraising site
▪ School specific branding, style, and content
▪ Hundreds of school sites rendered via single set of CSS and HTML templates
Custom fundraising e-commerce solution
▪

Full cart and checkout e-Commerce functionality

▪

Adobe Scene 7 renders dynamic product images

▪

Social links allow shoppers to share items

▪

Custom Heroku authentication for customers
Heroku Application Structure
▪ Java / Spring MVC core
▪ Add-on services
▪

Cloudant storage

▪

Memcachier caching

▪

SendGrid email service

▪

CloudAMQP Message Queueing

▪ Adobe Scene 7 dynamic image creation
▪ S3 static asset hosting
▪ New Relic monitoring
Heroku architecture constraints
▪ Web dynos must respond in 30 seconds or less
▪ Dynos must start up in 60 seconds or less
▪ Heap size
▪ 1x dynos get 512 MB, 2x dynos get 1024MB

▪ No session state
▪ Need persistence solution such as Cloudant

▪ No web server or filesystem
▪ S3 or similar solution for static assets (CSS, javascript, images, etc.)
Heroku – Best practices and lessons learned
▪ Caching strategy
▪

Frequently accessed pages pre-generated and cached for fast web dyno response

▪

Two level cache for header, footer, catalog and product HTML components
▪

Memcache provides fast primary lookup

▪

If item not present in memcache, retrieve from Cloudant if not dirty

▪

If dirty, request regeneration of HTML component

▪

Product and account information also cached in this manner

▪ Long running processes
▪

Use worker dynos, message queues and AJAX calls to check status on web pages

▪

Page generation, order completion
Heroku – Best practices and lessons learned
▪ Also use worker dynos for batch processing
▪

Integration worker to update Salesforce from AS/400 ERP

▪

Batch job to re-generate dirty HTML page components in the background

▪ Cloudant for session persistence
▪ Take advantage of add-on services to reduce implementation time
▪

No need to rebuild functionality

▪

Use developer level services for prototyping and development

▪ Throughput and scaling
▪

Java web dynos support multithreading – use this to boost your throughput
For more information…
▪ Heroku Dev Center
•

https://devcenter.heroku.com

•

Heroku is free to try and develop on – sign up for an account at http://www.heroku.com

▪ Salesforce REST API
•

http://www.salesforce.com/us/developer/docs/api_rest/

▪ Developer.force.com
•

http://developer.force.com/

▪ Trifecta Technologies
•

http://www.trifecta.com
Scott Geosits
Salesforce.com Solutions Architect and Team Lead,
@scottgeosits
Visit Us at Booth #1207 Moscone Center Expo North or Online at www.trifecta.com!

More Related Content

What's hot

Build Amazing Website without coding using Salesforce SiteForce
Build Amazing Website without coding using Salesforce SiteForceBuild Amazing Website without coding using Salesforce SiteForce
Build Amazing Website without coding using Salesforce SiteForce
vraopolisetti
 
Let's Learn About Heroku and How to Integrate with Salesforce
Let's Learn About Heroku and How to Integrate with SalesforceLet's Learn About Heroku and How to Integrate with Salesforce
Let's Learn About Heroku and How to Integrate with Salesforce
Sudipta Deb ☁
 
Build your API with Force.com and Heroku
Build your API with Force.com and HerokuBuild your API with Force.com and Heroku
Build your API with Force.com and Heroku
Jeff Douglas
 
Enterprise Integration - Solution Patterns From the Field
Enterprise Integration - Solution Patterns From the FieldEnterprise Integration - Solution Patterns From the Field
Enterprise Integration - Solution Patterns From the Field
Salesforce Developers
 
Access External Data in Real-time with Lightning Connect
Access External Data in Real-time with Lightning ConnectAccess External Data in Real-time with Lightning Connect
Access External Data in Real-time with Lightning Connect
Salesforce Developers
 
Lightning Connect Custom Adapters: Connecting Anything with Salesforce
Lightning Connect Custom Adapters: Connecting Anything with SalesforceLightning Connect Custom Adapters: Connecting Anything with Salesforce
Lightning Connect Custom Adapters: Connecting Anything with Salesforce
Salesforce Developers
 
Developing Offline Mobile Apps with Salesforce Mobile SDK SmartStore
Developing Offline Mobile Apps with Salesforce Mobile SDK SmartStoreDeveloping Offline Mobile Apps with Salesforce Mobile SDK SmartStore
Developing Offline Mobile Apps with Salesforce Mobile SDK SmartStore
Tom Gersic
 
Integrating with salesforce
Integrating with salesforceIntegrating with salesforce
Integrating with salesforce
Mark Adcock
 
Salesforce integration with heroku apps made easy
Salesforce integration with heroku apps made easySalesforce integration with heroku apps made easy
Salesforce integration with heroku apps made easy
Saxon Global inc
 
Salesforce API Series: Integrating Applications with Force.com Webinar
Salesforce API Series: Integrating Applications with Force.com WebinarSalesforce API Series: Integrating Applications with Force.com Webinar
Salesforce API Series: Integrating Applications with Force.com Webinar
Salesforce Developers
 
Best Practices for Creating Scalable Apps with Heroku
Best Practices for Creating Scalable Apps with HerokuBest Practices for Creating Scalable Apps with Heroku
Best Practices for Creating Scalable Apps with Heroku
Salesforce Developers
 
Use Custom Metadata Types for Easy ALM & Compliance for Your Custom Apps
Use Custom Metadata Types for Easy ALM & Compliance for Your Custom AppsUse Custom Metadata Types for Easy ALM & Compliance for Your Custom Apps
Use Custom Metadata Types for Easy ALM & Compliance for Your Custom Apps
Salesforce Developers
 
Coding Apps in the Cloud with Force.com - Part 2
Coding Apps in the Cloud with Force.com - Part 2Coding Apps in the Cloud with Force.com - Part 2
Coding Apps in the Cloud with Force.com - Part 2
Salesforce Developers
 
Unite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in Practice
Unite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in PracticeUnite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in Practice
Unite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in Practice
Salesforce Developers
 
Salesforce Integration
Salesforce IntegrationSalesforce Integration
Salesforce Integration
Joshua Hoskins
 
Dreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use casesDreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use cases
Vincent Spehner
 
Salesforce Integration Patterns
Salesforce Integration PatternsSalesforce Integration Patterns
Salesforce Integration Patterns
usolutions
 
Real Time Integration with Salesforce Platform Events
Real Time Integration with Salesforce Platform EventsReal Time Integration with Salesforce Platform Events
Real Time Integration with Salesforce Platform Events
Salesforce Developers
 
Using Apex for REST Integration
Using Apex for REST IntegrationUsing Apex for REST Integration
Using Apex for REST Integration
Salesforce Developers
 
Modeling and Querying Data and Relationships in Salesforce
Modeling and Querying Data and Relationships in SalesforceModeling and Querying Data and Relationships in Salesforce
Modeling and Querying Data and Relationships in Salesforce
Salesforce Developers
 

What's hot (20)

Build Amazing Website without coding using Salesforce SiteForce
Build Amazing Website without coding using Salesforce SiteForceBuild Amazing Website without coding using Salesforce SiteForce
Build Amazing Website without coding using Salesforce SiteForce
 
Let's Learn About Heroku and How to Integrate with Salesforce
Let's Learn About Heroku and How to Integrate with SalesforceLet's Learn About Heroku and How to Integrate with Salesforce
Let's Learn About Heroku and How to Integrate with Salesforce
 
Build your API with Force.com and Heroku
Build your API with Force.com and HerokuBuild your API with Force.com and Heroku
Build your API with Force.com and Heroku
 
Enterprise Integration - Solution Patterns From the Field
Enterprise Integration - Solution Patterns From the FieldEnterprise Integration - Solution Patterns From the Field
Enterprise Integration - Solution Patterns From the Field
 
Access External Data in Real-time with Lightning Connect
Access External Data in Real-time with Lightning ConnectAccess External Data in Real-time with Lightning Connect
Access External Data in Real-time with Lightning Connect
 
Lightning Connect Custom Adapters: Connecting Anything with Salesforce
Lightning Connect Custom Adapters: Connecting Anything with SalesforceLightning Connect Custom Adapters: Connecting Anything with Salesforce
Lightning Connect Custom Adapters: Connecting Anything with Salesforce
 
Developing Offline Mobile Apps with Salesforce Mobile SDK SmartStore
Developing Offline Mobile Apps with Salesforce Mobile SDK SmartStoreDeveloping Offline Mobile Apps with Salesforce Mobile SDK SmartStore
Developing Offline Mobile Apps with Salesforce Mobile SDK SmartStore
 
Integrating with salesforce
Integrating with salesforceIntegrating with salesforce
Integrating with salesforce
 
Salesforce integration with heroku apps made easy
Salesforce integration with heroku apps made easySalesforce integration with heroku apps made easy
Salesforce integration with heroku apps made easy
 
Salesforce API Series: Integrating Applications with Force.com Webinar
Salesforce API Series: Integrating Applications with Force.com WebinarSalesforce API Series: Integrating Applications with Force.com Webinar
Salesforce API Series: Integrating Applications with Force.com Webinar
 
Best Practices for Creating Scalable Apps with Heroku
Best Practices for Creating Scalable Apps with HerokuBest Practices for Creating Scalable Apps with Heroku
Best Practices for Creating Scalable Apps with Heroku
 
Use Custom Metadata Types for Easy ALM & Compliance for Your Custom Apps
Use Custom Metadata Types for Easy ALM & Compliance for Your Custom AppsUse Custom Metadata Types for Easy ALM & Compliance for Your Custom Apps
Use Custom Metadata Types for Easy ALM & Compliance for Your Custom Apps
 
Coding Apps in the Cloud with Force.com - Part 2
Coding Apps in the Cloud with Force.com - Part 2Coding Apps in the Cloud with Force.com - Part 2
Coding Apps in the Cloud with Force.com - Part 2
 
Unite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in Practice
Unite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in PracticeUnite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in Practice
Unite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in Practice
 
Salesforce Integration
Salesforce IntegrationSalesforce Integration
Salesforce Integration
 
Dreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use casesDreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use cases
 
Salesforce Integration Patterns
Salesforce Integration PatternsSalesforce Integration Patterns
Salesforce Integration Patterns
 
Real Time Integration with Salesforce Platform Events
Real Time Integration with Salesforce Platform EventsReal Time Integration with Salesforce Platform Events
Real Time Integration with Salesforce Platform Events
 
Using Apex for REST Integration
Using Apex for REST IntegrationUsing Apex for REST Integration
Using Apex for REST Integration
 
Modeling and Querying Data and Relationships in Salesforce
Modeling and Querying Data and Relationships in SalesforceModeling and Querying Data and Relationships in Salesforce
Modeling and Querying Data and Relationships in Salesforce
 

Similar to Introduction to Building E-Commerce Solutions on Heroku and Salesforce

Spectranetics 11.6.13
Spectranetics 11.6.13Spectranetics 11.6.13
Spectranetics 11.6.13
Mark Ames
 
Succesfactors demo
Succesfactors demoSuccesfactors demo
Succesfactors demo
Verity Solutions
 
Webservices using salesforce
Webservices using salesforceWebservices using salesforce
Webservices using salesforce
F K
 
Web services using sales force.com
Web services using sales force.comWeb services using sales force.com
Web services using sales force.com
Vaishnavi
 
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at DatabricksLessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Databricks
 
adopt_soa.94145841
adopt_soa.94145841adopt_soa.94145841
adopt_soa.94145841
ypai
 
Vishnu
VishnuVishnu
SAP on AWS: Big Businesses, Big Workloads, Big Time featuring Ingram-Micro - ...
SAP on AWS: Big Businesses, Big Workloads, Big Time featuring Ingram-Micro - ...SAP on AWS: Big Businesses, Big Workloads, Big Time featuring Ingram-Micro - ...
SAP on AWS: Big Businesses, Big Workloads, Big Time featuring Ingram-Micro - ...
Amazon Web Services
 
Introducing Sitecore - The Experience Platform
Introducing Sitecore - The Experience PlatformIntroducing Sitecore - The Experience Platform
Introducing Sitecore - The Experience Platform
Adrian IORGU
 
Katpro general portfolio - industry based
Katpro general portfolio - industry basedKatpro general portfolio - industry based
Katpro general portfolio - industry based
Katpro Technologies Pvt Ltd
 
CA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the EnterpriseCA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the Enterprise
Mark Sigler
 
Resume (1)
Resume (1)Resume (1)
Resume (1)
tmanu 696
 
How to Build TOGAF Architectures With System Architect (2).ppt
How to Build TOGAF Architectures With System Architect (2).pptHow to Build TOGAF Architectures With System Architect (2).ppt
How to Build TOGAF Architectures With System Architect (2).ppt
StevenShing
 
tonyz
tonyztonyz
tonyz
Tony Zhang
 
Architecting a Next Gen Data Platform – Strata London 2018
Architecting a Next Gen Data Platform – Strata London 2018Architecting a Next Gen Data Platform – Strata London 2018
Architecting a Next Gen Data Platform – Strata London 2018
Jonathan Seidman
 
Soa suite12c presentation @AMIS by Simone Geib
Soa suite12c presentation @AMIS by Simone GeibSoa suite12c presentation @AMIS by Simone Geib
Soa suite12c presentation @AMIS by Simone Geib
Getting value from IoT, Integration and Data Analytics
 
Webinar - Learn How to Deploy Microsoft SQL in the Cloud
Webinar - Learn How to Deploy Microsoft SQL in the CloudWebinar - Learn How to Deploy Microsoft SQL in the Cloud
Webinar - Learn How to Deploy Microsoft SQL in the Cloud
Tuan Yang
 
Syed mubin 3.2 years Exppersion in Salesforce
Syed mubin 3.2 years Exppersion in SalesforceSyed mubin 3.2 years Exppersion in Salesforce
Syed mubin 3.2 years Exppersion in Salesforce
syed mubin
 
Converting Your Existing SAP Server Infrastructure to a Modern Cloud-Based Ar...
Converting Your Existing SAP Server Infrastructure to a Modern Cloud-Based Ar...Converting Your Existing SAP Server Infrastructure to a Modern Cloud-Based Ar...
Converting Your Existing SAP Server Infrastructure to a Modern Cloud-Based Ar...
PT Datacomm Diangraha
 
Praxistaugliche notes strategien 4 cloud
Praxistaugliche notes strategien 4 cloudPraxistaugliche notes strategien 4 cloud
Praxistaugliche notes strategien 4 cloud
Roman Weber
 

Similar to Introduction to Building E-Commerce Solutions on Heroku and Salesforce (20)

Spectranetics 11.6.13
Spectranetics 11.6.13Spectranetics 11.6.13
Spectranetics 11.6.13
 
Succesfactors demo
Succesfactors demoSuccesfactors demo
Succesfactors demo
 
Webservices using salesforce
Webservices using salesforceWebservices using salesforce
Webservices using salesforce
 
Web services using sales force.com
Web services using sales force.comWeb services using sales force.com
Web services using sales force.com
 
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at DatabricksLessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
 
adopt_soa.94145841
adopt_soa.94145841adopt_soa.94145841
adopt_soa.94145841
 
Vishnu
VishnuVishnu
Vishnu
 
SAP on AWS: Big Businesses, Big Workloads, Big Time featuring Ingram-Micro - ...
SAP on AWS: Big Businesses, Big Workloads, Big Time featuring Ingram-Micro - ...SAP on AWS: Big Businesses, Big Workloads, Big Time featuring Ingram-Micro - ...
SAP on AWS: Big Businesses, Big Workloads, Big Time featuring Ingram-Micro - ...
 
Introducing Sitecore - The Experience Platform
Introducing Sitecore - The Experience PlatformIntroducing Sitecore - The Experience Platform
Introducing Sitecore - The Experience Platform
 
Katpro general portfolio - industry based
Katpro general portfolio - industry basedKatpro general portfolio - industry based
Katpro general portfolio - industry based
 
CA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the EnterpriseCA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the Enterprise
 
Resume (1)
Resume (1)Resume (1)
Resume (1)
 
How to Build TOGAF Architectures With System Architect (2).ppt
How to Build TOGAF Architectures With System Architect (2).pptHow to Build TOGAF Architectures With System Architect (2).ppt
How to Build TOGAF Architectures With System Architect (2).ppt
 
tonyz
tonyztonyz
tonyz
 
Architecting a Next Gen Data Platform – Strata London 2018
Architecting a Next Gen Data Platform – Strata London 2018Architecting a Next Gen Data Platform – Strata London 2018
Architecting a Next Gen Data Platform – Strata London 2018
 
Soa suite12c presentation @AMIS by Simone Geib
Soa suite12c presentation @AMIS by Simone GeibSoa suite12c presentation @AMIS by Simone Geib
Soa suite12c presentation @AMIS by Simone Geib
 
Webinar - Learn How to Deploy Microsoft SQL in the Cloud
Webinar - Learn How to Deploy Microsoft SQL in the CloudWebinar - Learn How to Deploy Microsoft SQL in the Cloud
Webinar - Learn How to Deploy Microsoft SQL in the Cloud
 
Syed mubin 3.2 years Exppersion in Salesforce
Syed mubin 3.2 years Exppersion in SalesforceSyed mubin 3.2 years Exppersion in Salesforce
Syed mubin 3.2 years Exppersion in Salesforce
 
Converting Your Existing SAP Server Infrastructure to a Modern Cloud-Based Ar...
Converting Your Existing SAP Server Infrastructure to a Modern Cloud-Based Ar...Converting Your Existing SAP Server Infrastructure to a Modern Cloud-Based Ar...
Converting Your Existing SAP Server Infrastructure to a Modern Cloud-Based Ar...
 
Praxistaugliche notes strategien 4 cloud
Praxistaugliche notes strategien 4 cloudPraxistaugliche notes strategien 4 cloud
Praxistaugliche notes strategien 4 cloud
 

More from Salesforce Developers

Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce DevelopersSample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Salesforce Developers
 
Maximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component PerformanceMaximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component Performance
Salesforce Developers
 
Local development with Open Source Base Components
Local development with Open Source Base ComponentsLocal development with Open Source Base Components
Local development with Open Source Base Components
Salesforce Developers
 
TrailheaDX India : Developer Highlights
TrailheaDX India : Developer HighlightsTrailheaDX India : Developer Highlights
TrailheaDX India : Developer Highlights
Salesforce Developers
 
Why developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX IndiaWhy developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX India
Salesforce Developers
 
CodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local DevelopmentCodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local Development
Salesforce Developers
 
CodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web ComponentsCodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web Components
Salesforce Developers
 
Enterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web ComponentsEnterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web Components
Salesforce Developers
 
TrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer HighlightsTrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer Highlights
Salesforce Developers
 
Live coding with LWC
Live coding with LWCLive coding with LWC
Live coding with LWC
Salesforce Developers
 
Lightning web components - Episode 4 : Security and Testing
Lightning web components  - Episode 4 : Security and TestingLightning web components  - Episode 4 : Security and Testing
Lightning web components - Episode 4 : Security and Testing
Salesforce Developers
 
LWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura InteroperabilityLWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura Interoperability
Salesforce Developers
 
Lightning web components episode 2- work with salesforce data
Lightning web components   episode 2- work with salesforce dataLightning web components   episode 2- work with salesforce data
Lightning web components episode 2- work with salesforce data
Salesforce Developers
 
Lightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An IntroductionLightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An Introduction
Salesforce Developers
 
Migrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCPMigrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCP
Salesforce Developers
 
Scale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in SalesforceScale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in Salesforce
Salesforce Developers
 
Replicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data CaptureReplicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data Capture
Salesforce Developers
 
Modern Development with Salesforce DX
Modern Development with Salesforce DXModern Development with Salesforce DX
Modern Development with Salesforce DX
Salesforce Developers
 
Get Into Lightning Flow Development
Get Into Lightning Flow DevelopmentGet Into Lightning Flow Development
Get Into Lightning Flow Development
Salesforce Developers
 
Integrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS ConnectIntegrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS Connect
Salesforce Developers
 

More from Salesforce Developers (20)

Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce DevelopersSample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce Developers
 
Maximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component PerformanceMaximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component Performance
 
Local development with Open Source Base Components
Local development with Open Source Base ComponentsLocal development with Open Source Base Components
Local development with Open Source Base Components
 
TrailheaDX India : Developer Highlights
TrailheaDX India : Developer HighlightsTrailheaDX India : Developer Highlights
TrailheaDX India : Developer Highlights
 
Why developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX IndiaWhy developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX India
 
CodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local DevelopmentCodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local Development
 
CodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web ComponentsCodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web Components
 
Enterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web ComponentsEnterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web Components
 
TrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer HighlightsTrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer Highlights
 
Live coding with LWC
Live coding with LWCLive coding with LWC
Live coding with LWC
 
Lightning web components - Episode 4 : Security and Testing
Lightning web components  - Episode 4 : Security and TestingLightning web components  - Episode 4 : Security and Testing
Lightning web components - Episode 4 : Security and Testing
 
LWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura InteroperabilityLWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura Interoperability
 
Lightning web components episode 2- work with salesforce data
Lightning web components   episode 2- work with salesforce dataLightning web components   episode 2- work with salesforce data
Lightning web components episode 2- work with salesforce data
 
Lightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An IntroductionLightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An Introduction
 
Migrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCPMigrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCP
 
Scale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in SalesforceScale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in Salesforce
 
Replicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data CaptureReplicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data Capture
 
Modern Development with Salesforce DX
Modern Development with Salesforce DXModern Development with Salesforce DX
Modern Development with Salesforce DX
 
Get Into Lightning Flow Development
Get Into Lightning Flow DevelopmentGet Into Lightning Flow Development
Get Into Lightning Flow Development
 
Integrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS ConnectIntegrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS Connect
 

Recently uploaded

Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
David Brossard
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 

Recently uploaded (20)

Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 

Introduction to Building E-Commerce Solutions on Heroku and Salesforce

  • 1. Introduction to Building E-Commerce Solutions on Heroku and Salesforce Scott Geosits, Trifecta Technologies Inc., Salesforce.com Solutions Architect and Team Lead @scottgeosits
  • 2. All about Trifecta Technologies ▪ IT Business Solutions Company ▪ Custom Enterprise and Highly Integrated Solutions ▪ Specializing in Salesforce, Mobile, and Web ▪ Engaged by leading brands across many industries ▪ 22+ years of Customer Success
  • 3. Who is Varsity? We are cheerleading!!! Leading provider of apparel and accessories to cheer and dance teams across North America
  • 4. The Varsity Colors business story Business Need: •Create fully branded online fundraising stores on demand for school teams •Leverage existing Salesforce implementation •Quick and simple setup and configuration for users
  • 5. Solution overview In te gr at io n Ti er - A S 4 0 0 i S e r i e s E R P Team Store Microsites Product Catalog heroku add-ons heroku add-ons database.com Worker Services Microsite Configuration - A d o b e S c e n e 7 - C y b e r Environment Configuration Microsite Admin Varsity Legacy Platform Adobe Scene7 -AS400 iSeries ERP -Order Management System -CyberSource Payment Gateway
  • 6. Solution overview – Force.com Product Catalog database.com Microsite Configuration Adobe Scene7
  • 7. Solution Details – Force.com Why we chose Force.com ▪ Varsity has embraced Force.com across all levels of the business ▪ Significantly lower development costs ▪ Workflow for store approvals ▪ Sales reps do most of their work in Salesforce ▪ Reporting on fundraising program sales
  • 8. Force.com – Product catalog and store maintenance ▪ Product data sourced from corporate ERP system ▪ Administrators configure product data ▪ Markup and web content controlled by administrator ▪ Configure customizable product layers ▪ Adobe Scene 7 integration updates images immediately ▪ Color scheme groupings for easy maintenance ▪ Sales reps configure store style and content ▪ Catalog per school allows reps to select products for sale ▪ One click to publish site to Heroku
  • 9. Force.com – Product catalog and store maintenance
  • 10. Force.com – Order capture and dashboards ▪ Orders captured in both Salesforce and ERP ▪ Dashboards provide easy visibility to sales totals
  • 11. Force.com – Best practices and lessons learned ▪ Salesforce pushes updates for products, accounts to Heroku ▪ Heroku integration via Salesforce REST API ▪ Be aware of governor limits! ▪ Script limits - this has been removed ▪ DML Statements / query limits ▪ Downstream trigger cascade effects and considerations ▪ Large complex data model can cause you to exceed limits ▪ External email limit exceptions ▪ Limit your API calls ▪ Use custom Apex REST services where appropriate to reduce API calls and define transaction boundaries
  • 12. Solution overview – Heroku In te gr at io n Ti er - A S 4 0 0 i S e r i e s E R P Team Store Microsites Environment Configuration heroku add-ons heroku add-ons Worker Services - A d o b e S c e n e 7 - C y b e r Microsite Admin Varsity Legacy Platform Adobe Scene7 -AS400 iSeries ERP -Order Management System -CyberSource Payment Gateway
  • 13. Solution Details – Heroku Why we chose Heroku ▪ Customer facing application functionality • Java gives us more flexibility for pure custom solution. • Customer facing sites do not need full Salesforce capabilities and would be cost prohibitive for user licensing. ▪ Integration • Real-time processing on Heroku vs. scheduled jobs in Force.com. ▪ Service options • Availability of more ready-to-go functionality via add-ons ▪ Scalability • Start small and add dynos as the application grows
  • 14. Team store and fundraising site ▪ School specific branding, style, and content ▪ Hundreds of school sites rendered via single set of CSS and HTML templates
  • 15. Custom fundraising e-commerce solution ▪ Full cart and checkout e-Commerce functionality ▪ Adobe Scene 7 renders dynamic product images ▪ Social links allow shoppers to share items ▪ Custom Heroku authentication for customers
  • 16. Heroku Application Structure ▪ Java / Spring MVC core ▪ Add-on services ▪ Cloudant storage ▪ Memcachier caching ▪ SendGrid email service ▪ CloudAMQP Message Queueing ▪ Adobe Scene 7 dynamic image creation ▪ S3 static asset hosting ▪ New Relic monitoring
  • 17. Heroku architecture constraints ▪ Web dynos must respond in 30 seconds or less ▪ Dynos must start up in 60 seconds or less ▪ Heap size ▪ 1x dynos get 512 MB, 2x dynos get 1024MB ▪ No session state ▪ Need persistence solution such as Cloudant ▪ No web server or filesystem ▪ S3 or similar solution for static assets (CSS, javascript, images, etc.)
  • 18. Heroku – Best practices and lessons learned ▪ Caching strategy ▪ Frequently accessed pages pre-generated and cached for fast web dyno response ▪ Two level cache for header, footer, catalog and product HTML components ▪ Memcache provides fast primary lookup ▪ If item not present in memcache, retrieve from Cloudant if not dirty ▪ If dirty, request regeneration of HTML component ▪ Product and account information also cached in this manner ▪ Long running processes ▪ Use worker dynos, message queues and AJAX calls to check status on web pages ▪ Page generation, order completion
  • 19. Heroku – Best practices and lessons learned ▪ Also use worker dynos for batch processing ▪ Integration worker to update Salesforce from AS/400 ERP ▪ Batch job to re-generate dirty HTML page components in the background ▪ Cloudant for session persistence ▪ Take advantage of add-on services to reduce implementation time ▪ No need to rebuild functionality ▪ Use developer level services for prototyping and development ▪ Throughput and scaling ▪ Java web dynos support multithreading – use this to boost your throughput
  • 20. For more information… ▪ Heroku Dev Center • https://devcenter.heroku.com • Heroku is free to try and develop on – sign up for an account at http://www.heroku.com ▪ Salesforce REST API • http://www.salesforce.com/us/developer/docs/api_rest/ ▪ Developer.force.com • http://developer.force.com/ ▪ Trifecta Technologies • http://www.trifecta.com
  • 21. Scott Geosits Salesforce.com Solutions Architect and Team Lead, @scottgeosits
  • 22. Visit Us at Booth #1207 Moscone Center Expo North or Online at www.trifecta.com!