Development of a VPN Mobile Client App
The Customer is a US software development company that owns a number of consumer VPN service brands.
The Customer had a desktop VPN solution for Windows, macOS, and Linux but wanted to have all three versions revamped and upgraded. Also, the Customer planned to introduce a mobile version of the same VPN client so as to cater to the users of Android devices. In April 2018, they turned to ScienceSoft requesting desktop software upgrade and Android development services.
C++/Qt and Java/Kotlin ScienceSoft teams worked on the desktop and mobile solutions simultaneously. The upgrade of the desktop versions involved adding the OpenVPN service to the list of supported VPN services, change of tunneling protocols, and implementation of a new authentication method. A team of UI designers also joined the mobile team and created a design for the future Android app in accordance with the existing style of desktop applications.
In August 2018, ScienceSoft completed the upgrade of desktop and development of Android solutions that were all officially released by the Customer in the same month. After the release, the Customer wanted ScienceSoft to stay on the project and provide maintenance and support.
In September 2018, the Customer requested an update for the Android app: they wanted the app to show a revamped login window on launch. ScienceSoft delivered the requested update by the end of October 2018.
The Customer is fully satisfied with the upgrade of desktop apps, mobile VPN client development, and collaboration with ScienceSoft in general. Maintenance and support services are still ongoing.
Technologies and Tools
Desktop: C++, Qt, QML, Qt Installer Framework, OpenVPN3, LibUV, Qt Test, Google Test, Visual Studio, CMake, Vagrant.
Android: Java, Kotlin, Android SDK, Android NDK, Gradle, RxJava, Dagger, EventBus, GreenDao, ButterKnife, Mockito, Junit.
Need help with a similar project?
Drop us a line, and our rep will contact you within 30 minutes to arrange an initial discussion.