droidconIN 2016

The sixth edition of droidconIN

The Art of Scaling Mobile Apps - Tips, Tricks and Strategies learned on App with 20M+ Downloads

Submitted by Amiruddin Nagri (@amir) on Wednesday, 10 August 2016

videocam_off

Technical level

Advanced

Section

Full talk (40 minutes)

Status

Submitted

Vote on this proposal

Login to vote

Total votes:  +8

Abstract

GO-JEK is Indonesia’s largest startup, growing 900X in the 18 months since launch. GO-JEK’s platform powers the Indonesian equivalents of Ola, PayTM, Swiggy, Grophers, Zomato, Dunzo and UrbanClap - all using a SINGLE app, and at comparable scale. GO-FOOD alone already does more daily orders than all Indian food tech startups combined.

GO-JEK challenges are unique, some of them are -

  1. Parallel development on diverse set of products
  2. 50+ mobile developers
  3. Keeping the Architecture consistent
  4. Maintaining the quality, stability, security, UX etc.
  5. People, people, people

The talk will focus on tips & tricks learned scaling up Go-JEK 900x, and unique strategies devised to keep up the quality, stability and continuous parallel development. We will share the tools & processes that helped us to keep moving forward, to organizing and scaling teams to streamline communication.

Outline

Mindmap Outline

The Art of Scaling Mobile Apps

About GO-JEK

  • 20M+ downloads
  • 12+ Products
  • 20+ Teams (backend + frontend)
  • 20M+ Bookings in June alone

Development Process

  • Agile, Scrum, Just Do It !
  • JIRA, Trello, Story Cards
  • Must tools for mobile app BA = Zeplin, Apiary, Postman, Swagger
  • Android/iOS Architecture using MVP, MVVM, Rx, RAC, VIPER
  • Code Quality - Code Conventions, Unit, Instrumentation, Activity, Functional Tests, Espresso, Appium, Cucumber, Jacoco, Coverage
  • Build Tools - advance tips & trick on Gradle, Fastlane, Fabric Beta, TestFlight
  • Realtime Monitoring - advance tips & tricks on New Relic, Crashlytics, Mixpanel, Firebase
  • Parallel Development - Team Branches, Builds, Deployment, Distribution, Feature Flag, Build Flags, Remote Config Flags, Percentile Rollout, Remote Kill
  • Jenkins, Jenkins, Jenkins …

Tools

  • GMail, GDocs, Evernote, Calendar, JIRA, Confluence, Slack, Whatsapp, Hangouts, GoTo
  • Git, Git Flow, Feature branches, Team branches

Release Process

  • 2 week release cycles
  • Testing
  • Alpha/Dog-Food releases
  • Final releases

Other Tips & Tricks

  • Realtime Feedback Channels = Crashlytics, Play+App Store Reviews+Ratings, Twitter, Facebook, Datadog, Mixpanel

Speaker bio

Amir at core is a Constant Learner, and currently VP of Mobile Engineering at GO-JEK. With over 10+ yrs of experience, most of which was spent at ThoughtWorks, he likes to code and gets excited to see it deployed to production. He has played a wide variety of role from Java/Ruby backend developer to busted Android/iOS bootstrap developer entrepreneur.

He will be co-presenting it with Salis, who is a fellow Android Developer at GO-JEK. He is very passionate about developing Android Apps and is eager to explore Android and beyond.

Links

Slides

https://docs.google.com/a/go-jek.com/presentation/d/1RHOZipSX0dC--IjyFezig32elH49ROUqUj8M6kvq55s/edit?usp=sharing

Comments

Login with Twitter or Google to leave a comment