SlideShare uma empresa Scribd logo
1 de 44
Scheduled releases
Why GetYourGuide keeps its apps on a tight release schedule
Me
iOS Engineer @ GetYourGuide GmbH
FEUP alumnus
@banaslee
GetYourGuide
• Find a tour
• Check availability
• Check reviews
• Book
• Redeem with your phone
Getting to know Porto
• > 25k activities
• > 130 countries
• 2.5M customers
• 14 languages
• Engineering offices in Berlin & Zurich
• Small product team for apps
Agenda
• Context
• Before
• Now
• Results
Native apps
Fragile environment
• Running in a sandbox
• Constrained memory
• Limited processing power
• Limited connectivity
• Crashes
Local storage
• Offline capabilities
• Often relational databases
• Data migration
Provisioning
• Apps running on device must be signed
• Registered developers
• Complicated provisioning setup
Volatile environment
• New technologies every year
• Users are constantly updating their devices
• Not the gold rush it used to be
• Keeps you on your toes
App Stores
App Stores
• Main (and mostly only) distribution channel
• Apple says 65% of downloads come from search
• Opaque ranking system
• Hard to optimise due to limited amount of data
• User acquisition is hard and expensive
Source: https://developer.apple.com/app-store/search-ads/
App approval times (iOS)
• Most apps are now reviewed in 24
hours
Source: appreviewtimes.com
0
20
40
60
80
1 2 3 4 5 6 7 8
0 days
approval time on Android
Rolling out updates
80%
users using latest version 72 hours after update on iOS / 96 hours on Android
97%
number of sessions from the 5 most recent versions
33 versions
number of different versions live during the past two weeks
Experimentation
Missions
• We have engineers, PMs and designers split in mission teams
• Missions around metrics
• Conversion
• Repeat
• Acquisition
• ...
Hypotheses & Experiments
• Build the right product
• Maximise learnings
• Smaller feedback cycles
• Improve customer experience
Apps haven’t yet fully
embraced experimentation
Before
Feature driven
• Branches to isolate unfinished features
• Builds for different quality stages
• Automated builds
• Automated testing
• Manual release
Feature driven
Attribution: https://www.atlassian.com/continuous-delivery/business-case-for-continuous-delivery
Spirits were down
• Release estimates slipped
• Scope creeping
• Failing goals
Now
Release every two weeks
• An experiment on process
• Focus on focus
• Keep a continuous stream of updates
• Fixes are not hostage of moving release
dates
• Process not new but not common on small
teams
Keep merging
• Feature toggles
• Unfinished features are merged to
master
Simpler processes
• Automated testing
• Test builds
• Localised assets
Release notes
• Copy write
• Translate
Continuous Delivery
• Every change can be pushed to the store
• Built over our CI
• Test builds
• UI tests
• Deployment pipeline
• HockeyApp
• TestFlight
• Release
Fastlane
• Toolchain for Continuous Delivery
• iOS
• A bit on Android
• Streamlined process
• Moved separate scripts under Fastlane
lanes
• Adopted Match for simpler code signing
Results
Moving faster
• 7 releases in Q2 vs 3 in Q1
• 5 experiments launched in Q2 vs 2 previously (Q1 & Q4’15)
• Smaller yet bolder experiments
• App Store features diluted some metrics
Quality & User satisfaction
• “Move fast and break things”
• Positive trend in reviews
0%
0%
1%
1%
2%
2%
November
December
January
February
March
April
May
June
Crashes/Sessions
Quality & User satisfaction
• “Move fast and break things”
• Positive trend in reviews
1 stars
2 stars
3 stars
4 stars
5 stars
6 stars
November
December
January
February
March
April
May
June
iOS Android
Quality & User satisfaction
• Secret settings screen
• Remote overrides
A solid process
• A more stable set of scripts for CI
• Scripts coverage extended
• Pushing to store
• Importing localised assets
A solid process
• Requires
• Continuous maintenance work
• Expertise in CI and testing tools
• Provides ownership of the process
Long path ahead
Attribution: http://tgos.co.uk/skills/climb-every-mountain-how-to-start-scrambling
Links
• https://appreviewtimes.com
• https://developer.apple.com/app-store/search-ads/
• https://fastlane.tools
• https://www.facebook.com/notes/facebook-engineering/timed-releases-for-mobile-
apps/10151078442213920/
• https://www.youtube.com/watch?list=PLdr22uU_wISpW6XI1J0S7Lp-X8Km-
HaQW&v=DWw1ankfqO0

