Embedded Software Engineer

Emagine 

📍 Warsaw, Poland 🇵🇱

contract
mid-level
remote
Expired
Posted —
This job posting has expired View All Embedded Software Engineer Jobs

Key Skills

UnityC++AndroidVulkanJNI

Industry

AutomotiveConsumer Electronics

Job Description

PROJECT INFORMATION:

Industry: Automotive

Start: ASAP (max 1 month notice).

Rate: depending on experience.

Contract: B2B 2 months + possible prolongations in future.

Remote: 100%

Location: remote

Project language: English.

Business trips: none

Recruitment process: 1 interview - 45min.

Summary: The Embedded Software Engineer role focuses on transforming the Unity-based instrument cluster application into a standalone Unity app that can be ported to Android. The primary goal is to achieve decoupling for enhanced performance and adaptability within automotive systems.

Core Responsibilities:

  • Decouple the Client’s scene from the main Unity application.
  • Isolate and extract assets and scripts for migration into a new Unity project.
  • Implement data reception from a C++ backend on Linux and Android interfaces.
  • Create standalone deployment settings for both Linux and Android platforms.
  • Adapt the Unity application for optimal Android performance and compliance with system requirements.
  • Conduct testing and validation to ensure performance and quality on target devices.

Key Requirements:

  • Experience with Unity development.
  • Strong understanding of C++ for backend integration.
  • Proficiency in Android development and JNI.
  • Experience with graphics APIs, particularly Vulkan.
  • Knowledge in data synchronization and thread management in Unity.

Nice to Have:

  • Experience with automotive or embedded systems.
  • Familiarity with AIDL and shared memory concepts.
  • Various strategies for performance optimization in real-time applications.
  • Background in UI/UX relevant to embedded environments.

Other Details:

  • Team Structure: Part of a larger development team focusing on automotive applications.
  • Tools/Methodologies: Unity, C++, Android SDK, Vulkan.