Android Developer
  • Kyyba
3 Days Ago
NA
C2C
Kanata-Ontario
5-13 Years
Required Skills: Kotlin, Jenkins, GitHub, ASPICE, FMEA, HMI, GUI, UX
Job Description
Skills Required:
Kotlin, Test Unit Testing
1. Test Unit Test - I will be looking for candidates who can go beyond code coverage and can articulate effective unit testing practices and takes a test driven development approach
2. Kotlin - I will be looking for candidates who are familiar with the JetPack libraries and coroutines. Further, I will be looking for candidates who have experience with the following (does not have to be using Kotlin):
a. Dependency injection, Android services, Android build systems, databases (especially the Room database)
b. An intermediate to advanced level of software engineering skills: the ability to work in complex architectures / app ecosystems, familiarity with profiling and performance optimization, static code analysis, Android debug tools, crash analysis, and an understanding of design patterns and UML.
c. They will need to have worked in an environment where they had to work with designers, testers, and engineers from other teams to collaborate on solutions.
Experience Required:
* Bachelor's or foreign equivalent degree in software engineering, computer science, or a related field
* 5 or more years of experience with a mix of HMI/GUI/UX and Middleware software development
* Proficiency using multiple programming languages, including at least three years with Kotlin
* Involved with a small feature or component over more over multiple releases
* Development in a complex application ecosystem, such as: client and multiple servers, displays on multiple screens, databases, thread synchronization, networking, etc.
* Working with visual designs and functional requirements, defining software architecture, developing, testing, shipping, and supporting applications with postmortem, crash, and stability analysis
* Working with software design patterns and using Software Engineering practices: - Validating code with unit-testing and mock frameworks (e.g., Mockito, MockK, or Robolectric) - Static and dynamic code analysis tools (e.g., SonarQube, Klocwork, Valgrind, or equivalent) - Profiling and performance optimization - Experience with Android debug tools (using ADB, logcat, doing ANR trace analysis, bug reports) - Process of using code revision tooling (such as Git) for creating pull requests and contributing to code inspections made by others
* Demonstrated experience with: - JetPack Compose - Kotlin Coroutines and Kotlin Flow - SQL Database (such as RoomDB) - Android build systems (such as Gradle, Soong) - Android services (e.g., Bound Services, Foreground Services, Job Intent Service), AIDL, local binders, and messengers - Dagger, Hilt, or similar dependency injection libraries
* Understanding of when it is appropriate and effective to use LLM/AI tools to improve productivity and quality
* Work on proof of concepts and implementation for next generation digital cockpit and infotainment system experiences
* Be an active participant in great community of software developers, test engineers, designers, technical artists, technical product managers, and leads to champion best-in-class quality and functionality throughout the full life cycle of product development
* Deliver great code for graphical user-interfaces, middleware, and services, Order Reopened Customer needs to see new profiles.

Jobseeker

Looking For Job?
Search Jobs

Recruiter

Are You Recruiting?
Search Candidates