Download presentation
Presentation is loading. Please wait.
Published byAmberlynn Thomas Modified over 9 years ago
1
LinkedIn Mobile How we do we do it?
2
Build Design Code Testing Deploy Platform iOS Android Browser Other
3
Code
4
Mobile Server (node.js + MongoDB) LinkedIn Platform Domain REST API Screen based REST API iOS Native 30% Android 80% Mobile Web 100% Other OS Wrappers 100% Mobile Web JS/HTML
5
Mobile Server (node.js + MongoDB) LinkedIn Platform Domain REST API Screen based REST API iOS Native 30% Android 80% Mobile Web 100% Other OS Wrappers 100% Mobile Web JS/HTML
6
Model ViewController Typical Web Application Client/Server Border
7
ActiveRecord ERB Rails Controllers Rails Systems Process Client/Server Border
8
Data Service TemplatingControllers Tiered Systems Process Client/Server Border
9
Real Systems TemplatingControllers Process Data Servic e Process Data Servic e Process Trackin g Process BG Queu e Process...... Client/Server Border
10
TemplatingControllers Real HTML5 Systems Browser / Mobile Client Data Servic e Process Data Servic e Process Trackin g Process BG Queu e Process...... Client/Server Border
11
Real HTML5 with Node.JS TemplatingControllers Browser / Mobile Client Data Servic e Process Data Servic e Process Trackin g Process BG Queu e Process...... Client/Server Border Node.JS - Aggregation, Formatting
12
Why Node.JS: Evented & JS I/O Bound for most interaction Aggregation and Manipulation of Strings Lots of persistent socket connections Client developers are doing server development
13
Mobile Server Stateless Platform Transport: JSON In / JSON Out Nginx as Web Server CDN for Static Content Log / Track Everything Load Balancer Nginx Node JS Server Mongo DB Nginx Node JS Server Logging Server Trackin g Server LinkedIn Platform
14
Screen Based JSON Single Request per screen JSON is template based Updatable on server { ttype: nut1, time: 298349823, header: “Wow, that is pretty cool”,............. footer: “shared by Kiran Prasad”, id: 1298398127, }
15
Mobile Server (node.js + MongoDB) LinkedIn Platform Domain REST API Screen based REST API iOS JS/HTML + Native Android Native Mobile Web JS/HTML Other Wrap JS/HTML
16
iOS Native for all infinite lists Native for Window Manager JS/HTML for all screens that are detail views (70% of App today) Per screen choice for the stuff in the middle Async JS/iOS Bridge
17
Mobile Server (node.js + MongoDB) LinkedIn Platform Domain REST API Screen based REST API iOS JS/HTML + Native Android Native Mobile Web JS/HTML Other Wrap JS/HTML
18
Android Native for all the screens WebView for 20% of screens Moving towards more HTML5 Contacts locally stored but rest only in memory cache
19
Mobile Server (node.js + MongoDB) LinkedIn Platform Domain REST API Screen based REST API iOS JS/HTML + Native Android Native Mobile Web JS/HTML Other Wrap JS/HTML
20
Mobile Web Backbone for MVC Underscore for utils Zapto for DOM Manipulation Modified iScroll for Scrolling LocalStorage for personal Cache SASS for CSS Closure for compiling Hash based Loader
21
Test
22
Automation: Vows, Robotium, Selenium, FoneMonkey, GHUnit Hudson for build management Internal Tool for Layout Testing PhantomJS based Tool for Performance Bug Bash + 2 Week Demos 2 Week Team Demo
23
Deploy
24
Deploy / Monitor Enterprise Build available to employees Ship everything 2 times a week Apps and Server Deploy independently 2 Week Bake for Big Stuff Keynote for Performance and Availability monitoring DeviceAnywhere for compatibility testing Internal monitoring for QPS, Uptime, etc Client Crash Log Metrics tracked daily
25
Thanks! & Questions?
26
Appendix
27
Product Design
28
Interaction vs Visual Designing a house’s floorplan Focus on Rooms, Doors and Hallways Stay away from Paint, Furniture and Carpet Has & Does for each screen Black & White then add color
29
Search, Compose, Room Navigation Notifications StreamYouInboxFollowing Breadth < 4 Depth < 3
30
Adjust for App Platform On Screen Back vs Hardware Back Up vs Back / Stacks vs Pages Pull To Refresh vs Button Refresh Settings Visual Design
31
Mobile Web Enter the house SEO Email Organic
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.