SaFi Bank Space : Access for Mobile app Development

This page serves to give you a better idea about the various systems involved in our mobile app development cycle - from coding to shipping. It also serves as a guide to help your fellow engineers recall the kind of accesses they need to grant you if you’ve just joined. Note that depending on your role and how sensitive the data in a given system is, access may be restricted to you.

Code / Development

Item

Purpose

Default access

Remarks

Mobile Code Repo

Mobile app source code.

Developer

-

Fastlane Non-Prod Repo

Required to fetch and install iOS Development profiles for local debugging

Developer

-

For Android local debugging, the mobile source code is all that you require. For iOS, however, You will need to request for your iPhone/iPad to be whitelisted in our enterprise Apple Developer account (get help from someone who has access), as well as the Fastlane non-production repository. Note that whitelisting iOS devices is subject to an annual quota of 100-device per annum - therefore please make sure you intend to support for iOS development if you’re going to consume a slot!

Build Generation

Note that we are using Fastlane for the generation of our .ipa (iOS) files. Fastlane allows us to easily store application profiles that are needed for compiling the app in a repository of our choice, and to automatically fetch from it to generate a build. This saves us the need to grant every single developer access to sensitive configurations in App Store Connect. See the official docs for Fastlane here to find out about the other features it provides. Also, take a look at the scripts we have configured in app/app_safi/ios/fastlane/Fastfile.

Item

Purpose

Default access

Remarks

Mobile Build Repo

Generates dev, and stage builds. See pipeline configurations in Github Actions

Developer

-

Github Actions

Generates dev stage and production builds

Viewer

-

Fastlane Non-Prod Repo

Store non-prod fastlane assets

Developer

-

Fastlane Prod Repo

Store prod fastlane assets

No access

-

Vault Prod Repo

Store prod key value pair

No access

-

App deployments

Item

Purpose

Default access

Remarks

App Store Connect

  • iOS cert/user/profile/device management

  • “What’s New”, image assets and other release configurations for Production release

Developer

-

Google Play Console

Android cert/user management, release configurations

  • Android cert/user management

  • “What’s New”, image assets and other release configurations for Production release

Viewer

-

iOS Testflight

Access to generated dev, stage, and Production iOS builds

-

Please ask Medel Vecina (Unlicensed) or Andre Laksmana (Unlicensed)

Firebase App Distribution & Firebase Remote Config

Access to generated dev, staging, Production Android builds

Viewer

Please ask Medel Vecina (Unlicensed) or Andre Laksmana (Unlicensed)

App performance monitoring / Analytics

Item

Purpose

Default access

Remarks

Item

Purpose

Default access

Remarks

Firebase Crashlytics

Crashlytics

Viewer

Please ask Medel Vecina (Unlicensed) or Andre Laksmana (Unlicensed)

Firebase Analytics

App Analytics

Viewer

 Please ask Medel Vecina (Unlicensed) or Andre Laksmana (Unlicensed)

High-fidelity UI

Item

Purpose

Default access

Remarks

Figma

High-fidelity mockups of apps

-

Please ask Peter Venglarčík (Unlicensed)