SlideShare a Scribd company logo
1 of 41
Download to read offline
Making friends with 
backend developers 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 1
Making friends with 
backend developers 
Well, at least don't fight 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 2
Own experience 
• Outsource 
• Own products 
• Working with remote backend team 
• Creating backends ourselves 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 3
Situation 
Remote team: 
Mobile team <~> Backend team 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 4
Situation 
Remote team: 
Mobile team <~~~~~~~~~~ ~~~~~~~~ ~~~~~~~~ 
~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~ ~~~~~~~~ 
~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ 
~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ 
~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ 
~~~~~~~~ ~~~~~~~~ ~~~~~~~~ > Backend team 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 5
Situation 
Remote team: 
Mobile team <~~~~~~~~~~ ~~~~~~~~ ~~~~~~~~ 
~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~ ~~~~~~~~ 
~~~~~~~~ ~~~~~~~~ ~~ ocean ~ ~~~~~~~~ ~~~~~~~~ 
~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ 
~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ 
~~~~~~~~ ~~~~~~~~ ~~~~~~~~ > Backend team 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 6
What we want from 
backend? 
• Use less requests 
• Send only needed data in suitable 
format 
• Low latency 
• Handle heavy computations 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 7
What we do? 
• Hey, let's change this request 
• Hey, let's add this field 
• Hey, let's get data in that format 
• Hey, let's have public URL to pics 
• Hey, let's ... 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 8
What we usually 
hear from backend 
devs? 
• No, I need yet another table to join 
• No, it's not simple to add that field 
• No, calculate it on your side 
• No, our library can't do that 
• No, I'll deploy these changes in next 
sprint 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 9
Problems 
• Different goals 
• Misunderstanding 
• Lack of trust 
• Limited experience 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 10
Solutions? 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 11
No solution 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 12
Approaches 
• Write documentation 
• Write tests 
• Write constructive emails 
• Explain on examples 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 13
API documentation 
• Need time to write 
• Need time to update 
• Need time to search 
• Useless if outdated 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 14
API documentation 
• 'Put everything in one place' (not in 
emails, not in head) 
• User friendly 
• Access anywhere at any time 
• Determined 
• Always updated 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 15
Creating API 
documentation 
• Auto generated docs from code 
• API tests 
• Wiki 
• Google Doc 
• Emails/skype history/developer's 
head 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 16
Documentation in Google Doc 
• Easy to create (access anywhere) 
• Easy to share 
• Easy to update (ACL) 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 17
Documentation in Google Doc 
• Loooong & slow 
• Not super-structured (as wiki) 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 18
Must have: easy 
navigation 
Table of changes 
• When 
• Who 
• What was changed (with links) 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 19
Must have: easy 
navigation 
Table of changes 
• When 
• Who 
• What was changed (with links) 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 20
Must have: easy 
navigation 
Contents 
• Quick to search 
• Easy to deep into 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 21
Must have: 
fundamentals 
Envinronment description 
• Production server URL 
• Dev server URL(s) 
• Main accounts 
• Version 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 22
Must have: 
fundamentals 
Data formats 
• JSON/xml 
• Response should be valid! 
• Encoding 
• Timestamp format 
• Boolean format 
• Float format 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 23
Must have: 
fundamentals 
Request formats 
• GET 
• POST (body format) 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 24
Must have: headers 
HTTP headers for Request 
• Accept content-type 
• Accept encoding 
• Cookie 
• Device 
• App version 
• Image scaling 
• Session handling 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 25
Must have: HTTP 
codes 
HTTP codes 
• What are valid? 
• What app should do? 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 26
Must have: 
response structure 
Response structure 
• Inner error code 
• Error message to user 
• Body 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 27
Must have: 
communication 
with user 
Inner error codes + message 
• Ok 
• Session is expired 
• DB error 
• Synchonization needed 
• Just show message to user 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 28
Must have in API 
documentation 
• Easy navigation and search: 
• Table of changes 
• Contents 
• Fundamentals 
• Envinronment description 
• Data formats 
• Request/response structure 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 29
API tests 
• Shared with backend dev 
• Public results 
• 'Everything is broken' - blame 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 30
API tests. Helium 
https://github.com/stanfy/helium 
• DSL description 
• Poke tests 
• Scenarios tests 
• Object generation 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 31
Miscommunication 
Be definite 
• Discuss smth in emails/chat -> add to API doc 
• Add manager to email thread 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 32
Miscommunication 
Provide full details 
• Add headers 
• Add timestamps 
• Add session IDs 
• Mark out details 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 33
Explain 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 34
Explain 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 35
Miscommunication 
Explain 
• Backend developer is not iPhone/Android user 
• Have no idea how data will shown 
• Design driven vs DB-data driven 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 36
Miscommunication 
Be polite 
• Thanks for quick changes 
• Thanks for deploy 
• Thanks for description 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 37
Why we need this? 
• We deal with real users 
• We gather feedbacks 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 38
Last slide 
Helium 
https://github.com/stanfy/helium 
Google doc 
http://bit.ly/1s69iVP 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 39
Questions 
@vixentael 
avoitova@stanfy.com.ua 
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 40
Making friends with backend developers. Stanfy MadCode Meetup, 2014. 41

