Responsibilities:
Oversee the entire development lifecycle of Android app projects, including resource management
Design and lead the development of applications, especially during critical phases
Ensure high quality, performance, responsiveness, and security of Android applications
Identify bottlenecks in processes and development tasks, review code, and fix bugs
Maintain code quality, implement automation, organize codebases, and apply upgrades when available
Manage both frontend and backend aspects of Android applications
Collaborate proactively within the project team, leveraging experience to guide the development lifecycle
Participate hands-on in planning, estimating, architecting, coding, and development
Conduct regular refactoring and continuous improvement of codebases
Prioritize software quality throughout the entire development process
Communicate technical decisions and information effectively across the global team
Take responsibility for releases and contribute to ongoing support of live apps
Consider how software fits into the broader picture and collaborate effectively with others
Apply Continuous Delivery practices to enhance product quality and delivery
Utilize a range of Agile practices, understanding their purposes and benefits
Embrace a DevOps culture, engaging beyond programming in deployment and operations
Build and lead highly productive teams of skilled engineers
Requirements:
Proven experience as a senior individual contributor or technical lead in a large-scale mobile engineering organization
Expert-level knowledge of Android development and the Android ecosystem
Proficiency in Java and Kotlin programming languages
Strong experience with Android Studio, Android SDK, and related development tools
Deep understanding of Android architecture components and Jetpack libraries
Expertise in developing and maintaining large-scale Android applications
Proficiency in RESTful APIs, JSON parsing, and networking in Android
Experience with dependency injection frameworks (e.g., Dagger, Hilt)
Strong knowledge of Android UI design principles, Material Design, and custom view development
Familiarity with reactive programming (e.g., RxJava, Kotlin Coroutines)
Experience with local data storage solutions (e.g., Room, SQLite)
Proficiency in unit testing and UI automation testing for Android
Knowledge of CI/CD practices and tools (e.g., Jenkins, GitLab CI)
Familiarity with version control systems, particularly Git
Understanding of Android security best practices and implementation
Experience with performance optimization and memory management in Android
Knowledge of Android app publishing process and Google Play Store guidelines
Technical Requirements:
Mastery of Android SDK, different Android versions, and handling various screen sizes
Proficiency in developing custom views and animations
Experience with background processing, multi-threading, and asynchronous programming in Android
Knowledge of Android's location and mapping capabilities
Familiarity with integrating third-party libraries and APIs
Experience with push notifications and Firebase Cloud Messaging
Understanding of Android's permissions model and runtime permissions
Proficiency in implementing offline storage and data synchronization
Experience with Android NDK and native code integration (C/C++)
Knowledge of Gradle build system and dependency management
Familiarity with Android architecture patterns (e.g., MVVM, Clean Architecture)
Experience with Bluetooth and other device sensors integration
Understanding of Android's battery optimization techniques
Familiarity with Android accessibility features and implementation
BS degree in Computer Science with 5+ years of broad engineering experience, including at least 2 years in similar senior engineering role
Offer:
Cafeteria
MyBenefit Platform
Private Medical Care
Life Insurance
Nursery care co-financing
Corrective glasses reimbursement
MultiSport
Permanent
Check similar offers