Android Software Engineer (R&D56)
Descrizione dell'offerta
Overview
Join to apply for the Android Software Engineer (R&D56) role at Datalogic .
Working within the Mobile Computing R&D team, you will develop our next generation products based on the most recent Android smartphone platforms (Qualcomm and Mediatek), implementing the state-of-the-art consumer design into Enterprise products.
Key Responsibilities
- As Software Senior Engineer within the Mobile Computing Business Unit you will:
- Develop New Products
- Understand SOC documentations, schematics and hardware component datasheets to better tune the Android platform level software;
- Develop bootloaders, kernel drivers and the integration of the company specific application level components in the Android platform;
- Develop firmware for MCUs (Microcontroller Unit);
- Responsible for at least one subsystem in the Android platform, e.g. Camera, Wi-Fi…;
- Innovate by developing new features and new products exploiting the selected SOC platforms;
- Run competitive benchmarking and intellectual property analysis to help to surpass the competition.
Support Products Lifecycle
- Understand Android platform architecture internals and Android compatibility requirements;
- Apply the security fixes and address troubleshooting to pass the Android Google certification tests;
- Problem solving in addressing issues raised by users in the field;
- Review test results and root cause analysis; resolves highly complex technical issues.
- Contribute to maintaining and improving DevOps tools and processes and the CI/CD/CT pipeline.
Requirements
- Education: Master's Degree in Computer Engineering or Computer Science or Electronics
- Languages: Italian; English Fluent
- Experience: 3-5 years of experience in software development; Linux SW project experience is a must; Linux embedded project experience is a strong wish; Experience or interest in DevOps and CI/CD/CT is a strong wish.
Other Information & Specific Skills
Technical Skills
- Excellent programming skills and use of Git SCM
- Programming Languages (in order of importance): C, C++, LINUX bash shell, Java
- Linux is a must both at programming level and at user experience level
- Knowledge of operating system programming mechanisms (e.g., synchronization, shared memory, IPC, CPU performance governor, security models)
- Knowledge of Linux bootloaders, Linux kernel development
- Understanding electrical schematics is a strong wish
- Strong wish for Jenkins, Docker, Linux Kernel debugging
Soft Skills
- Problem-solving abilities
- Ability to work with a team
- Proactivity
- Project management skills
- Willing to travel worldwide, up to 10% depending on project needs
- Intercultural skills
Job details
- Seniority level: Mid-Senior level
- Employment type: Full-time
- Job function: Engineering and Information Technology
- Industries: Appliances, Electrical, and Electronics Manufacturing