More Related Content

More from Stanfy

Building Profanity Filters: clbuttic sh!t
Building Profanity Filters: clbuttic sh!tBuilding Profanity Filters: clbuttic sh!t
Building Profanity Filters: clbuttic sh!tStanfy
 
Optimistic Approach. How to show results instead spinners without breaking yo...
Optimistic Approach. How to show results instead spinners without breaking yo...Optimistic Approach. How to show results instead spinners without breaking yo...
Optimistic Approach. How to show results instead spinners without breaking yo...Stanfy
 
ComponenKit and React Native
ComponenKit and React NativeComponenKit and React Native
ComponenKit and React NativeStanfy
 
UX Research in mobile
UX Research in mobileUX Research in mobile
UX Research in mobileStanfy
 
Remote user research & usability methods
Remote user research & usability methodsRemote user research & usability methods
Remote user research & usability methodsStanfy
 
Stanfy MadCode Meetup#6: Apple Watch. First Steps.
Stanfy MadCode Meetup#6: Apple Watch. First Steps.Stanfy MadCode Meetup#6: Apple Watch. First Steps.
Stanfy MadCode Meetup#6: Apple Watch. First Steps.Stanfy
 
Stanfy MadCode Meetup: Анализ и модификация HTTP запросов для тестирования мо...
Stanfy MadCode Meetup: Анализ и модификация HTTP запросов для тестирования мо...Stanfy MadCode Meetup: Анализ и модификация HTTP запросов для тестирования мо...
Stanfy MadCode Meetup: Анализ и модификация HTTP запросов для тестирования мо...Stanfy
 
Stanfy's highlights of 2013
Stanfy's highlights of 2013Stanfy's highlights of 2013
Stanfy's highlights of 2013Stanfy
 
10 things to consider when choosing a mobile platform (iOS or Android)
10 things to consider when choosing a mobile platform (iOS or Android)10 things to consider when choosing a mobile platform (iOS or Android)
10 things to consider when choosing a mobile platform (iOS or Android)Stanfy
 
Stanfy Publications: How to Conduct Quick Usability Tests for iOS & Android A...
Stanfy Publications: How to Conduct Quick Usability Tests for iOS & Android A...Stanfy Publications: How to Conduct Quick Usability Tests for iOS & Android A...
Stanfy Publications: How to Conduct Quick Usability Tests for iOS & Android A...Stanfy
 
Stanfy Publications: Mobile Applications UI/UX Prototyping Process
Stanfy Publications: Mobile Applications UI/UX Prototyping ProcessStanfy Publications: Mobile Applications UI/UX Prototyping Process
Stanfy Publications: Mobile Applications UI/UX Prototyping ProcessStanfy
 
Stanfy Publications: Successful Cases of Mobile Technology in Medical Industry
Stanfy Publications: Successful Cases of Mobile Technology in Medical Industry Stanfy Publications: Successful Cases of Mobile Technology in Medical Industry
Stanfy Publications: Successful Cases of Mobile Technology in Medical Industry Stanfy
 

More from Stanfy (12)

Building Profanity Filters: clbuttic sh!t
Building Profanity Filters: clbuttic sh!tBuilding Profanity Filters: clbuttic sh!t
Building Profanity Filters: clbuttic sh!t
 
Optimistic Approach. How to show results instead spinners without breaking yo...
Optimistic Approach. How to show results instead spinners without breaking yo...Optimistic Approach. How to show results instead spinners without breaking yo...
Optimistic Approach. How to show results instead spinners without breaking yo...
 
ComponenKit and React Native
ComponenKit and React NativeComponenKit and React Native
ComponenKit and React Native
 
UX Research in mobile
UX Research in mobileUX Research in mobile
UX Research in mobile
 
Remote user research & usability methods
Remote user research & usability methodsRemote user research & usability methods
Remote user research & usability methods
 