Mais conteúdo relacionado

Mais procurados

DevOps from a developer perspective
DevOps from a developer perspective DevOps from a developer perspective
DevOps from a developer perspective
WSO2
 
Migration to Flows – Getting it Right!
Migration to Flows – Getting it Right!Migration to Flows – Getting it Right!
Migration to Flows – Getting it Right!
panayaofficial
 

Mais procurados (20)

How and why you need to build a big data lab
How and why you need to build a big data labHow and why you need to build a big data lab
How and why you need to build a big data lab
 
Extreme Makeover OnBase Edition
Extreme Makeover OnBase EditionExtreme Makeover OnBase Edition
Extreme Makeover OnBase Edition
 
QualiSystems-Brief TestShell
QualiSystems-Brief TestShellQualiSystems-Brief TestShell
QualiSystems-Brief TestShell
 
Quali webinar de-mystifyind dev_ops-a practitioner’s perspective
Quali webinar de-mystifyind dev_ops-a practitioner’s perspectiveQuali webinar de-mystifyind dev_ops-a practitioner’s perspective
Quali webinar de-mystifyind dev_ops-a practitioner’s perspective
 
IaC? VSTS to the rescue! Abbreviations explained
IaC? VSTS to the rescue! Abbreviations explainedIaC? VSTS to the rescue! Abbreviations explained
IaC? VSTS to the rescue! Abbreviations explained
 
Oracle Upgrade Project Big Rocks - Done Right!
Oracle Upgrade Project Big Rocks - Done Right!Oracle Upgrade Project Big Rocks - Done Right!
Oracle Upgrade Project Big Rocks - Done Right!
 
Infragistics uses DevOps to increase customer engagment
Infragistics uses DevOps to increase customer engagmentInfragistics uses DevOps to increase customer engagment
Infragistics uses DevOps to increase customer engagment
 
Boosting Dev and Ops Productivity
Boosting Dev and Ops ProductivityBoosting Dev and Ops Productivity
Boosting Dev and Ops Productivity
 
DevOps is for Everyone - DevOps East
DevOps is for Everyone - DevOps EastDevOps is for Everyone - DevOps East
DevOps is for Everyone - DevOps East
 
Learn Key Insights from The State of Web Application Testing Research Report
Learn Key Insights from The State of Web Application Testing Research ReportLearn Key Insights from The State of Web Application Testing Research Report
Learn Key Insights from The State of Web Application Testing Research Report
 
DevOps from a developer perspective
DevOps from a developer perspective DevOps from a developer perspective
DevOps from a developer perspective
 
Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...
Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...
Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...
 
deliver:agile - Enable your Agile Team with Continuous Delivery Pipelines
deliver:agile - Enable your Agile Team with Continuous Delivery Pipelinesdeliver:agile - Enable your Agile Team with Continuous Delivery Pipelines
deliver:agile - Enable your Agile Team with Continuous Delivery Pipelines
 
Qa test managed_code_varhol
Qa test managed_code_varholQa test managed_code_varhol
Qa test managed_code_varhol
 
Continuous Delivery & DevOps in the Enterprise
Continuous Delivery & DevOps in the EnterpriseContinuous Delivery & DevOps in the Enterprise
Continuous Delivery & DevOps in the Enterprise
 
Migration to Flows – Getting it Right!
Migration to Flows – Getting it Right!Migration to Flows – Getting it Right!
Migration to Flows – Getting it Right!
 
Creating a Comprehensive Social Media App Using Ionic and Phone Gap
Creating a Comprehensive Social Media App Using Ionic and Phone GapCreating a Comprehensive Social Media App Using Ionic and Phone Gap
Creating a Comprehensive Social Media App Using Ionic and Phone Gap
 
