Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Serviceful Serverless Computing Topics

180 views

Published on

4 presentations in a single Serverless Meetup! Our "Birthday Special" consisted of:
1. “Show and tell of Cloudinary BaaS recipes and DAM for a dynamic world” by Eric Courville, Sr. Director – Business Development, Americas at Cloudinary
2. “AliPay/WeChatPay @ HBC/SAKS” by Danny Elisha, Sr. Systems Architect at HBC
3. “How to leverage AWS – Unofficial Guide for Startups” by Alan Williamson, Director – Solutions Architecture at Onica.com
4. “Spreading the JAM(stack) to build Static serverless websites” by Bhavana Srinivas, Solutions Engineer at Netlify.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Serviceful Serverless Computing Topics

  1. 1. Wed, Feb 20, 2019 Meetup Agenda 1. Introduction & Meetup Theme 2. “Birthday Party” Sponsors 3. Community Open Mic 4. Presentations by: Eric Courville - Cloudinary, Danny Elisha - HBC, Alan Williamson - Onica, Bhavana Srinivas - Netlify 5. Networking 1 Happy 1st birthday, Serverless Toronto!
  2. 2. How #ServerlessTO Came to Life? https://www.slideshare.net/dzivkovi/lets-go-serverless/27 https://www.linkedin.com/feed/update/urn:li:activity:6372679295193608192/ 2 1. Out of my frustration with what IT has become, and 2. wish do something meaningful:
  3. 3. If all you have is a hammer, everything looks like a nail – Abraham Maslow 3 Maslow's Hammer (Psychology of Science) https://twitter.com/JoeEmison/status/1089898913191084034
  4. 4. Teaching People to do Serverless is Hard – Paul Johnston 4 https://threadreaderapp.com/thread/1073347546553217024.html
  5. 5. Serverless Computing Emphasis is now moving towards “Serviceful Serverless” 5 https://threadreaderapp.com/thread/985583747478245376.html https://www.infoq.com/articles/serverless-sea-change This is a shift away from just coding Functions (FaaS), towards using third-party APIs for Back-end functionality (BaaS) as much as possible . Here’s why: 1. Using Functions like a glue between Back-end services 2. requires less Back-end code. 3. Less code = less Complexity and less Technical Debt.
  6. 6. February 2019 Presentations & Presenters 6 Full “Serviceful Serverless” presentation (~30min): 1. Show and tell of Cloudinary BaaS recipes and DAM for a dynamic world Eric Courville, Sr. Director - Business Development, Americas at Cloudinary Lightning talks (from 5 to 15 minutes): 2. AliPay/WeChatPay @ HBC/SAKS Danny Elisha, Sr. Systems Architect at HBC 3. How to leverage AWS - Unofficial Guide for Startups Alan Williamson, Director - Solutions Architecture at Onica.com 4. Spreading the JAM(stack) to build Static serverless websites Bhavana Srinivas, Solutions Engineer at Netlify
  7. 7. 7 Founded in 1670, HBC is the oldest company in North America. Today, HBC is widely recognized as a diversified global retailer, focused on driving the performance of high-quality stores and their omni-channel offerings, as well as unlocking the value of real estate holdings. Today, HBC's portfolio includes more than 480 stores, ranging from luxury destinations to off-price locations. Worldwide, HBC is proud to have more than 65,000 employees. HBC's leading banners across North America include Hudson's Bay, Lord & Taylor, Saks Fifth Avenue, Saks OFF 5TH.
  8. 8. 8 tech.hbc.com @hbcTechTeam HBC Tech drives the digital retail/e-commerce and digital customer experience across all HBC retail banners, including Hudson’s Bay, Lord & Taylor, Saks Fifth Avenue and Saks OFF 5TH. While it’s clear that the future of retail will rely heavily on new digital and online innovation, we believe that this best model is an omni- channel approach to succeed in the coming years. With millions of customers, both online and in stores, HBC is positioned at the center of this reinvention. A recent survey of HBC Tech employees about HBC culture revealed the three most common attributes were “fast-paced,” “team-oriented” and “growth.” FAST-PACED – Our Associates are constantly tackling new problems and challenges that result from working in an industry that is continuously evolving. TEAM-ORIENTED – Our Associates work on small, cross-functional teams with a high level of autonomy and ownership. Projects are run in an agile environment. We keep meetings to a minimum so people can focus on getting work done. GROWTH – Our Associates are encouraged to use 20% of their time for learning new technologies. HBC Tech also has a strong history of developing our employees and opening new doors for them to grow their careers.
  9. 9. Manning Publications 2019 giveaways: 1. www.manning.com/books/serverless-applications-with-nodejs 2. www.manning.com/livevideo/production-ready-serverless 3. www.manning.com/livevideo/production-ready-serverless 4. www.manning.com/livevideo/serverless-applications-with-AWS 5. www.manning.com/livevideo/serverless-applications-with-AWS 6. www.manning.com/books/serverless-architectures-on-aws 7. www.manning.com/books/http2-in-action 8. www.manning.com/books/event-streams-in-action 9. www.manning.com/books/the-design-of-everyday-apis 10. www.manning.com/livevideo/graphql-in-motion 11. www.manning.com/books/voice-applications-for-alexa-and-google-assistant 12. www.manning.com/livevideo/machine-learning-for-mere-mortals 9
  10. 10. Community Open Mic 10 10 seconds of freedom to pitch yourself, or your company
  11. 11. Join www.ServerlessToronto.org Home of “Less IT Mess”
  12. 12. © 2018 Cloudinary Inc., Confidential Information. Do Not Distribute. 1 400,000+ Developers, 5000+ Customers, 25B+ Managed Assets Show and tell of Cloudinary BaaS recipes and DAM for a Dynamic World Eric Courville Sr. Director Business Development Timirah James Developer Advocate
  13. 13. © 2018 Cloudinary Inc., Confidential Information. Do Not Distribute. You’ve been asking … 2
  14. 14. © 2018 Cloudinary Inc., Confidential Information. Do Not Distribute. The Media Full Stack Image & Video Management Platform 3 Upload Storage Administration Manipulation Delivery AUTOMATIC OPTIMIZATION Format Crop DPR QualityResize Encryption Multi-Region Backup Revision History Disaster Recovery API Widget Remote Fetch Web Interface Overlays Effects & Filters Face Detection Responsive OCR API Analytics Access Control Search Web Console DAM Multi-CDN Your Own CDN
  15. 15. © 2018 Cloudinary Inc., Confidential Information. Do Not Distribute. Dynamic asset management is the new DAM Traditional DAMTraditional DAM Cloudinary Dynamic Digital Asset ManagementCloudinary Dynamic Digital Asset Management Dynamically Transform, Manipulate Optimize Experience, Publish Store, Search, Collaborate
  16. 16. © 2018 Cloudinary Inc., Confidential Information. Do Not Distribute. Wide range of SDKs
  17. 17. © 2018 Cloudinary Inc., Confidential Information. Do Not Distribute. DeliveryWorkflowML/ TaggingCMSUpload and Storage eCommerce/PIMs Technology Partners and Integrations
  18. 18. © 2018 Cloudinary Inc., Confidential Information. Do Not Distribute. Extensive Documentation 7 https://cloudinary.com/documentation
  19. 19. © 2018 Cloudinary Inc., Confidential Information. Do Not Distribute. DEMO 8
  20. 20. © 2018 Cloudinary Inc., Confidential Information. Do Not Distribute. Pricing 9 https://cloudinary.com/pricing 1 Credit = 1000 transformations or 1GB of managed storage or 1GB of viewing bandwidth or 500 SD video seconds or 250 HD video processing seconds.
  21. 21. © 2018 Cloudinary Inc., Confidential Information. Do Not Distribute. Cloudinary add-ons 10 Third party products integrated natively into the Cloudinary service Offered as a freemium model
  22. 22. © 2018 Cloudinary Inc., Confidential Information. Do Not Distribute. Questions? Thank you!
  23. 23. QR Payments @ HBC/SAKS February 20th, 2019
  24. 24. • Overview of various types of Payments Infrastructure • QR Payments Infrastructure • QA 2 Agenda
  25. 25. 3 Traditional Payments Infrastructure SMB Solutions: • Transactions are captured and formatted at the store/terminal level, and sent directly to the Bank. Payment Processor Direct to Bank
  26. 26. 4 Traditional Payments Infrastructure Hosted Payment Gateway: • Transactions are captured at the store and sent to a Payment Gateway/Switch hosted by a 3rd Party in the cloud, undergoing formatting changes and encryption prior to reaching the Bank Store Mobile E-Commerce Payment Gateway Cloud Services
  27. 27. 5 Traditional Payments Infrastructure Enterprise Solutions: • Transactions are captured at the store and sent through a series of servers, undergoing formatting changes and encryption prior to reaching the Bank Decryption on Bank Back-end 1. Request Authorization 2. Request Swipe/Insert/Tap 3. Encrypted PAN & Card Details 4. Send Request Out 7.EncryptedPANw/Token 6.EncryptedPAN 9. Return Auth Response 10. Response from Auth POS Terminal POS TLOG SAF File MIDDLEWARE 11.Log Transaction Information DetailwithMask 12.EncryptedPAN forOfflinescenarios 5. Bank Formatted Auth Request (w/ Encrypted PAN) 8. Bank Formatted Auth Response (w/ Encrypted PAN) Gateway
  28. 28. 001 IxCommandType 100 005 IxTimeOut 114 006 IxDebitCredit credit 007 IxTermid 0260002 008 IxStoreNumber 00326 009 IxTerminalNumber 026 010 IxTranType Sale 013 IxAccount 8*****2992 014 IxExpDate 2912 016 IxAmount 5931 017 IxInvoice 026148602 018 IxTranLanguage English 021 IxOptions NoMOD10 PrivateLabel PreferredCustomer *DEVCAP=F0 *CEM_Manual noexpcheck *SIGNATURE 023 IxPinPadID 38 024 IxOperator 5678 025 IxSupervisorSwipe ** 049 IxLanguage English 050 IxDate 01042019 051 IxTime 151854 054 IxTranNumber FIPEMV1 089 IxIsSAFable SAFable 001 IxCommandType 100 005 IxTimeOut 114 006 IxDebitCredit credit 007 IxTermid 0260002 008 IxStoreNumber 00326 009 IxTerminalNumber 026 010 IxTranType Sale 013 IxAccount 8*****2992 014 IxExpDate 2912 016 IxAmount 5931 017 IxInvoice 026148602 018 IxTranLanguage English 021 IxOptions NoMOD10 PrivateLabel PreferredCustomer *DEVCAP=F0 *CEM_Manual noexpcheck *SIGNATURE 023 IxPinPadID 38 024 IxOperator 5678 025 IxSupervisorSwipe ** 049 IxLanguage English 050 IxDate 01042019 051 IxTime 151854 054 IxTranNumber FIPEMV1 089 IxIsSAFable SAFable Store-Side Messaging 6 101 0 114 credit 0260002 00326 026 Sale 8*****2992 2912 5931 026148602 English 38 5678 ** 054439 APPROVED 751903 751903 English 01042019 151854 1481000 CAPEMV1 0 32626602 156 034843800 CAPEMV1 054439 0326026148602 001 IxCommandType 101 004 IxActionCode 0 005 IxTimeOut 114 006 IxDebitCredit credit 007 IxTermid 0260002 008 IxStoreNumber 00326 009 IxTerminalNumber 026 010 IxTranType Sale 013 IxAccount 8*****2992 014 IxExpDate 2912 016 IxAmount 5931 017 IxInvoice 026148602 018 IxTranLanguage English 021 IxOptions NoMOD10 PrivateLabel PreferredCustomer *DEVCAP=F0 *CEM_Manual noexpcheck *SIGNATURE 023 IxPinPadID 38 024 IxOperator 5678 025 IxSupervisorSwipe ** 037 IxAuthCode 054439 038 IxReceiptDisplay APPROVED 046 IxSeqNumber 751903 048 IxPostingDate 751903 049 IxLanguage English 050 IxDate 01042019 051 IxTime 151854 052 IxDepositData 1481000 053 IxIsoResp 054 IxTranNumber CAPEMV1 055 IxTransmissionNo 0 057 IxDebitComLink 32626602 061 IxAdditionalMesg 063 IxDataDirectory 156 064 IxRTSApplication 034843800 080 IxNeedsReversal CAPEMV1 054439 0326026148602 089 IxIsSAFable SAFable Request Message Response Message
  29. 29. System Indicator='L.' Routing Indicator='A02000' Client Number='0101' Merchant Number='700000012002' Terminal Number='001' Transaction Sequence Flag='1=[Single Transaction or Last Auth]' SequenceNumber2 ='000019' Transaction Class='F=[Financial]' Transaction Code='21=[USA Debit Sale]' PIN Capability Code='1=[Device accept PIN]' Entry Data Source='36=[Chip & Contactless Device, chip read TrackII]' Full Magnetic Stripe Information='476173******0135=1912****************' Transaction Amount='000228.00' Filler LLR='00000000' Pin Block='********************************' Token AI - Application Identifier (AID)='A0000000980840' Token CD - Customer Defined Data='0689000161791902131005390135' Token DU - Duplicate Transaction Checking Indicator='02' Token EM - Chip Card Data='******************************************************************************** *************************************************************************************** *************************************************************************************** *' Token P8 - Enhanced Authorization Request='01' Token P1 - POS/VAR Capabilities Data set 1='****************************' Token P2 - POS/VAR Capabilities Data set 2='******************************' Token PS - PAN Sequence Number='01' Token RN - POS Retrieval Reference Number='068901000019' Token TS - Transaction Sequence Counter='000007' System Indicator='L.' Routing Indicator='A02000' Client Number='0101' Merchant Number='700000012002' Terminal Number='001' Transaction Sequence Flag='1=[Single Transaction or Last Auth]' SequenceNumber2 ='000019' Transaction Class='F=[Financial]' Transaction Code='21=[USA Debit Sale]' PIN Capability Code='1=[Device accept PIN]' Entry Data Source='36=[Chip & Contactless Device, chip read TrackII]' Full Magnetic Stripe Information='476173******0135=1912****************' Transaction Amount='000228.00' Filler LLR='00000000' Pin Block='********************************' Token AI - Application Identifier (AID)='A0000000980840' Token CD - Customer Defined Data='0689000161791902131005390135' Token DU - Duplicate Transaction Checking Indicator='02' Token EM - Chip Card Data='******************************************************************************** *************************************************************************************** *************************************************************************************** *' Token P8 - Enhanced Authorization Request='01' Token P1 - POS/VAR Capabilities Data set 1='****************************' Token P2 - POS/VAR Capabilities Data set 2='******************************' Token PS - PAN Sequence Number='01' Token RN - POS Retrieval Reference Number='068901000019' Token TS - Transaction Sequence Counter='000007' Server-Side Messaging 7 Action Code ='A=[Approved]' Address Verification Code=' ' Authorization/Error Code='052975' BatchNumber ='038001' Retrieval Reference Number='00000044' Sequence_Number2 ='000019' Response_Message1 ='APPROVED ' Card Type='DB=[Debit]' Trace Number='00024085' Authorizing Network ID & Authorizing Source='21 ' Token EM - Chip Card Data='***********************************' Token Q8 - Enhanced Authorization Response='00N ' Token RN - POS Retrieval Reference Number='068901000019' Request Message Response Message
  30. 30. { "request":{ "head":{ "version":"2.0.0", "function":"alipay.intl.acquiring.agreement.payCancel", "clientId":"211xxxxxxxxxxxxxxxxxx", "reqTime":"2018-07-04T12:08:56+05:30", "reqMsgId":"1234567asdfasdf1123fda", "reserve":"{}" }, "body":{ "merchantId":"218xxxxxxxxxxxxxxxxxx", "acquirementId":"2015032412007101547201352747" } }, "signature":"signature string" { "request":{ "head":{ "version":"2.0.0", "function":"alipay.intl.acquiring.agreement.payCancel", "clientId":"211xxxxxxxxxxxxxxxxxx", "reqTime":"2018-07-04T12:08:56+05:30", "reqMsgId":"1234567asdfasdf1123fda", "reserve":"{}" }, "body":{ "merchantId":"218xxxxxxxxxxxxxxxxxx", "acquirementId":"2015032412007101547201352747" } }, "signature":"signature string" Alipay API Messaging 8 { "response":{ "head":{ "version":"2.0.0", "function":"alipay.intl.acquiring.agreement.payCancel", "clientId":"211xxxxxxxxxxxxxxxxxx", "respTime":"2018-07-04T12:08:56+05:30", "reqMsgId":"1234567asdfasdf1123fda", "reserve":"{}" }, "body":{ "resultInfo":{ "resultStatus":"S", "resultCodeId":"00000000", "resultCode":"SUCCESS", "resultMsg":"success" }, "acquirementId":"2015xxxxxxxxxxxxxxxxxxxxxxxx", "merchantTransId":"510xxxxxxxxxxxxxxxxx", "cancelTime":"2018-07-04T12:08:56+05:30" } }, "signature":"signature string" } Request Message Response Message
  31. 31. 9 QR Payments Flow QR Code Acceptance: • A frictionless experience that utilizes standard and one-click payments
  32. 32. 10 QR Payments Flow
  33. 33. 11 QR Payments Adoption Rate
  34. 34. 3. Unique Transaction Parameters: - Terminal IMEI - Terminal S/N - Terminal IP - Merchant SSID - Terminal MAC - Merchant Token 12 QR Payments Flow Simple API Approach: • API calls (Sales/Query/Refund) from the pinpad to the Host Load BalancersWifi/4G Connected Payments Terminal AliPay/WeChatPay Gateway 2. Load Balancers ensure traffic is sent using the most efficient route, and provide redundancy 1. Data is sent via HTTPS
  35. 35. Functionality & Usability Provide additional functionality and better usability. Opens the doors to new payment acceptance options Less Overhead Eliminating Payment Gateway Servers, SQL Servers (Reporting), In-House Data-Centers, Banking Connectivity Simplicity Ease of use. Simple payment flows. Centralized Financial Data One Central Reporting Portal Advantages of a QR Payment Method
  36. 36. Q&A
  37. 37. ONICA.COM PREMIER CONSULTNG PARTNER How to leverage AWS Unofficial Guide for Startups
  38. 38. ©2018 ONICAONICA.COM Bio - Alan Williamson • Director - Solutions Architecture at Onica • Using AWS since 2009
  39. 39. ©2018 ONICA The picture can't be displayed. ONICA.COM About Onica
  40. 40. ©2018 ONICA The picture can't be displayed. ONICA.COM Helping Customers Embrace the Cloud
  41. 41. ©2018 ONICAONICA.COM I’m Hiring Solutions Architect Cloud Engineer
  42. 42. ©2018 ONICAONICA.COM Other Onica Roles in the GTA TAM DevOps Engineer Enterprise Sales Rep
  43. 43. ©2018 ONICAONICA.COM Let’s get going Tips to get started on
  44. 44. ©2018 ONICAONICA.COM AWS Offers Simple Building Blocks
  45. 45. ©2018 ONICAONICA.COM Your first AWS Hackathon Reality
  46. 46. ©2018 ONICAONICA.COM Tips • Getting started • Join the AWS community • Design considerations • Get help • AWS Services for your startup
  47. 47. ©2018 ONICAONICA.COM Get Started Learning amazon.qwiklabs.com/catalog www.youtube.com/user/AmazonWebServices Immersion Training AWS Quick Starts
  48. 48. ©2018 ONICAONICA.COM Join the Community AWS Events and Webinars AWS Toronto Summit AWS Re:Invent Conference Toronto AWS User Group AWS Blogs
  49. 49. ©2018 ONICAONICA.COM Design Considerations Well Architected Well Architected - Serverless Lens AWS Architecture Center
  50. 50. ©2018 ONICAONICA.COM Get Help - Don’t go it alone https://aws.amazon.com/canada/AWS-Canada-Partners/ Proof of Concept Funding Programs
  51. 51. ©2018 ONICAONICA.COM AWS Services for Startups • Route53 - Register your internet domain(s) • S3 - Static Website Hosting, sharing marketing materials • CodeCommit - Store your source code • AWS Directory Service / SSO - centralize auth for onboarding • Amazon Workspaces - reduce capex for user devices • AWS Cloud9 - Cloud based IDE
  52. 52. ©2018 ONICAONICA.COM Onica is a large and fast-growing Amazon Web Services (AWS) Premier Consulting Partner helping companies enable, operate, and innovate on the cloud. From migration strategy to operational excellence, cloud native development, and immersive transformation, Onica is a full spectrum AWS integrator. Santa Monica | Irvine | Chicago | Dallas | Houston | New York | Calgary | Montreal | Toronto | Vancouver
  53. 53. Bhavana srinivas Solutions Engineer, Netlify
  54. 54. Spreading the (JAM)stack to build serverless sites
  55. 55. Serverless “static” sites (SSS) Let’s break it down
  56. 56. Back in 2015 Wordpress Blog Personal project Added a few articles For every request
  57. 57. Aug 2018 JAMstack
  58. 58. More pretty diagram Website Code Building and hosting are decoupled
  59. 59. New vs old (workflow) courtesy:snipcart
  60. 60. Where netlify fits in
  61. 61. Why? Why? why? SPEED OF SITE PERFORMANCE BOOST NO (ALMOST NO) DEVOPS ALL POWERFUL FRONT END DEVELOPER DEVELOPER PRODUCTIVITY LOWER COSTS NO ADS !!!!!!!! TECHNOLOGY AGNOSTIC SCALE
  62. 62. Who?
  63. 63. And 1000000s more
  64. 64. Resources 1. Next Month - more in depth 2. https://jamstack.org/ 3. https://templates.netlify.com/ 4. https://www.staticgen.com/ 5. https://serverless.com/blog/how-create-dynamic-website- with-serverless-components/ 6. https://www.netlify.com/ 7. https://www.stackbit.com/

×