Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Enterprise Spree - Daniel Honig

spreeconf
August 23, 2012

Enterprise Spree - Daniel Honig

Using Spree to build solutions for one of America's largest brands

spreeconf

August 23, 2012
Tweet

More Decks by spreeconf

Other Decks in Programming

Transcript

  1. 1

  2. Who am I? 3 Daniel Honig New York City based

    Software Architect and Developer Co-Founder of DirectNorth [email protected] 15 years of experience across a diverse amount of platforms 3+ years of building solutions on Spree Commerce Background includes other e-commerce platforms such as ATG and Magento Interests: Snowboarding Cooking Technology
  3. Agenda 4 • Explore how Spree was used to build

    a B2B and B2C E-commerce solution. • Examine Spree as an enterprise e-commerce platform
  4. What is enterprise e-commerce? • There are different classes of

    e-commerce sites: • Stand Alone – Not integrated with back end systems • Partially Integrated – Some Integration batch updated to/from the back office • Full Enterprise – Complete back office integration and automation 5
  5. Functions common in Enterprise Environments CRM • Customer Service, Multichannel

    customer support, Zen Desk CMS Content Management • From simple page mgmt to creation of marketing sites. ERP • General Ledger, Inventory Control, Warehouse mgmt. 3PL “Third Party Logistics” BI - Business Intelligence • Reporting and Data Analysis 6
  6. Why we chose Spree? Highly customizable Based on common open

    source components Needed an agile platform Mature testing strategies and tools 8
  7. Today 1300+ Stores served by Spree Spree provides a highly

    customized user e- commerce experience to visitors of Chipotle.com which receives an avg of over 25,000 unique visitors a day. Running on JRuby+Torquebox Every major part of Spree has been customized 10
  8. Current Architecture Diagram 15 Server2 R Loomstate ERP System V2K

    Database SQLServer IRT on Demand Report Engine R Server1 JBoss Chipotle B2B App Chipotle B2C App Rabbit MQ Temporary Storage MySQL Master JBoss Chipotle B2B App Chipotle B2C App MySQL Slave R .NET Listener B2C/B2B Users B2C/B2B Users Loomstate for Chipotle E-Commerce Platform - 6/2012 R
  9. Torquebox - Pros/Cons Pros • A complete application platform •

    Highly Performant • Scalable • JRuby • Spree generally runs extremely well under TorqueBox Cons • Requires in house Java talent • JRuby • Can seem complex without the right prequisites • Developer experience is good, but can always get better. 16
  10. • RabbitMQ - Stable, reliable cross platform messaging • Visual

    2000 - We had no choice. • C# - We couldn’t think of a better way to talk to SQLServer on Windows • ApacheCXF - Faster execution than RSoap( and we were using JRUBY anyways) • BIRT - Because Ruport did not Chipotle’s custom font ( and we were using JRUBY anyways.) • Zen Desk - Works great. • Exact Target - We had no choice. Other Technologies Used and Why 18
  11. What we recommend? • YMMV - We leveraged a lot

    of in house experience • For us it was an elaborative process, solving problems as they arose using the best tools we had in our toolbox • Use what you know or can learn quickly 19
  12. Our testing strategy Started with RSpec tests for customizations We

    used Selenium for Functional Testing Migrated to Cucumber 20
  13. Cucumber Testing with Spree, Our Experience Eliminated the need for

    Selenium. Good! Tests were difficult to maintain in the face of a changing design Was just too slow and costly to maintain Reverted to RSpec and Selenium RSpec/Spork is a great developer experience 21
  14. Whats next for us? Consolidate platform Multi-tenant Integrate with advanced

    content management capabilities Turnkey solution for multiple brands and initiatives 22
  15. Content Management Grid based e-commerce is not enough Park &

    Bond (www.parkandbond.com) Pages suitable for Marketing We have a prototype of Spree + Alchemy to meet this need. 23