Description

Job Description
Bachelor's degree in Computer Science, Software Engineering or related field.
10+ years hands-on experience with Android SDK, framework and library components including a strong knowledge of different Android versions
Strong architectural knowledge and experience in framework-level development.
Minimum 5 years of experience in Kotlin or Java; familiarity with C/C++ and solid understanding of Android JNI and NDK concepts.
4+ years of proven experience in multithreading and OS layer optimization for framework, diagnostics interface and threads.
Custom library creation for high bandwidth data processing
Large data management on/off devices
4+ years of experience working with RESTful APIs to connect Android applications to back-end services.
Significant experience (5+ years) in offline storage, threading, and performance tuning.
Solid foundation in Object-Oriented design, SOLID principles and algorithm complexity (O-notation), data structures with at least 5 years of hands-on experience.
In-depth experience with Android system classes related to phone calls (VoLTE, VoWIFI, 1xCall), SMS, Messaging with other apps, Bluetooth, WIFI, IMS registration, with a minimum of 3 years of professional work.
Proficiency in utilizing the Linux/Unix environment for building Android applications
Experience in working with OEM manufacturers
Experience in domain-specific knowledge such as network protocols, IoT, RIL (Radio Interface Layer) and android telephony (LTE, CDMA, EvDO, WCDMA, GSM/EDGE, TCP/IP) is valuable but not mandatory.
Experience with cloud message APIs and push notifications is desirable.
Understanding of AOSP design principles and interface guidelines is preferred.
Proactive problem solver with strong analytical skills
Effective communicator with the ability to translate technical concepts to non- technical
Strong team player with the ability to provide technical details
Detail-oriented and committed to delivering high-quality software


Job Responsibilities
Lead the design, development, and maintenance of high-quality Android applications.
Architect and implement scalable and maintainable code structures.
Ensure adherence to coding standards, best practices, and software development
Utilize C++ libraries from Kotlin using Android NDK and JNI
Optimize the OS layer for performance, threading, and diagnostics interfaces.
Custom libraries creation to handle high bandwidth data processing on Android devices.
Develop solutions for managing large data on/off Android devices
Troubleshoot, debug, and resolve software defects
Stay updated with the latest Android trends, technologies, and development
Create and maintain technical documentation for code, designs, and product requirements
Participate in the deployment process and ensure smooth rollouts of new features and bug fixes.
Collaborate with DevOps teams for continuous integration and delivery with tools like JIRA, Jenkins, Bitbucket, Gitlab
Work closely with other app developers and engineers to ensure project success.
Exercise a high degree of autonomy and ownership
Research approaches to solve unfamiliar problems

Education

Bachelor's degree in Computer Science