![Page 1: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/1.jpg)
Product architectureby Royi Benyossef
Failures and lessons learnt
![Page 2: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/2.jpg)
Android developer since 2009Tech community activist, speaker and founderMentor at * acceleratorGoogle expert since 2013Developer relations manager Samsung Next Tel-Aviv
Introduction Royi Benyossef
![Page 3: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/3.jpg)
Introduction Samsung Next Tel-avivCommunity (free-for-all, no strings attached) Investment:
Early stage SW & SaaS startupsSeasoned entrepreneursDeep tech - IoT, AR/VR, cyber, DL, ML, CV,
bots, cloud etc.
![Page 4: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/4.jpg)
Community (free-for-all, no strings attached) Investment (SW & SaaS startups & entrepreneurs) For more information:- samsungnexttlv.com- [email protected]
Introduction Samsung Next Tel-aviv
![Page 5: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/5.jpg)
Prolog
![Page 6: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/6.jpg)
Prolog
Vidmind:Introduction
![Page 7: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/7.jpg)
Prolog
Vidmind:- End-to-end OTT TV
platform
Introduction
![Page 8: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/8.jpg)
Prolog
Vidmind:End-to-end OTT TV platform- Standard backend & clients
Introduction
![Page 9: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/9.jpg)
Prolog
Vidmind:End-to-end OTT TV platform- Standard backend & clients
+ AOSP STB
Introduction
![Page 10: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/10.jpg)
Prolog
Vidmind:End-to-end OTT TV platform- Standard backend & clients
+ Android “based” set-top box
Introduction
![Page 11: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/11.jpg)
Prolog
AOSP STBMe @ Vidmind:
Introduction
![Page 12: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/12.jpg)
Prolog
AOSP STBMe @ Vidmind:
- From Android tech. leader
Introduction
![Page 13: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/13.jpg)
Prolog
AOSP STBMe @ Vidmind:
From Android tech. leader- To Android clients
group manager
Introduction
![Page 14: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/14.jpg)
Prolog
AOSP STBMe @ Vidmind:
From Android tech. leader- To Android clients
group manager(In charge W/ design, dev, arch. & prod.)
Introduction
![Page 15: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/15.jpg)
Prolog
See what we didAgenda
![Page 16: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/16.jpg)
Prolog
See what we didTalk about what went wrong and why
Agenda
![Page 17: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/17.jpg)
Prolog
See what we didTalk about what went wrongSay what we learned from our issues
Agenda
![Page 18: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/18.jpg)
Prolog
See what we didTalk about what went wrongSay what we learned from our issuesShow how we attempted to “fix it”
Agenda
![Page 19: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/19.jpg)
Prolog
See what we didTalk about what went wrongSay what we learned from our issuesShow how we attempted to “fix it”Disclose how that panned out
Agenda
![Page 20: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/20.jpg)
Prolog
See what we didTalk about what went wrongSay what we learned from our issuesShow how we attempted to “fix it”Disclose how that panned outRepeat
Agenda
![Page 21: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/21.jpg)
Chapter 1To be young and hopeful
![Page 22: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/22.jpg)
Chapter 1
One app (launcher) What we did
![Page 23: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/23.jpg)
Chapter 1
One app (launcher)Each “screen” was in a transparent activity
What we did
![Page 24: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/24.jpg)
Chapter 1
One app (launcher)Each “screen” was in a transparent activityRoot app handled video and OpenGL gallery
What we did
![Page 25: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/25.jpg)
Chapter 1
One app (launcher)Each “screen” was in a transparent activityRoot app handled video and OpenGL galleryOn-prem and manual build machine
What we did
![Page 26: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/26.jpg)
Chapter 1
One app (launcher)Each “screen” was in a transparent activityRoot app handled video and OpenGL galleryOn-prem and manual build machine Using proprietary APIs for “special” features
What we did
![Page 27: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/27.jpg)
Chapter 1
Apk size was enormous What we later found
![Page 28: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/28.jpg)
Chapter 1
Apk size was enormous (mostly bad for dev)
What we later found
![Page 29: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/29.jpg)
Chapter 1
Apk size was enormous (mostly bad for dev)UX did not work as the designers asked
What we later found
![Page 30: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/30.jpg)
Chapter 1
Apk size was enormous (mostly bad for dev)UX did not work as the designers askedCodebase became an unmanageable mess
What we later found
![Page 31: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/31.jpg)
Chapter 1
Apk size was enormous (mostly bad for dev)UX did not work as the designers askedCodebase became an unmanageable mess:
> Builds took time and manpower
What we later found
![Page 32: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/32.jpg)
Chapter 1
Apk size was enormous (mostly bad for dev)UX did not work as the designers askedCodebase became an unmanageable mess:
Builds took time and manpower> No QA automation
What we later found
![Page 33: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/33.jpg)
Chapter 1
Apk size was enormous (mostly bad for dev)UX did not work as the designers askedCodebase became an unmanageable mess:
Builds took time and manpowerNo QA automation> Stability was terrible
What we later found
![Page 34: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/34.jpg)
Chapter 1
Apk size was enormous (mostly bad for dev)UX did not work as the designers askedCodebase became an unmanageable mess:
Builds took time and manpowerNo QA automationStability was terrible> Runtime memory was too
much
What we later found
![Page 35: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/35.jpg)
Chapter 1
Apk size was enormous (mostly bad for dev)UX did not work as the designers askedCodebase became an unmanageable mess:
Builds took time and manpowerNo QA automationStability was terrible> Runtime memory was too
much
What we later found
Max runtime =
~2 hours
![Page 36: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/36.jpg)
Chapter 1
Apk size was enormous (mostly bad for dev)UX did not work as the designers askedCodebase became an unmanageable messQA was impossible
What we later found
![Page 37: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/37.jpg)
Chapter 1
We can’t look at this as a normal application
What we learned from it
![Page 38: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/38.jpg)
Chapter 1
We can’t look at this as a normal applicationWe need to seek other implementations
What we learned from it
![Page 39: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/39.jpg)
Chapter 2Throwing a tantrum
![Page 40: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/40.jpg)
Chapter 2
One appWhat we (almost) did
![Page 41: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/41.jpg)
Chapter 2
One app Implemented entirely in OpenGL
What we (almost) did
![Page 42: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/42.jpg)
Chapter 2
OpenGL development is long and hard
What we later found
![Page 43: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/43.jpg)
Chapter 2
OpenGL development is long and hardOpenGL wrappers are meant for games
What we later found
![Page 44: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/44.jpg)
Chapter 2
We have to go back!!!What we learned from it
![Page 45: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/45.jpg)
Chapter 3Minimum changes
![Page 46: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/46.jpg)
Chapter 3
Activities became apps What we did
![Page 47: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/47.jpg)
Chapter 3
Activities became apps (1 per screen + launcher)
What we did
![Page 48: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/48.jpg)
Chapter 3
Activities became apps (1 per screen + launcher)Added a “sticky” service
What we did
![Page 49: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/49.jpg)
Chapter 3
Activities became apps (1 per screen + launcher)Added a “sticky” service Communication (w/ interfaces):
- App to service
What we did
![Page 50: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/50.jpg)
Chapter 3
Activities became apps (1 per screen + launcher)Added a “sticky” service Communication (w/ interfaces):
App to service- Service to app
What we did
![Page 51: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/51.jpg)
Chapter 3
Activities became apps (1 per screen + launcher)Added a “sticky” service Communication (w/ interfaces)Pseudo MVC
What we did
![Page 52: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/52.jpg)
Chapter 3
Activities became apps (1 per screen + launcher)Added a “sticky” service Communication (w/ interfaces)Pseudo MVC* Still using OpenGL gallery
What we did
![Page 53: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/53.jpg)
Chapter 3What we didActivities became apps (1 per screen + launcher)Added a “sticky” service Communication (w/ interfaces)Pseudo MVC* Still using OpenGL gallerySTB HW and FW updated to improve UX
![Page 54: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/54.jpg)
Chapter 3What we didActivities became apps (1 per screen + launcher)Added a “sticky” service Communication (w/ interfaces)Pseudo MVC* Still using OpenGL gallerySTB HW and FW updated to improve UX (Incl. Android API upgrade)
![Page 55: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/55.jpg)
Chapter 3
Services do not live foreverWhat we later found
![Page 56: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/56.jpg)
Chapter 3
Services do not live forever (= instability)
What we later found
![Page 57: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/57.jpg)
Chapter 3
Services do not live forevercomplex development process
What we later found
![Page 58: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/58.jpg)
Chapter 3
Services do not live forevercomplex development process
(= 10 files to add a method)
What we later found
![Page 59: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/59.jpg)
Chapter 3
Services do not live forevercomplex development processAll proprietary APIs changed behavior
What we later found
![Page 60: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/60.jpg)
Chapter 3
Services do not live forevercomplex development processAll proprietary APIs changed behavior
(= needed massive code changes)
What we later found
![Page 61: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/61.jpg)
Chapter 3
Services do not live forevercomplex development processAll proprietary APIs changed behaviorCode maintainability issues
What we later found
![Page 62: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/62.jpg)
Chapter 3
Services do not live forevercomplex development processAll proprietary APIs changed behaviorCode maintainability issues+ builds (still) took time and manpower
What we later found
![Page 63: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/63.jpg)
Chapter 3
Services do not live forevercomplex development processAll proprietary APIs changed behaviorCode maintainability issues+ builds (still) took time and manpower+ No QA automation
What we later found
![Page 64: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/64.jpg)
Chapter 3
Services do not live forevercomplex development processAll proprietary APIs changed behaviorCode maintainability issues+ builds (still) took time and manpower+ No QA automation
= QA was impossible
What we later found
![Page 65: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/65.jpg)
Chapter 3
No more OpenGLWhat we learned from it
![Page 66: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/66.jpg)
Chapter 3
No more OpenGLWe need to work with Android, not against it
What we learned from it
![Page 67: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/67.jpg)
Chapter 3
No more OpenGLWe need to work with Android, not against itWe need a great UX that works on Android
What we learned from it
![Page 68: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/68.jpg)
Chapter 3
No more OpenGLWe need to work with Android, not against itWe need a great UX that works on AndroidBuild and QA automation are a must
What we learned from it
![Page 69: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/69.jpg)
Chapter 3
No more OpenGLWe need to work with Android, not against itWe need a great UX that works on AndroidBuild and QA automation are a mustFeature encapsulation is a must
What we learned from it
![Page 70: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/70.jpg)
Chapter 3
No more OpenGLWe need to work with Android, not against itWe need a great UX that works on AndroidBuild and QA automation are a mustFeature encapsulation is a mustEffective code sharing is a must
What we learned from it
![Page 71: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/71.jpg)
Chapter 4This has to work!
![Page 72: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/72.jpg)
Chapter 4
Maven + jenkins based build machine
What we did
![Page 73: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/73.jpg)
Chapter 4
Maven + jenkins based build machineAppium + Espresso + JUnit automation
What we did
![Page 74: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/74.jpg)
Chapter 4
Maven + jenkins based build machineAppium + Espresso + JUnit automationHAL
What we did
![Page 75: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/75.jpg)
Chapter 4
Maven + jenkins based build machineAppium + Espresso + JUnit automationHAL (Hardware Abstraction Layer)
What we did
![Page 76: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/76.jpg)
Chapter 4
Maven + jenkins based build machineAppium + Espresso + JUnit automationHAL (Hardware Abstraction Layer) Func. based encapsulation
What we did
![Page 77: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/77.jpg)
Chapter 4
Maven + jenkins based build machineAppium + Espresso + JUnit automationHAL (Hardware Abstraction Layer) Func. based encapsulation App dependency management
What we did
![Page 78: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/78.jpg)
Chapter 4
Far faster implementationWhat we later found
![Page 79: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/79.jpg)
Chapter 4
Far faster implementationReduced inter-team dependency
What we later found
![Page 80: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/80.jpg)
Chapter 4
Far faster implementationReduced inter-team dependency allowed us to:
- Increase group size to ~35
What we later found
![Page 81: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/81.jpg)
Chapter 4
Far faster implementationReduced inter-team dependency allowed us to:
Increase group size to ~35- Work in 5 locations (4
countries)
What we later found
![Page 82: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/82.jpg)
Chapter 4
Far faster implementationReduced inter-team dependencyDesigners were happy with the UX
What we later found
![Page 83: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/83.jpg)
Chapter 4
Far faster implementationReduced inter-team dependencyDesigners were happy with the UXImproved performance and stability
What we later found
![Page 84: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/84.jpg)
Chapter 4
Far faster implementationReduced inter-team dependencyDesigners were happy with the UXImproved performance and stabilityImproved work cycle and transparency
What we later found
![Page 85: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/85.jpg)
Chapter 4
Far faster implementationReduced inter-team dependencyDesigners were happy with the UXImproved performance and stabilityImproved work cycle and transparencyHW&FW agnostic product:
What we later found
![Page 86: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/86.jpg)
Chapter 4
Far faster implementationReduced inter-team dependencyDesigners were happy with the UXImproved performance and stabilityImproved work cycle and transparencyHW&FW agnostic product:
> Faster integ. for demos -> easier sale
What we later found
![Page 87: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/87.jpg)
Chapter 4
Far faster implementationReduced inter-team dependencyDesigners were happy with the UXImproved performance and stabilityImproved work cycle and transparencyHW&FW agnostic product:
Faster integ. for demos -> easier sale
> Increased bargaining power with OEMs
What we later found
![Page 88: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/88.jpg)
Summary
![Page 89: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/89.jpg)
Summary
Work better not harderWhat we learned from it
![Page 90: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/90.jpg)
Summary
Work better not harderAutomate as much as possible
What we learned from it
![Page 91: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/91.jpg)
Summary
Work better not harderAutomate as much as possibleWork with your system, not against it
What we learned from it
![Page 92: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/92.jpg)
Summary
Work better not harderAutomate as much as possibleWork with your system, not against it
(HW, SW, FW and people)
What we learned from it
![Page 93: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/93.jpg)
Summary
Work better not harderAutomate as much as possibleWork with your system, not against itNever be afraid to start over (if you can)
What we learned from it
![Page 94: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/94.jpg)
“We should be building great things. Things that Don’t yet exist”
![Page 95: "Product Architecture: failures and lessons learnt" - Royi Benyossef @Products_of_Things, August 2016](https://reader035.vdocuments.net/reader035/viewer/2022070516/58701e431a28ab7f428b7561/html5/thumbnails/95.jpg)
Royi Benyossef samsungnexttlv.com
Hope you liked itThanks for listening!
Royi Benyossef