Overview
Skills
Job Details
Job Title: Senior Android Developer
Location: Remote Opportunity
Job Description:
Seeking a Senior Android Developer with 15+ years of native mobile engineering experience, specializing in building scalable, high-performance mobile applications on Android platforms.
Required Skills: 8+ years of hands-on experience in Android development
7+ years experience with leading development teams
Proficiency in Kotlin for Android development
Deep understanding of mobile architecture, design patterns, and best practices.
Expertise in building large-scale, complex applications and designing testable software architectures.
Strong experience with Android SDK, Android Studio, and Google s Android design principles.
Experience with Android Jetpack components like Navigation, LiveData, ViewModel, and WorkManager.
Experience working with remote data sources via REST APIs and handling JSON data.
Strong background in TDD, unit testing, and UI testing.
Ability to handle multithreading and memory management efficiently.
Expertise in error handling and caching strategies.
Experience in optimizing apps through memory profiling and performance tuning.
Familiarity with Git, SourceTree, and CI/CD tools like Jenkins.
Experience integrating third-party libraries and APIs.
Key Responsibilities:
Design & Development: Build and maintain Android and iOS applications using Kotlin, with a focus on best practices and high-performance architecture.
Mobile Engineering Expertise: Leverage 12+ years of experience in native mobile engineering to deliver robust, scalable solutions for Android.
Architectural Patterns: Implement CLEAN architecture, SOLID principles, and other best practices to ensure modular, scalable, and maintainable codebases.
SDK Expertise: Utilize your experience with the Android SDK, Android Studio, and Google Android design principles.
Jetpack Components: Leverage Android Jetpack components for application lifecycle management, navigation, and data handling.
Proficiency in Mobile Frameworks: Utilize a wide range of mobile frameworks and libraries to efficiently develop features and improve application performance.
Complex Application Development: Lead the development of large-scale, complex applications, ensuring they are robust, testable, and maintainable.
Data Persistence: Utilize Room and DataStore for Android data storage, and iOS equivalents where applicable.
Testing & Quality Assurance: Apply Test-Driven Development (TDD) practices with a focus on unit testing, UI testing, and building testable software architectures.
Multi-Device Compatibility: Ensure applications support both phones and tablets in portrait and landscape orientations across iOS and Android platforms.
Multithreading & Memory Management: Efficiently manage background tasks and memory usage through appropriate multithreading techniques and memory profiling tools.
Error Handling & Caching: Implement robust error-handling mechanisms and caching strategies using built-in Android libraries, third-party tools, and iOS frameworks.
Networking: Integrate with RESTful APIs, and process JSON and XML data formats, ensuring smooth data communication across both platforms.