Agile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAgile Secure Cloud Application Development Management
Agile Secure Cloud Application Development Management
 
Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)
Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)
Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)
 
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
 

Destaque

Apresentaçao swing crash
Apresentaçao swing crashApresentaçao swing crash
Apresentaçao swing crash
Tiago Malheiros
 
O meu querido mês de agosto
O meu querido mês de agostoO meu querido mês de agosto
O meu querido mês de agosto
Claudio Costa
 
[Brazil] guia internet_marketing (1)
[Brazil] guia internet_marketing (1)[Brazil] guia internet_marketing (1)
[Brazil] guia internet_marketing (1)
Ricardo Belchior
 
ShopAlikePT_March2016_PT_Presentation
ShopAlikePT_March2016_PT_PresentationShopAlikePT_March2016_PT_Presentation
ShopAlikePT_March2016_PT_Presentation
Pedro de Almeida
 

Destaque (20)

Evolução modelos de negócio na internet.
Evolução modelos de negócio na internet.Evolução modelos de negócio na internet.
Evolução modelos de negócio na internet.
 
Apresentaçao swing crash
Apresentaçao swing crashApresentaçao swing crash
Apresentaçao swing crash
 
Guerreiros Sensíveis 1
Guerreiros Sensíveis 1Guerreiros Sensíveis 1
Guerreiros Sensíveis 1
 
Set n'match
Set n'matchSet n'match
Set n'match
 
O meu querido mês de agosto
O meu querido mês de agostoO meu querido mês de agosto
O meu querido mês de agosto
 
EFConsulting Empresas Familiares 30 anos Cenfim
EFConsulting Empresas Familiares 30 anos Cenfim EFConsulting Empresas Familiares 30 anos Cenfim
EFConsulting Empresas Familiares 30 anos Cenfim
 
[Brazil] guia internet_marketing (1)
[Brazil] guia internet_marketing (1)[Brazil] guia internet_marketing (1)
[Brazil] guia internet_marketing (1)
 
Talk TEDx Vila Real - "Encontrar a Psicologia Positiva nas histórias nos dias"
Talk TEDx Vila Real - "Encontrar a Psicologia Positiva nas histórias nos dias"Talk TEDx Vila Real - "Encontrar a Psicologia Positiva nas histórias nos dias"
Talk TEDx Vila Real - "Encontrar a Psicologia Positiva nas histórias nos dias"
 
Launching tech products
Launching tech productsLaunching tech products
Launching tech products
 
Pensar Digital
Pensar DigitalPensar Digital
Pensar Digital
 
Niiiws short
Niiiws short Niiiws short
Niiiws short
 
Apresentação Grão Torrado
Apresentação Grão TorradoApresentação Grão Torrado
Apresentação Grão Torrado
 
Customer Development - Entrepreneurs Break
Customer Development - Entrepreneurs BreakCustomer Development - Entrepreneurs Break
Customer Development - Entrepreneurs Break
 
Como produzir um artigo de referencia para a wikipedia (manuel de sousa)
Como produzir um artigo de referencia para a wikipedia (manuel de sousa)Como produzir um artigo de referencia para a wikipedia (manuel de sousa)
Como produzir um artigo de referencia para a wikipedia (manuel de sousa)
 
Funding ideas in a globally connected world – a social approach
Funding ideas in a globally connected world – a social approachFunding ideas in a globally connected world – a social approach
Funding ideas in a globally connected world – a social approach
 
EC-WEB: Validator and Preview for the JobPosting Data Model of Schema.org
EC-WEB: Validator and Preview for the JobPosting Data Model of Schema.orgEC-WEB: Validator and Preview for the JobPosting Data Model of Schema.org
EC-WEB: Validator and Preview for the JobPosting Data Model of Schema.org
 
ShopAlikePT_March2016_PT_Presentation
ShopAlikePT_March2016_PT_PresentationShopAlikePT_March2016_PT_Presentation
ShopAlikePT_March2016_PT_Presentation
 
