nayaread
HomeFavouritesTopicsSources
HomeFavouritesTopicsSources
NayaRead links to original engineering blogs. All copyright belongs to the respective authors.
Shopify Engineering·Jan 16, 2020·6 min read44

Scaling Mobile Development by Treating Apps as Services - Shopify

Scaling development without slowing down the delivery speed of new features is a problem that companies face when they grow. Speed can be achieved through better tooling, but the bigger the teams and projects, the more tooling they need. When projects and teams use different tools to solve similar problems, it gets harder for tooling teams to create one solution that works for everybody. Additionally, it complicates knowledge sharing and makes it difficult for developers to contribute to other projects. This lack of knowledge and developers is magnified during incident response because only a handful of people have enough context and understanding of the system to mitigate and fix issues. At Shopify, we believe in highly aligned, but loosely coupled teams—teams working independently from each other while sharing the same vision and goals—that move fast and minimize slowdowns in productivity. To continue working towards this goal, we designed tools to share processes and best practices that ease collaboration and code sharing. With tools, teams ship code fast while maintaining quality and productivity. Tooling worked efficiently for our web services, but we lacked something similar for mobile projects. Tools enforce processes that increase quality, reliability and reproducibility. A few examples include using continuous Integration (CI) and automated testing continuous Delivery to release new versions of the software containers to ensure that the software runs in a controlled environment. Treating Apps as Services Last year, the Mobile Tooling Team shipped tools helping mobile developers be more productive, but we couldn’t enforce the usage of those tools. Moreover, checking which tools mobile apps used required digging into configuration files and scripts spread across different projects repositories. We have several mobile apps available for download between Google Play and the App Store, so this approach didn’t scale. Fortunately, Shopify has a tool that enforces tool usage and we extended it to our mobile projects. ServicesDB tracks all production services running at Shopify and has three major goals: keep track of all running

DevOpsMobileSystem Design
Read original on shopify.engineering

Score breakdown

  • Technical depth41
  • Practical value45
  • Originality100
  • Writing quality100
  • Source reputation0
  • Recency0
  • External engagement0
  • On-site engagement0

NayaRead shows a summary and links to the original article. The full article is hosted on shopify.engineering.

More like this

Shopify Engineering

Mobile Tophatting at Shopify - Shopify

Sep 11, 2018·7 min read
Shopify Engineering

Building Reliable Mobile Applications - Shopify

Aug 14, 2020·14 min read
Shopify Engineering

Modelling Developer Infrastructure Teams - Shopify

Aug 13, 2021·11 min read
Shopify Engineering

Improving Shopify App’s Performance - Shopify

Mar 5, 2024·10 min read