Senior Embedded Software Engineer

Overview

On Site
Hybrid
Full Time

Skills

Embedded software
C++
Object-Oriented Programming
SOA
Cross-functional team
Integration testing
IT management
Technical drafting
Quality assurance
Computer science
Electrical engineering
Device drivers
Linux kernel
Technical writing
continuous integration and development
Systems design
Verilog
Data link layer
H.264/MPEG-4 AVC
Embedded Linux
Level design
Leadership
Computer hardware
Testing
Embedded systems
Cloud computing
Management
Design
Debugging
Linux
Android
Media
Interfaces
Mentorship
Software development
Specification
FOCUS
Regulatory Compliance
Agile
C
Python
Bash
Scripting
System on a chip
Data
USB
PCI Express
Instrumentation
Oscilloscope
Computer networking
IP
Sockets
Ethernet
Collaboration
Communication
Documentation
FPGA
Optimization
RTOS
POSIX
Video
OpenGL
MIPI
CSI
Schematics
Scrum
Workflow
Confluence
Git
JIRA
Jenkins

Job Details

Job Description

The ideal candidate will take a lead in the creation of embedded software and hardware that is deployed in various IVI test systems and development tools. These development systems & tools are distributed globally to engineering teams across Ford and our development partners. Projects vary from year to year. Current projects will be utilized in the ongoing development & testing of the next generation SYNC Infotainment system, embedded modem, vehicle cloud connectivity, mobile app development & integration testing, as well as multiple additional In-Vehicle Infotainment development projects.

  • embedded hardware and software platforms; that are used by production development engineers to support In-Vehicle Infotainment (IVI) hardware and software feature development and validation efforts.
  • Provide technical leadership to an experienced engineering team, interface with customers, technical management, and cross-disciplinary engineers to resolve technical issues.
  • Provide technical expertise to management on system level solutions that overcome engineering challenges, while optimally balancing cost, schedule, and technical design integrity.
  • Partner with our engineering teams to lead design, development, debugging and testing of platform software for complex Linux/Android based systems that combine media processing and high-speed interfaces.
  • Mentor and train junior Systems Engineers in generating key deliverables to further quality and cost deliverables.
  • Provide day to day leadership/participation in code reviews, ensuring alignment to coding standards, ensuring software quality requirement, contribute to gathering user requirements and creating functional specifications, troubleshoot and debug defects as reported by users.
  • Demonstrate a strong focus to establishment and compliance of agile development practices.


Minimum Requirements :
  • Bachelor's degree in computer science, electrical engineering, or related field with 5+ years of relevant industry experience.
  • 5+ years of experience with embedded software design and developing production software in C/C++/Python and bash scripting.
  • 5+ years hands on development experience with practical experience and knowledge of 8-32-bit embedded SoC/ processor architecture is essential.
  • 5+ years of experience with and strong knowledge of C/C++/Object oriented programming languages is essential (e.g. data types, memory management, peripheral device drivers, conditional statements, pointers, structures, etc.).
  • 3+ years of Linux kernel device driver development for block or character drivers is required (USB/PCIe etc. is a big plus).
  • 3+ years of experience debugging HW using standard lab instrumentation such as oscilloscopes, logic/protocol analyzers, signal generators.
  • 3+ years of experience in networking particularly in Service Oriented Architecture, SOME/IP, socket adaptor and Ethernet.
  • Strong collaboration and communication skills is essential to work in a cross functional team of engineers (embedded/Hardware/Model based Development).
  • Experience with technical writing, authoring formal engineering documentation, architecture diagrams, test procedures, reports.
  • Ability to work closely and collaborate with continuous integration teams for resolve issues/dependencies and deliver software releases.
  • Exposure to FPGA system design/development using Verilog HDL for integration, synthesis and optimization of existing designs is required.

Preferred Requirements:
  • Master's degree in computer science, electrical engineering, or related field with 8+ years of relevant industry experience.
  • Experience with RTOS/Linux kernel development, POSIX systems, Linux device drivers and device trees and embedded build system (buildroot/yocto).
  • Experience working with video capture APIs/frameworks such as V4L2, eglStream OpenGL etc.
  • Familiarity with video interface standards & encoding protocols such as Display port, MIPI-CSI, H.264/H.265 etc.
  • Strong debugging/trouble-shooting skills of Embedded Linux systems.
  • Experience reading electrical schematics and device part data sheets.
  • Experience with unit level and system level design and development.
  • Experience with Agile Scrum development methodologies with common workflow tools (e.g. Confluence, git, JIRA, Jenkins).


$desc3

About Ford Motor Company