Job Description Overview
-
Skill:
Kotlin, Java, MVI Architecture, MVVM Architecture, Android SDK, Jetpack Compose, XML Layouts, Material Design, ViewModels, LiveData, Coroutine, Room Database, SQLite
-
Location:
Remote
-
Experience:
7
We are seeking highly skilled Android developers with expertise in MVI/MVVM architecture, Kotlin, and Jetpack Compose to design and develop cutting-edge mobile applications across various platforms (phones, tablets, wearables, etc.). The ideal candidate will have deep technical knowledge of mobile application development and experience with React Native. You should also be proficient in unit testing for mobile applications to ensure robust, reliable, and high-performance applications. Candidates will be working in Dubai Time Zone, so flexibility in working hours is essential.
Key Skills:
Android Development: Kotlin, Java, MVI Architecture, MVVM Architecture, Android SDK, Jetpack Compose, XML Layouts, Material Design, ViewModels, LiveData, Coroutine, Room Database, SQLite
Mobile Development: Mobile App Architecture, UI/UX Design, Performance Optimization, Memory Management, Debugging, App Store Submission
Version Control: Git, GitHub, Bitbucket, Version Control Best Practices
APIs & Integration: RESTful APIs, JSON, Retrofit, Volley, Third-Party Libraries
Testing: Unit Testing, JUnit, Espresso, UI Automator, Test-Driven Development (TDD), UI Testing, Mocking, Test Coverage
CI/CD: Gradle, Android Studio, Jenkins, Bitrise, Continuous Integration, Continuous Deployment
App Distribution: Google Play Store, APK Release, App Publishing
Tools: Android Studio, Postman, Firebase, Jira, Slack, Confluence, Git
Other: Agile/Scrum, Problem Solving, Communication Skills, Team Collaboration
Key Responsibilities:
-
App Development:
- Design, develop, and maintain mobile applications for Android using Kotlin, Jetpack Compose, and Android SDK.
- Implement MVI/MVVM architecture for scalable and maintainable code.
- Ensure the app follows Android UI/UX design principles, including Material Design.
-
React Native Development:
- Build cross-platform mobile applications using React Native for both Android and iOS platforms.
- Integrate React Native components with native Android views for seamless functionality.
-
Performance and Optimization:
- Optimize applications for speed, memory usage, and performance.
- Monitor and resolve performance bottlenecks and ensure smooth functionality across devices.
-
API Integration:
- Integrate RESTful APIs for backend services.
- Handle JSON data parsing and ensure smooth data flow between the mobile app and backend systems.
-
Unit Testing and Debugging:
- Write unit tests for Android applications to ensure high-quality, maintainable, and bug-free code.
- Use frameworks like JUnit, Espresso, and UI Automator for testing Android applications.
- Troubleshoot and debug issues across multiple devices.
-
CI/CD and Version Control:
- Use Gradle, Android Studio, and other CI/CD tools to automate build and deployment processes.
- Manage code using Git and follow version control best practices for collaboration.
-
App Distribution:
- Handle Google Play Store app submission, ensuring smooth app updates, releases, and version control.
- Ensure proper app distribution practices for Android applications, including APK generation and signing.
-
Collaboration and Agile:
- Work in an Agile/Scrum environment and collaborate with designers, backend developers, and product managers.
- Participate in daily stand-ups, sprint planning, and code reviews.
-
Documentation:
- Document the codebase, technical processes, and best practices for team members and future developers.
- Ensure proper documentation for all developed features and functionality.
Required Qualifications:
- 5+ years of experience in Android mobile app development using Kotlin and Java.
- Strong expertise in Android SDK and building applications using Jetpack Compose and UI frameworks.
- Proficiency in unit testing with frameworks like JUnit, Espresso, and UI Automator.
- Experience in MVI/MVVM architecture for building scalable, maintainable applications.
- Strong experience with RESTful APIs and handling JSON data.
- Familiarity with CI/CD tools such as Gradle, Android Studio, and Jenkins.
- Knowledge of Google Play Store submission and app distribution processes.
- Familiarity with version control systems like Git and best practices in collaborative development.
Nice-to-Have:
- Experience with React Native for cross-platform mobile development.
- Knowledge of Firebase and other mobile back-end services.
- Familiarity with Agile/Scrum methodologies and working in a remote team.