Stanfy MadCode Meetup#6: Apple Watch. First Steps.
Stanfy MadCode Meetup#6: Apple Watch. First Steps.Stanfy MadCode Meetup#6: Apple Watch. First Steps.
Stanfy MadCode Meetup#6: Apple Watch. First Steps.
 
Stanfy MadCode Meetup: Анализ и модификация HTTP запросов для тестирования мо...
Stanfy MadCode Meetup: Анализ и модификация HTTP запросов для тестирования мо...Stanfy MadCode Meetup: Анализ и модификация HTTP запросов для тестирования мо...
Stanfy MadCode Meetup: Анализ и модификация HTTP запросов для тестирования мо...
 
Stanfy's highlights of 2013
Stanfy's highlights of 2013Stanfy's highlights of 2013
Stanfy's highlights of 2013
 
10 things to consider when choosing a mobile platform (iOS or Android)
10 things to consider when choosing a mobile platform (iOS or Android)10 things to consider when choosing a mobile platform (iOS or Android)
10 things to consider when choosing a mobile platform (iOS or Android)
 
Stanfy Publications: How to Conduct Quick Usability Tests for iOS & Android A...
Stanfy Publications: How to Conduct Quick Usability Tests for iOS & Android A...Stanfy Publications: How to Conduct Quick Usability Tests for iOS & Android A...
Stanfy Publications: How to Conduct Quick Usability Tests for iOS & Android A...
 
Stanfy Publications: Mobile Applications UI/UX Prototyping Process
Stanfy Publications: Mobile Applications UI/UX Prototyping ProcessStanfy Publications: Mobile Applications UI/UX Prototyping Process
Stanfy Publications: Mobile Applications UI/UX Prototyping Process
 
Stanfy Publications: Successful Cases of Mobile Technology in Medical Industry
Stanfy Publications: Successful Cases of Mobile Technology in Medical Industry Stanfy Publications: Successful Cases of Mobile Technology in Medical Industry
Stanfy Publications: Successful Cases of Mobile Technology in Medical Industry
 

Recently uploaded

9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7Pooja Nehwal
 
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRnishacall1
 
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPsychicRuben LoveSpells
 
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Pooja Nehwal
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceanilsa9823
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceanilsa9823
 

Recently uploaded (7)

9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7
 
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
 
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
 
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
 

