Senior Mobile Software Engineer
CurrentLead many of the Android app development initiatives, designing, implementing, delivering, and maintaining Android libraries (which include UI) used in mobile apps built with OutSystems and Ionic. Also build and maintain the iOS, Cordova, OutSystems, Ionic & Capacitor, and JavaScript components of mobile plugins. Work with Azure DevOps and GitHub actions to build and maintain CI/CD pipelines.Main achievements across my 3 positions at OutSystems: - Implemented 14 new Android SDKs that provide native functionality to OutSystems apps. These use native frameworks and libraries such as Jetpack Compose, Room, CameraX, Notifications, ML Kit, ZXing, WebView, Custom Tabs, Health Connect, Google Fit, Keystore, Google Pay, Stripe’s Android SDK, Firebase Analytics, Firebase Crash Reporting, Firebase Cloud Messaging, Firebase Dynamic Links, Firebase Performance Monitoring, Google Sign In, Facebook Login. - Led and wrote multiple technical designs for the Android SDKs. - Maintained the 25 existing Android SDKs for OutSystems supported mobile plugins, which are currently supported from Android 9 to 15. - Also maintained the Capacitor plugins’ Android SDKs, that are available for Ionic apps. - Introduced Kotlin as the default language for Android development, migrating existing code from Java. Also removed legacy and deprecated code. - Also introduced the usage of Jetpack Compose, replacing XML, to build the Android UI of the SDKs. - Improved code quality by introducing Android app and library architecture (e.g. MVVM, MVC), and by introducing the usage of unit tests to ensure high code coverage (above 70 %). Also integrated the SDKs with quality tools such as SonarCloud and Snyk. - Helped onboard and mentor new colleagues, sharing knowledge about team assets.