Android Middleware Developer
KeySkills
Company Name
Job Description
Job Description:
As a Software Engineer, you will be responsible for the development, optimization, and maintenance of advanced software systems, particularly focused on Android and embedded platforms. Your role spans problem-solving, system integration, CI/CD automation, and performance analysis. You will be part of a team that emphasizes innovation, ownership, and high-quality solutions in a fast-paced, agile environment.
Responsibilities:
-
Analyze and solve software engineering problems using scientific methods.
-
Take ownership of technical issues and drive to resolution.
-
Develop and maintain Android and embedded system components.
-
Implement and maintain CI/CD pipelines using Jenkins, GitLab, and Artifactory.
-
Perform performance analysis using Android Profiler, Traceview, Systrace, Perfetto.
-
Work with Android HALs, Car Framework, and DRM/graphics pipelines.
-
Collaborate with cross-functional teams, including QA, DevOps, and product stakeholders.
-
Develop using C/C++, Java, and Kotlin on Linux platforms.
-
Implement testing frameworks within CI systems.
-
Support Yocto build environments and integrate with CI.
-
Follow ASPICE and software engineering best practices.
-
Communicate complex concepts effectively to various stakeholders.
Required Skills:
-
Proficiency in Android architecture, memory management, and multithreading.
-
Strong problem-solving and troubleshooting abilities.
-
Experience with:
-
Android performance tools: Traceview, Perfetto, Systrace
-
Android HALs, Codecs, DRM
-
CI/CD tools: GitLab, Jenkins, Artifactory
-
Monitoring tools: Grafana, Prometheus, Elastic Search
-
Programming languages: C, C++, Java, Kotlin
-
Linux development and deployment
-
Git and version control systems
-
Agile methodologies
-
Yocto build system
-
-
Familiarity with ASPICE compliance.
-