Meet-Beat Your Way To Sales Growth and Productivity Improvement
Meet-Beat Your Way To  Sales Growth and Productivity ImprovementMeet-Beat Your Way To  Sales Growth and Productivity Improvement
Meet-Beat Your Way To Sales Growth and Productivity Improvement
 
Delivering presentations - dicas de apresentação (not!)
Delivering presentations - dicas de apresentação (not!)Delivering presentations - dicas de apresentação (not!)
Delivering presentations - dicas de apresentação (not!)
 
Regulamento poupecomjamie
Regulamento poupecomjamieRegulamento poupecomjamie
Regulamento poupecomjamie
 

Semelhante a Scheduled releases @ Commit Porto 2016

Semelhante a Scheduled releases @ Commit Porto 2016 (20)

Dev ops for mobile apps at microsoft teams
Dev ops for mobile apps at microsoft teamsDev ops for mobile apps at microsoft teams
Dev ops for mobile apps at microsoft teams
 
Change management in hybrid landscapes
Change management in hybrid landscapesChange management in hybrid landscapes
Change management in hybrid landscapes
 
Continuous Delivery: releasing Better and Faster at Dashlane
Continuous Delivery: releasing Better and Faster at DashlaneContinuous Delivery: releasing Better and Faster at Dashlane
Continuous Delivery: releasing Better and Faster at Dashlane
 
Road to Continuous Delivery - Wix.com
Road to Continuous Delivery - Wix.comRoad to Continuous Delivery - Wix.com
Road to Continuous Delivery - Wix.com
 
MyHeritage - QA Automations in a Continuous Deployment environment
MyHeritage -  QA Automations in a Continuous Deployment environmentMyHeritage -  QA Automations in a Continuous Deployment environment
MyHeritage - QA Automations in a Continuous Deployment environment
 
Change Management in Hybrid landscapes 2017
Change Management in Hybrid landscapes 2017Change Management in Hybrid landscapes 2017
Change Management in Hybrid landscapes 2017
 
Continuous Delivery for Open Source Java projects
Continuous Delivery for Open Source Java projectsContinuous Delivery for Open Source Java projects
Continuous Delivery for Open Source Java projects
 
CD
CDCD
CD
 
DevOps Days Ohio
DevOps Days OhioDevOps Days Ohio
DevOps Days Ohio
 
Gartner Infrastructure and Operations Summit Berlin 2015 - DevOps Journey
Gartner Infrastructure and Operations Summit Berlin 2015 - DevOps JourneyGartner Infrastructure and Operations Summit Berlin 2015 - DevOps Journey
Gartner Infrastructure and Operations Summit Berlin 2015 - DevOps Journey
 
MyHeritage - End 2 End testing Infra
MyHeritage - End 2 End testing InfraMyHeritage - End 2 End testing Infra
MyHeritage - End 2 End testing Infra
 
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CDDevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
 
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
 
Day 1.pptx
Day 1.pptxDay 1.pptx
Day 1.pptx
 
Lean Startup with WebObjects
Lean Startup with WebObjectsLean Startup with WebObjects
Lean Startup with WebObjects
 
2016 09-dev opsjourney-devopsdaysoslo
2016 09-dev opsjourney-devopsdaysoslo2016 09-dev opsjourney-devopsdaysoslo
2016 09-dev opsjourney-devopsdaysoslo
 
CI/CD for mobile at HERE
CI/CD for mobile at HERECI/CD for mobile at HERE
CI/CD for mobile at HERE
 
Neotys PAC - Ian Molyneaux
Neotys PAC - Ian MolyneauxNeotys PAC - Ian Molyneaux
Neotys PAC - Ian Molyneaux
 
Lean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill AyersLean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill Ayers
 
Automated Testing – Web, Mobile, Desktop - Challenges and Successes
Automated Testing – Web, Mobile, Desktop - Challenges and SuccessesAutomated Testing – Web, Mobile, Desktop - Challenges and Successes
Automated Testing – Web, Mobile, Desktop - Challenges and Successes
 

Último

The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 

