Virgin Mobile KSA
Virgin Mobile KSA - application for a new type of mobile company. The program provides access to change the tariff plan, disconnection/connection of support services.
tripplanninghappystaygobudgetflightschoosecitieshotelsactivitie
tripplanninghappystaygobudgetflightschoosecitieshotelsactivitie
tripplanninghappystaygobudgetflightschoosecitieshotelsactivitie
tripplanninghappystaygobudgetflightschoosecitieshotelsactivitie
SWIFT
- Fastlane & CI/CD
- Clean Swift Architecture
- Custom charts
- QR-code/Bar-code scanning
- Google maps
- Firebase (analytic, push notification)
- Facebook, Google, Twitter integration
- Branch.io (deeplinks)
- Apptimize (Mobile A/B testing & Release management)
- Adjust (analytic)
- Instabug
- SwiftyBeaver
JAVA
- RxJava
- Retrofit
- Gson
- LifeData
- Google maps
- FireBase
- Branch.io
- Instabug
- Lokalise
- Custom charts
- RxBinding
Application functionality
- SIM card and mobile number booking with wide variety of predefined and custom plans;
- Tracking SIM cards delivery on map;
- Ability to add family mobile numbers and family IoT devices;
- Dashboard experience to easily manage own and family mobile numbers, track spendings and usage, manual and auto top-up wallets, create/change/pause plans, add boosters;
- In-app help and online chat.
What was done
- Clean Swift architecture with VIP cycle that allowed us to fully utilise well-known SOLID principles and unit tests;
- We used feature toggling technique to show/hide features dynamically in production. It's very useful for A/B testing and very trendy now;
- We paid attention to automatization of the process of sending applications to the client and App Store/ Google Play. It allowed us to achieve product continuous integration and delivery;
- We utilised next security practices for online payments and hacker attacks on the app: cryptography & SSL pinning, obfuscation of sensitive strings and keys in the application code, jailbreak detection, anti-reverse engineering techniques;
- Conventional and well-known techniques in developers community such as Unit testing, Code review and Version control systems helped us to reach high quality, bug-free, maintainable and scalable program code.