Upgrade to Pro — share decks privately, control downloads, hide ads and more …

mobile DevOps

mobile DevOps

Mobile DevOps is a modern approach that enables seamless application delivery from testing to production. Modern agile teams need fast iterations and short feedback loops and CI/CD is what technology enables that. The role of the mobile developer has changed, from only being able to code to be able to build and provide an engineering solution. Now developers are required to have DevOps skills in their skillset, that way it makes life easier not only for QA but for the whole team, deploying and delivering applications with a breeze.

Merab Tato Kutalia

December 14, 2020
Tweet

More Decks by Merab Tato Kutalia

Other Decks in Technology

Transcript

  1. Mobile DevOps

    View Slide

  2. Android Chapter Lead @ TBC Bank
    tatocaster.me
    Tato Kutalia
    tatocaster

    View Slide

  3. View Slide

  4. Plan
    ● Life before DevOps
    ● Why DevOps matters
    ● CI / CD in Agile teams
    ● Going mobile
    ● Available solutions on the market

    View Slide

  5. Life before DevOps
    ● Business was a driver
    ● Monolith
    ● Monthly releases at most
    ● Each feature release had been in development and testing for multiple
    months already.
    ● QAs were struggling. Low test coverage and distribution
    ● Rollbacks were hard

    View Slide

  6. Life before DevOps - Tech-wise
    ● Sysadmins = Bottleneck
    ● Staging server?
    ● Containers? Nope
    ● Software vs Hardware
    ● Long-living branches
    ● Merging
    I believe some of you still remember pushing changes directly to prod server via
    FTP

    View Slide

  7. Challenges Before
    Development Testing Release
    Development Testing Release
    Development Testing R
    Release cycle
    Bottleneck
    Release
    #1
    Release
    #2
    Release
    #3

    View Slide

  8. And what if you found a bug ?

    View Slide

  9. What is DevOps

    View Slide

  10. Agile way of doing things

    View Slide

  11. DevOps .. Agile
    Release
    Testing
    Monitor /
    Support
    Development
    Start
    DevOps
    Development Operations
    Agile

    View Slide

  12. Rapid delivery
    ● Biweekly releases
    Parallel builds for different configurations:
    ● flavors (Google / Huawei)
    ● variants (prod/test)
    ● release/debug

    View Slide

  13. Feedback loop
    ● Fail fast
    ● Short-living branches
    ● Reduced branches
    ● More PRs

    View Slide

  14. Improved communication
    ● ✅ PRs = Happy team
    ● QAs + developers

    View Slide

  15. Security
    ● Containers
    ● Managing credentials
    ● Continuous monitoring

    View Slide

  16. Continuous Testing
    ● Builds for QA
    ● Automatic unit tests
    ● Automatic delivery via Firebase Beta/Slack

    View Slide

  17. Mobile DevOps?
    ● Adapt to mobile infrastructure
    ● Mobile release flow
    ● Mobile tools
    ● Keep artefacts
    ● Manage multi-module builds & tests
    ● Multiple concurrent builds

    View Slide

  18. What the market offers for mobile?
    ● Bitrise
    ● CircleCI
    ● Jenkins
    ● TeamCity
    ● Bitbucket Pipelines
    ● Travis CI
    ● and much more

    View Slide

  19. Questions

    View Slide