Último (20)

The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 

Scheduled releases @ Commit Porto 2016

Notas do Editor

  1. I’m a software engineer who has been building iOS apps since 2010. I also graduated at this school and I’m very pleased to be here today speaking to you all.
  2. I don’t know how many of you have heard of GetYourGuide before Commit. GetYourGuide is a marketplace for tours and activities. We sell tours but we are not a tour operator!
  3. Simpler is maybe to put you all in an hypothetical situation: consider you are in Porto for a conference and you have your Sunday free to get to know the city (pause). In this case you can check getyourguide.com and find the typical bus tour around the city, a wine tasting experience or a relaxing tour in Douro river from where you can enjoy the gorgeous views of both Porto and Gaia river shores. For any activity you can read user reviews and book on the go, from your phone, and pay with Paypal or credit card. Our app also helps you find your way to your booked activities and act as your ticket!
  4. GetYourGuide is a startup in the travel industry that has built an online marketplace for tours and activities that can be booked in advance. Largest online catalog for tours [platform to sell activities / more than 26k activities in N countries / 14 languages / user markets: Europe / UK / Australia / USA / Asia / Latin America]
  5. We have engineering offices in Berlin and Zurich. Our small apps team, has 4 front-end engineers, 2 per platform, and a back-end engineer, alongside a product manager and a designer.
  6. This talk is going to share our experience as a small team working on a tight release schedule for native apps in the travel industry. I’m not here today to show a recipe for success.
  7. Apps crash easier than webpages
  8. Not your regular front-end developer
  9. Last 14 days
  10. We at GetYourGuide aim to build our products around experiments and hypotheses.
  11. Hard to acquire users to get data
  12. Release process was overlooked because it didn’t happen so often
  13. Big teams like Facebook are doing this for some years now (many engineers working on the same app) If you have a big team and want to understand how this impacts you, there is a nice blog post from Facebook from 2012 and a very nice talk from a Spotify iOS Engineer from UIKonf 2015. They go into more detail on the benefits this brings on bigger teams.
  14. 3 months ago we decided we need to change something. As an experiment, we decided to impose a hard deadline on all of us. Every two weeks we’d be releasing an update for the app with whatever is ready to be released. <why defining a constraint on the release time?> From there it was easy to identify some things that would help us achieve that: we traded our quality checkpoints for feature toggles; some of our processes needed to happen more often, like localisation, automated testing and test builds; copywriting and translating release notes was now a bigger burden and we didn’t need it.
  15. 3 months ago we decided we need to change something. As an experiment, we decided to impose a hard deadline on all of us. Every two weeks we’d be releasing an update for the app with whatever is ready to be released. <why defining a constraint on the release time?> From there it was easy to identify some things that would help us achieve that: we traded our quality checkpoints for feature toggles; some of our processes needed to happen more often, like localisation, automated testing and test builds; copywriting and translating release notes was now a bigger burden and we didn’t need it.
  16. 3 months ago we decided we need to change something. As an experiment, we decided to impose a hard deadline on all of us. Every two weeks we’d be releasing an update for the app with whatever is ready to be released. <why defining a constraint on the release time?> From there it was easy to identify some things that would help us achieve that: we traded our quality checkpoints for feature toggles; some of our processes needed to happen more often, like localisation, automated testing and test builds; copywriting and translating release notes was now a bigger burden and we didn’t need it.
  17. We found we were actually moving towards a continuous delivery setup. I won’t cover much about CD as João has already covered much of the topics that provide you with the right context. I’ll just highlight what I believe is relevant for our use case. We had some CI in place with commits and pull requests to master triggering some automated builds; We had a deployment pipeline with HockeyApp and TestFlight, this one for iOS; We had user acceptance tests both automated and manual; We needed to do it faster and more reliably. We moved to Fastlane to streamline the release process. We started using Match to simplify signing.
  18. Started as a list of scraping tools that interacted with Apple Developer dashboard Now has a very comprehensive list of tools for shipping stuff
  19. Again, we are a small team. We believe the benefits would be an order of magnitude greater if we had double the size.