Stanfy Madcode Meetup #1: Making Friends with Backend Developers

  • 1. Making friends with backend developers Making friends with backend developers. Stanfy MadCode Meetup, 2014. 1
  • 2. Making friends with backend developers Well, at least don't fight Making friends with backend developers. Stanfy MadCode Meetup, 2014. 2
  • 3. Own experience • Outsource • Own products • Working with remote backend team • Creating backends ourselves Making friends with backend developers. Stanfy MadCode Meetup, 2014. 3
  • 4. Situation Remote team: Mobile team <~> Backend team Making friends with backend developers. Stanfy MadCode Meetup, 2014. 4
  • 5. Situation Remote team: Mobile team <~~~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ > Backend team Making friends with backend developers. Stanfy MadCode Meetup, 2014. 5
  • 6. Situation Remote team: Mobile team <~~~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~ ocean ~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ > Backend team Making friends with backend developers. Stanfy MadCode Meetup, 2014. 6
  • 7. What we want from backend? • Use less requests • Send only needed data in suitable format • Low latency • Handle heavy computations Making friends with backend developers. Stanfy MadCode Meetup, 2014. 7
  • 8. What we do? • Hey, let's change this request • Hey, let's add this field • Hey, let's get data in that format • Hey, let's have public URL to pics • Hey, let's ... Making friends with backend developers. Stanfy MadCode Meetup, 2014. 8
  • 9. What we usually hear from backend devs? • No, I need yet another table to join • No, it's not simple to add that field • No, calculate it on your side • No, our library can't do that • No, I'll deploy these changes in next sprint Making friends with backend developers. Stanfy MadCode Meetup, 2014. 9
  • 10. Problems • Different goals • Misunderstanding • Lack of trust • Limited experience Making friends with backend developers. Stanfy MadCode Meetup, 2014. 10
  • 11. Solutions? Making friends with backend developers. Stanfy MadCode Meetup, 2014. 11
  • 12. No solution Making friends with backend developers. Stanfy MadCode Meetup, 2014. 12
  • 13. Approaches • Write documentation • Write tests • Write constructive emails • Explain on examples Making friends with backend developers. Stanfy MadCode Meetup, 2014. 13
  • 14. API documentation • Need time to write • Need time to update • Need time to search • Useless if outdated Making friends with backend developers. Stanfy MadCode Meetup, 2014. 14
  • 15. API documentation • 'Put everything in one place' (not in emails, not in head) • User friendly • Access anywhere at any time • Determined • Always updated Making friends with backend developers. Stanfy MadCode Meetup, 2014. 15
  • 16. Creating API documentation • Auto generated docs from code • API tests • Wiki • Google Doc • Emails/skype history/developer's head Making friends with backend developers. Stanfy MadCode Meetup, 2014. 16
  • 17. Documentation in Google Doc • Easy to create (access anywhere) • Easy to share • Easy to update (ACL) Making friends with backend developers. Stanfy MadCode Meetup, 2014. 17
  • 18. Documentation in Google Doc • Loooong & slow • Not super-structured (as wiki) Making friends with backend developers. Stanfy MadCode Meetup, 2014. 18
  • 19. Must have: easy navigation Table of changes • When • Who • What was changed (with links) Making friends with backend developers. Stanfy MadCode Meetup, 2014. 19
  • 20. Must have: easy navigation Table of changes • When • Who • What was changed (with links) Making friends with backend developers. Stanfy MadCode Meetup, 2014. 20
  • 21. Must have: easy navigation Contents • Quick to search • Easy to deep into Making friends with backend developers. Stanfy MadCode Meetup, 2014. 21
  • 22. Must have: fundamentals Envinronment description • Production server URL • Dev server URL(s) • Main accounts • Version Making friends with backend developers. Stanfy MadCode Meetup, 2014. 22
  • 23. Must have: fundamentals Data formats • JSON/xml • Response should be valid! • Encoding • Timestamp format • Boolean format • Float format Making friends with backend developers. Stanfy MadCode Meetup, 2014. 23
  • 24. Must have: fundamentals Request formats • GET • POST (body format) Making friends with backend developers. Stanfy MadCode Meetup, 2014. 24
  • 25. Must have: headers HTTP headers for Request • Accept content-type • Accept encoding • Cookie • Device • App version • Image scaling • Session handling Making friends with backend developers. Stanfy MadCode Meetup, 2014. 25
  • 26. Must have: HTTP codes HTTP codes • What are valid? • What app should do? Making friends with backend developers. Stanfy MadCode Meetup, 2014. 26
  • 27. Must have: response structure Response structure • Inner error code • Error message to user • Body Making friends with backend developers. Stanfy MadCode Meetup, 2014. 27
  • 28. Must have: communication with user Inner error codes + message • Ok • Session is expired • DB error • Synchonization needed • Just show message to user Making friends with backend developers. Stanfy MadCode Meetup, 2014. 28
  • 29. Must have in API documentation • Easy navigation and search: • Table of changes • Contents • Fundamentals • Envinronment description • Data formats • Request/response structure Making friends with backend developers. Stanfy MadCode Meetup, 2014. 29
  • 30. API tests • Shared with backend dev • Public results • 'Everything is broken' - blame Making friends with backend developers. Stanfy MadCode Meetup, 2014. 30
  • 31. API tests. Helium https://github.com/stanfy/helium • DSL description • Poke tests • Scenarios tests • Object generation Making friends with backend developers. Stanfy MadCode Meetup, 2014. 31
  • 32. Miscommunication Be definite • Discuss smth in emails/chat -> add to API doc • Add manager to email thread Making friends with backend developers. Stanfy MadCode Meetup, 2014. 32
  • 33. Miscommunication Provide full details • Add headers • Add timestamps • Add session IDs • Mark out details Making friends with backend developers. Stanfy MadCode Meetup, 2014. 33
  • 34. Explain Making friends with backend developers. Stanfy MadCode Meetup, 2014. 34
  • 35. Explain Making friends with backend developers. Stanfy MadCode Meetup, 2014. 35
  • 36. Miscommunication Explain • Backend developer is not iPhone/Android user • Have no idea how data will shown • Design driven vs DB-data driven Making friends with backend developers. Stanfy MadCode Meetup, 2014. 36
  • 37. Miscommunication Be polite • Thanks for quick changes • Thanks for deploy • Thanks for description Making friends with backend developers. Stanfy MadCode Meetup, 2014. 37
  • 38. Why we need this? • We deal with real users • We gather feedbacks Making friends with backend developers. Stanfy MadCode Meetup, 2014. 38
  • 39. Last slide Helium https://github.com/stanfy/helium Google doc http://bit.ly/1s69iVP Making friends with backend developers. Stanfy MadCode Meetup, 2014. 39
  • 40. Questions @vixentael avoitova@stanfy.com.ua Making friends with backend developers. Stanfy MadCode Meetup, 2014. 40
  • 41. Making friends with backend developers. Stanfy MadCode Meetup, 2014. 41