SpotHero - Payments DevTalks (#1)

Google for Developers · Beginner ·📰 AI News & Updates ·5y ago

Key Takeaways

SpotHero integrates Google Pay into their Android application using Python, Django, and Kotlin

Full Transcript

[Music] hello be welcome to our very first chat about payments specially baked for developers my name is jose and i'm a developer relations engineer at google pay today with us we have eric brook who is the vice president of engineering at sport hero hello eric and thank you so much for joining us today hey jose thank you for having me today i think a great way to start would be to learn a bit more about spot hero and what you do so could you tell us in your own words what sport hero is about and what's your vision towards urban mobility and sustainable transportation so our goal is to make parking easier in fact just making it easier for customers to get everywhere and that's really what we focus on is making sure that you can park easily well regardless of your trip whether it be like getting a monthly or like going to an event or going on a shopping trip that's our goal make it easier so moving a bit more towards the technical domain what would you say at a high level is the tech stack that you are using at spot hero yeah so our journey started on a python django monolith and bit by bit we've grown beyond that so for an example we need search to be really performant and fast um and so we moved it to golang to really improve its performance and responsiveness like many people we have multiple stacks you have an android stack you have an ios stack and you have a data science stack i'm not going to go cover all of them but android obviously we're using kotlin xml and it's something that we're very proud of as one of our channels for customers there is a pretty diverse set of technologies also pretty modern as well and it's great to see a good amount of open source in there as well it would be interesting to hear more about the model pipeline that you have concretely what purpose are you giving to those statistical or mathematical models especially if there's any of those which is payments related one of them is dynamic pricing so a lot of people when they think of car parking they think of like oh look there's a wall has a list of prices or a list of rates as we call them and that's the kind of it in actual fact it's very very complex most garages have about 100 different rates and to coordinate that um manually is incredible amount of work so one of the things we're doing working with operators those that own car parks and manage them is to make a system more dynamic something we're kind of used to from the airline industry or even hotels so dynamic pricing is very important to us and we released it about a year ago and we're working with key operators to really make this smart when it comes to building a product like spot hero what were some key technical challenges that you faced during that process the industry itself was very cash based so that was probably one of our biggest challenges is helping the industry move to more of a digital payments perspective but broadly some of the most complex areas um the number one would probably integrations we work with about 35 different companies that have different hardware and different software and these parks companies are the ones that build the gates the ticket machines and all the other varieties and of course they all work in very different ways so integrations with the parks equipment is actually probably the number one number two i mentioned a little bit earlier is search is being performant on search giving people the right information um is probably kind of like our second challenge and then the third challenge is um it is technical but it's something that startups often see and that is shared understanding about what work we're doing when you start with a monolith uf don't end up you often end up with multiple layers of different types of work so one of the things that we're focused on very much now is using something like domain driven design to really understand and break up the work that we have to do this makes it easier for product it makes it easier for engineers and then they don't kind of think i have to look at 64 different things to understand what the side effects are so domain driven design is something that we're definitely investing at the moment i think that in a world where mobile phones are carrying so many utilities that we use on a daily basis it feels that payments could be an important piece of that puzzle they're essential um without them we don't really have a business like because we don't really work in cash we work in digital payments so understanding how digital payments work how are they trusted by consumers which ones do consumers prefer to use are really important to have as part of our understanding google and other companies have made this much much easier with things like google pay which are actually fairly easy to hook up with and how are you playing with the fragmentation of the multiple options that you have today like if you go to some services some website websites or applications i think for a good reason today there there's a a sizeable amount of options uh which is hard to handle sometimes for the user because you may have like six or seven of those how are you dealing with that and maybe thinking about choosing the two three top best options for for payments for any given customer yeah you're right um it's very important to choose the right ones and make sure the customer has the right choices because we want that to be simple for the customer we also want to be following the trends in terms of which ones are they already invested in as customers um so we pay attention to how can i'm sorry customers move through the market what do they trust and what do they prefer to pay with um the other thought process is how easy are the sdks to work with from an engineering perspective that's really important because we don't want to reinvent the wheel we want to be able to hook this in make it really simple be able to trust it and audit it when necessary and precisely in that regard what was your experience integrating google pay in your android application really simple actually um so i thought it was one liner code but i checked and it's actually five lines of code um and basically yeah and we're pulling together like the stripe params um because we use stripe as our payment processor for spot hero and then we're passing that information directly to the google sdk um actually getting up and running was really simple the thing that we probably took a little bit more time was testing it and believing it it was this simple so testing and staging um was something that we had took a little time to figure out um but it was well worth the investment uh you said that uh making payments work in pre-production environments was uh less straightforward what advice would you have for other developers maybe facing similar challenges i think that one of the beautiful things about technology sector at the moment is that everybody shares what they learn so there's a lot of blogs out there a couple things to really think about though is making sure you have good testing around your payment system if you can make it automated that's great saves engineers time it saves tests engineers time as well the other things you need to think about is when you do test it in production making sure you have a credit card that you can use for that purpose and always having a test account that you can do for that purpose um payments is important and also keeping our customers our drivers um safe is really important to us so test it understand it make sure that you're not setting up your customers for failure i like the note on automated testing i think it's it's not it's not said enough that it actually saves time no matter how it looks like at the beginning i've heard that you integrated google pay a while back so i'm sure that uh you were able to collect a good amount of information uh metrics um insights about how it really did and how it developed do you have some more quantitative information on how that played out and i think if we could talk about both new users and existing users i think that would be that would be a great perspective to bring yeah so we introduced it um in october 2017. and um as i said it was a fairly simple process and we actually worked with google to figure out a promotion to get people to see um how that would work so we motivated them for promotion where we are now is about 33 of all our android users use google pay today um and we see that trend going up as more and more people trust their kind of like their wallets and their finances to mobile phones that's great to hear actually now looking into the future how would you like to see the digital payments ecosystem adapt and evolved to this first change in surroundings and environment that we face today yeah i think i'm from a business perspective one of the things we really appreciate is being able to audit payments in an easy fashion one of the pieces of work that comes up later not when you're starting out in a small startup but when you get to kind of like hundreds of thousands and millions of kind of like transactions you've also got to think about pci compliance so how use and protecting credit card information even if you're not necessarily using it who are you passing it off to who's doing that work so being able to audit it is something that's really really helpful for businesses as they grow um it also saves us doing the work another good thing that's really helpful in that in terms of going forward we all have to work on building trust and making sure that all of the payment systems are fully transparent to the customer and they understand what any extra fees are about so the more transparent we are the more people will trust us and we have to do that not just as payment processors as a company but also like companies like spot hero doing the right by the customers now we believe that there is great knowledge behind each project each team working on on you know real applications real services real products so we'd like to ask you about a well-kept secret or a tip or a recipe that you use and practice at spot hero that you think every developer should know about yeah i think a lot of tech companies are very similar because we learn and share from each other whether you hear transparency autonomy um making sure we have blameless retros making sure you have the opportunity to work with cutting-edge technology a lot of us do that i think from a spot here perspective one of the things we deeply care about is we don't view you as a resource or cog in a wheel or a hamster and a ball we view you as a human and so when we think about our decision making about where people move what is their career growth we're not just thinking about your ability to write code or even your ability to collaborate as an engineer we're thinking about you what do you like when you go home how are you surviving the environment whatever that be so thinking about the wider perspective of this human we really care about and i think that's something that as a tech industry we should pay a lot of attention to yeah i was about to comment on that but i think you said it best so i think the uh the the one thing that i could say is thank you so much for sharing that bit of time and your knowledge with us and with our viewers and i really wish you all the best for any existing and new adventures ahead so thank you thank you eric for being with us yeah it's great to be here today jose and that was uh eric brook from spot hero thank you to you all for watching and i'll see you next time you

Original Description

Welcome to the very first chat about Payments for developers. Join Jose Ugia, Developer Relations Engineer on the Google Pay team as he chats with Chief Technology Officer of SpotHero, Eric Brooke. Eric discusses the benefits and challenges of integrating digital payments in SpotHero’s Android application, their experience with Google Pay, and other helpful tips for developers like you. 0:00 - Introduction 0:26 - SpotHero, our guest today 1:01 - SpotHero’s tech stack 1:54 - Dynamic pricing strategies 2:51 - Technical challenges of building a product like SpotHero 5:03 - Making payments as simple as possible for your customers 6:10 - What was your experience integrating Google Pay on Android? 6:53 - Testing payments in pre-production environments 7:19 - Using test cards with Google Pay → https://goo.gle/android-testing 7:56 - The impact of Google Pay for the SpotHero Android application 8:57 - How would you like to see digital payments evolve in the future? 10:07 - #ourGuestAdvice Follow on Twitter → https://twitter.com/googlepaydevs Google Pay for Android → https://g.co/pay/test-cards Access Google Pay Business Console to get your Merchant ID → https://goo.gle/business-console Subscribe to Google Developers → https://goo.gle/developers #GooglePay #Developers #GooglePayAPI Products Mentioned: Google Pay
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from Google for Developers · Google for Developers · 0 of 60

← Previous Next →
1 Developer Journey - Sunnyvale DSC Summit ‘19
Developer Journey - Sunnyvale DSC Summit ‘19
Google for Developers
2 How Google is working with students - Sunnyvale DSC Summit ‘19
How Google is working with students - Sunnyvale DSC Summit ‘19
Google for Developers
3 Starting your career in the Cloud - Sunnyvale DSC Summit ‘19
Starting your career in the Cloud - Sunnyvale DSC Summit ‘19
Google for Developers
4 The Solution Challenge  - Sunnyvale DSC Summit ‘19
The Solution Challenge - Sunnyvale DSC Summit ‘19
Google for Developers
5 Firebase - Sunnyvale DSC Summit ‘19
Firebase - Sunnyvale DSC Summit ‘19
Google for Developers
6 Cloud Hero - Sunnyvale DSC Summit ‘19
Cloud Hero - Sunnyvale DSC Summit ‘19
Google for Developers
7 Panel discussion  - Sunnyvale DSC Summit ‘19
Panel discussion - Sunnyvale DSC Summit ‘19
Google for Developers
8 The art of negotiation - Sunnyvale DSC Summit ‘19
The art of negotiation - Sunnyvale DSC Summit ‘19
Google for Developers
9 Courage to care, solve and share - Sunnyvale DSC Summit ‘19
Courage to care, solve and share - Sunnyvale DSC Summit ‘19
Google for Developers
10 Version 9 of Angular, Glass Enterprise Edition 2, path to DX deprecation, & more!
Version 9 of Angular, Glass Enterprise Edition 2, path to DX deprecation, & more!
Google for Developers
11 [DEPRECATING] Introducing a new series (Assistant for Developers Pro Tips)
[DEPRECATING] Introducing a new series (Assistant for Developers Pro Tips)
Google for Developers
12 Detecting memory bugs with HWASan, Bazel 2.1, Next ‘20 session guide, & more!
Detecting memory bugs with HWASan, Bazel 2.1, Next ‘20 session guide, & more!
Google for Developers
13 Why Podcast.app chose a .app domain name
Why Podcast.app chose a .app domain name
Google for Developers
14 Machine Learning Bootcamp Jakarta 2019
Machine Learning Bootcamp Jakarta 2019
Google for Developers
15 Android Studio 3.6, Android 11 Developer Preview, Kubeflow 1.0, & more!
Android Studio 3.6, Android 11 Developer Preview, Kubeflow 1.0, & more!
Google for Developers
16 [DEPRECATING]  Importance of community (Assistant on Air)
[DEPRECATING] Importance of community (Assistant on Air)
Google for Developers
17 Why the Flutter team switched from .io to a .dev domain name
Why the Flutter team switched from .io to a .dev domain name
Google for Developers
18 3 website-building tips from .dev creators
3 website-building tips from .dev creators
Google for Developers
19 Why NimbleDroid chose a .app domain name
Why NimbleDroid chose a .app domain name
Google for Developers
20 Android Platform Codelab, Bazel 2.2, Maps Android Utility Library v1.0, & more!
Android Platform Codelab, Bazel 2.2, Maps Android Utility Library v1.0, & more!
Google for Developers
21 Google for Games Developer Summit: A free, digital experience for game developers
Google for Games Developer Summit: A free, digital experience for game developers
Google for Developers
22 Inspecting Home Graph (Assistant for Developers Pro Tips)
Inspecting Home Graph (Assistant for Developers Pro Tips)
Google for Developers
23 Google for Games Developer Summit Keynote
Google for Games Developer Summit Keynote
Google for Developers
24 Stadia Games & Entertainment presents: Keys to a great game pitch (Google Games Dev Summit)
Stadia Games & Entertainment presents: Keys to a great game pitch (Google Games Dev Summit)
Google for Developers
25 Empowering game developers with Stadia R&D (Google Games Dev Summit)
Empowering game developers with Stadia R&D (Google Games Dev Summit)
Google for Developers
26 Supercharging discoverability with Stadia (Google Games Dev Summit)
Supercharging discoverability with Stadia (Google Games Dev Summit)
Google for Developers
27 Stadia Games & Entertainment presents: Creating for content creators (Google Games Dev Summit)
Stadia Games & Entertainment presents: Creating for content creators (Google Games Dev Summit)
Google for Developers
28 Bringing Destiny to Stadia: A postmortem (Google Games Dev Summit)
Bringing Destiny to Stadia: A postmortem (Google Games Dev Summit)
Google for Developers
29 Live Captioning in Google Slides
Live Captioning in Google Slides
Google for Developers
30 [DEPRECATING]  User engagement for the Google Assistant
[DEPRECATING] User engagement for the Google Assistant
Google for Developers
31 TensorFlow Dev Summit ‘20, Google for Games Dev Summit, Cloud AI Platform Pipelines, & much more!
TensorFlow Dev Summit ‘20, Google for Games Dev Summit, Cloud AI Platform Pipelines, & much more!
Google for Developers
32 Top 5 from the TensorFlow Dev Summit 2020
Top 5 from the TensorFlow Dev Summit 2020
Google for Developers
33 Developer Student Clubs 2019 Turkey Leads Summit
Developer Student Clubs 2019 Turkey Leads Summit
Google for Developers
34 Building simpler payment experiences | Google Pay Plugin for Magento 2
Building simpler payment experiences | Google Pay Plugin for Magento 2
Google for Developers
35 Become A Developer Student Club Lead
Become A Developer Student Club Lead
Google for Developers
36 Firebase Kotlin Extensions, ARM apps on the Android Emulator, Angular v9.1, & more!
Firebase Kotlin Extensions, ARM apps on the Android Emulator, Angular v9.1, & more!
Google for Developers
37 Test suite for Smart Home (Assistant for Developers Pro Tips)
Test suite for Smart Home (Assistant for Developers Pro Tips)
Google for Developers
38 Google Play updates, Bazel 3.0, Business Console for Google Pay, & more!
Google Play updates, Bazel 3.0, Business Console for Google Pay, & more!
Google for Developers
39 How to use error logs (Assistant for Developers Pro Tips)
How to use error logs (Assistant for Developers Pro Tips)
Google for Developers
40 Contact Center AI, Android Studio 4.1 Canary 5, TensorFlow QAT API, & more!
Contact Center AI, Android Studio 4.1 Canary 5, TensorFlow QAT API, & more!
Google for Developers
41 WebView DevTools, Kotlin meets gRPC, Flutter CodePen support, & more! (Episode 200)
WebView DevTools, Kotlin meets gRPC, Flutter CodePen support, & more! (Episode 200)
Google for Developers
42 Offline handling for Smart Home (Assistant for Developers Pro Tips)
Offline handling for Smart Home (Assistant for Developers Pro Tips)
Google for Developers
43 Android 11 Dev Preview 3, Google Fonts for Flutter, Shielded VM, & more!
Android 11 Dev Preview 3, Google Fonts for Flutter, Shielded VM, & more!
Google for Developers
44 Machine Learning Foundations: Ep #1 - What is ML?
Machine Learning Foundations: Ep #1 - What is ML?
Google for Developers
45 Flutter web support updates, BigQuery materialized views, Cloud Spanner emulator, & more!
Flutter web support updates, BigQuery materialized views, Cloud Spanner emulator, & more!
Google for Developers
46 Computer vision by building a neural network with TensorFlow | Machine Learning Foundations
Computer vision by building a neural network with TensorFlow | Machine Learning Foundations
Google for Developers
47 Machine Learning Foundations: Ep #3 - Convolutions and pooling
Machine Learning Foundations: Ep #3 - Convolutions and pooling
Google for Developers
48 Android 11 Beta plans, Flutter 1.17, Dart 2.8, & much more!
Android 11 Beta plans, Flutter 1.17, Dart 2.8, & much more!
Google for Developers
49 Machine Learning Foundations: Ep #4 - Coding with Convolutional Neural Networks
Machine Learning Foundations: Ep #4 - Coding with Convolutional Neural Networks
Google for Developers
50 Google Developers ML Summit
Google Developers ML Summit
Google for Developers
51 Real-world image classification using convolutional neural networks | Machine Learning Foundations
Real-world image classification using convolutional neural networks | Machine Learning Foundations
Google for Developers
52 Adobe XD support for Flutter, Architecture Framework, temporary closures with Places API, & more!
Adobe XD support for Flutter, Architecture Framework, temporary closures with Places API, & more!
Google for Developers
53 Machine Learning Foundations: Ep #6 - Convolutional cats and dogs
Machine Learning Foundations: Ep #6 - Convolutional cats and dogs
Google for Developers
54 Machine Learning Foundations: Ep #7 - Image augmentation and overfitting
Machine Learning Foundations: Ep #7 - Image augmentation and overfitting
Google for Developers
55 Announcing Firebase Live, Flutter Day, Java 11 on Google Cloud Functions, & more!
Announcing Firebase Live, Flutter Day, Java 11 on Google Cloud Functions, & more!
Google for Developers
56 Machine Learning Foundations: Ep #8 - Tokenization for Natural Language Processing
Machine Learning Foundations: Ep #8 - Tokenization for Natural Language Processing
Google for Developers
57 Android 11 Beta, Google Play Asset Delivery, Firebase Crashlytics SDK, & much more!
Android 11 Beta, Google Play Asset Delivery, Firebase Crashlytics SDK, & much more!
Google for Developers
58 Natural Language Processing: Using sequencing APIs in TensorFlow | Machine Learning Foundations
Natural Language Processing: Using sequencing APIs in TensorFlow | Machine Learning Foundations
Google for Developers
59 Build a sarcasm classifier using NLP and TensorFlow | Machine Learning Foundations
Build a sarcasm classifier using NLP and TensorFlow | Machine Learning Foundations
Google for Developers
60 AR Realism with the ARCore Depth API
AR Realism with the ARCore Depth API
Google for Developers

Related Reads

Chapters (12)

Introduction
0:26 SpotHero, our guest today
1:01 SpotHero’s tech stack
1:54 Dynamic pricing strategies
2:51 Technical challenges of building a product like SpotHero
5:03 Making payments as simple as possible for your customers
6:10 What was your experience integrating Google Pay on Android?
6:53 Testing payments in pre-production environments
7:19 Using test cards with Google Pay → https://goo.gle/android-testing
7:56 The impact of Google Pay for the SpotHero Android application
8:57 How would you like to see digital payments evolve in the future?
10:07 #ourGuestAdvice
Up next
THE NEW FEDORA HYPRLAND SETUP OF 2026 (Must TRY)
Ksk Royal
Watch →