Software Engineering

  • San Diego, CA
  • Posted 1 day ago | Updated 4 hours ago

Overview

On Site
BASED ON EXPERIENCE
Full Time
Contract - W2
Contract - Independent
Contract - 11+ mo(s)

Skills

Software Engineering
Computer Science
Electrical Engineering
Device Drivers
Data Structure
Algorithms
GNU
GDB
Git
Management
ARM
Embedded Software
Mobile Devices
Communication
Teamwork
Linux Kernel
Android Development
Performance Analysis
Testing
Use Cases
Debugging
Virtual Machines
Software Design
Collaboration
Tier 1
SAFE
Android
FOCUS
Linux
C
C++
Real-time
Operating Systems
Embedded Systems
Computer Hardware
PCB
Multimedia

Job Details

Position Title: Software Engineer

Location: San Diego, CA

Duration: 6 Months

Basic Qualifications:

  • Bachelor's degree in Computer Science, Electrical Engineering, or a related field.

Required Skills:

  • Strong skills in software design, development, and programming in C/C++
  • Proficiency in Linux debug and tracing tools
  • Linux Kernel, device drivers, and IOMMU
  • Experience with Yocto and debugging tools
  • Experience with the Android Platform/Framework
  • Good with ARM SoCs with Linux/Android
  • Excellent C/C++ programming skills and understanding of data structures and algorithms
  • Knowledge of OS fundamentals, Linux kernel, and device driver model
  • Experience with debugging tools like GNU tools, T32, gdb, and crash analysis
  • Yocto development experience
  • Hands-on development with boot loaders
  • Experience using git for development; patch/tree management
  • Experience with ARM processors and embedded software development on mobile devices or automotive platforms
  • Excellent communication, interpersonal, and teamwork skills
  • Motivated to explore and find innovative solutions to challenges

Role and responsibilities:

  • Develop and support various features in Safe Linux kernel and Android Platform
  • Design optimized and improved performance systems for Automotive grade ADAS and IVI multimedia drivers and applications
  • Work with power and performance analysis teams to identify performance bottlenecks and implement optimizations
  • Engage in software design and development, debugging, and testing of Linux software
  • Enable new end-to-end use cases for Automotive ADAS/IVI systems
  • Debug and fix complex problems involving multiple modules from Safe Linux and different virtual machine frameworks and containers
  • Understand industry standards for open sources

Job description:

This position offers hands-on system embedded Safe Linux software design and development to bring the next generation of Snapdragon products in Automotive ADAS and Infotainment. The engineer will collaborate with multiple technology teams, Tier1s, OEMs, and industry partners. This role involves working on the next generation of embedded automotive software for Safe Linux-based automotive solutions, with opportunities across the software stack including application boot loaders, kernel, and user spaces such as Android and real-time Linux. The engineer will focus on optimizing and improving system performance, understanding core Linux design principles, and designing with safety and security to meet automotive requirements. The engineer will work closely with cross-functional teams across multiple locations to define and implement complete solutions. Work assignments require theoretical and practical knowledge in C/C++ programming and real-time operating systems, along with power and performance expertise on embedded systems. Familiarity with embedded system hardware and board design is also required. Experience with multimedia, vehicle networks, or external module peripherals is welcome.

APOLIS2024

Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.

About Apolis