Role: Android Developer:
Location:Bedminster, NJ
Job Description
- Bachelor’s degree in Computer Science, Software Engineering or related field.
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.
9+ 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