#Senior/Staff Engineer - Linux Automotive (Linux & Kernel Platform Engineer)
Work assignments involve theoretical and practical knowledge in the areas of C/C++ programming and real-time operating systems, along with power and performance expertise on embedded systems. Leverages advanced Software knowledge and experience to design, develop, create, modify, and validate embedded and cloud edge software, applications, and/or specialized utility programs. Analyzes user needs, software requirements, and time and cost constraints to design and customize software for optimal operational efficiency. Designs and implements software modules for large-scale products and systems. Participates in and leads design, coding, unit testing, debugging, and integration efforts to ensure projects are completed to specifications and schedules. Performs complex code reviews and regression tests as well as triages and fixes issues to ensure the quality of code. Collaborates with individuals outside the software function (e.g., Hardware, Systems, and Test engineers) to ensure solutions work with other components of a specific project. Writes detailed technical documentation for complex Software projects. Works independently with minimal supervision. Provides supervision/guidance to other team members. Decision-making is significant in nature and affects work beyond the immediate work group. Requires verbal and written communication skills to convey information. May require basic negotiation, influence, tact, etc. Has a moderate amount of influence over key organizational decisions (e.g., is consulted by senior leadership to make key decisions). Tasks often require multiple steps which can be performed in various orders; extensive planning, problem-solving, and prioritization must occur to complete the tasks effectively. Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience. OR Master's degree in Engineering, Information Systems, Computer Science, or related field and 1+ year of Software Engineering or related work experience. OR PhD in Engineering, Information Systems, Computer Science, or related field. 2+ years of academic or work experience with Programming Language such as C, C++, Java, Python, etc. Experience with software development in Linux Kernel and/or userspace such as Yocto/Android/Ubuntu. Experience in Kernel drivers, Memory management, Hypervisor, Virtualization, OS and Hardware platform knowledge ARM processors and/or embedded software development on mobile devices or Automotive platforms Linux Automotive (Linux & Kernel Platform Engineer) 5+ Years professional work experience in embedded/automotive software and/or driver development on ARM SoCs on Linux/Android etc. 5+ years experience with Programming Language such as C, C++, Rust, Python, etc. Excellent communication, interpersonal, and teamwork skills Independent and motivated problem solver