Job Code | #215
Principal Embedded DSP Firmware Engineer
Córdoba city, Córdoba, Argentina (The role is remote eligible within Argentina)
Do you enjoy working in a creative fast-growing entrepreneurial environment? With indie you´ll never walk alone! We place high value on our teams and pursue excellence for our employees and customers!
indie is an Autotech solutions innovator. We focus on edge sensors spanning multiple modalities including LiDAR, radar, ultrasound and vision for Advanced Driver Assistance Systems (ADAS), autonomous vehicles, connected car, user experience and electrification applications.
Our design team develops custom and standard SoC solutions for automotive applications which integrate advanced digital ICs (Arm® Cortex® MCUs and/or DSP) with mixed-signal devices into a single System-in-Package (SiP). The mixed signal can include power management, RF, high voltage as well as high speed converters allowing us to provide complete solutions to our international customer base.
You will join a small team of highly competent engineers involved in the design, implementation and verification of firmware for embedded systems targeting automotive driver assistance system (ADAS) applications. You will architect, design, implement and support firmware modules and sample applications. You will also support the hardware SOC design team’s pre-silicon verification and application engineering group’s customer-facing demonstration platforms. This is an excellent opportunity for a talented and motivated firmware developer to join a growing team of engineers who strive to solve automotive problems.
Writing hardware abstraction layer drivers for communication peripherals common in automotive systems, especially Ethernet, SPI, CAN and LIN.
Writing firmware for handling data and control traffic over UDP, TCP and PTP protocols commonly used in automotive Ethernet.
Implementing memory-efficient light-weight RTOS such as FreeRTOS on ARM Cortex M and R series processors.
Prototyping firmware systems in pre-silicon stages using FPGA or simulation platforms to have code ready for silicon bring up on day 1.
Perform integration of DSP firmware modules in SoC platforms
Implement IPC mechanisms between different processors
Familiarize with different DSP processors to efficiently implement algorithms based in architecture-specific intrinsic and/or compiler auto vectorization
Understand customer requirements and translate them into development specifications
Writing software documentation, and presenting it to peers and management cogently.
With us, you must love being part of an organization where everyone makes a difference and contributes to the company's success. Creativity, Ownership and Excellence are what we value.
These are the skills and know how an ideal candidate would bring. We understand that nobody is perfect! After all, your new job should challenge you and you should have the possibilities to grow.
B.S. in Electrical Engineering +7 or more years experience or Master’s degree +5 or more years of experience
Mastery of embedded concerns such as real-time budgeting, memory fragmentation, calling conventions, re-entrancy, boot-strapping, scatter-gather
Mastery of embedded C/C++ embedded programming
Knowledge of Test Driven Development (TDD) methodology
Prior experience with C-based device driver and RTOS on ARM Cortex M and R series MCUs.
Experience with DSP firmware development, including optimization for meeting time (cycle count) and/or memory budget goals
Experience with DSP firmware profiling
Experience with DSP modelling (either using MATLAB, Python, etc.)
Experience with fixed-point arithmetic development, either in firmware and/or hardware development
Experience with automated build tools (e.g. make, cmake)
Experience with scripting tools for automation of development, build, test and deploy workflows
Expert level understanding of version control, release management, continuous integration and unit testing.
Experience with industry standard debug/trace using Segger, Lauterbach or equivalent.
Familiarity with using lab equipment such as an oscilloscope and a logic analyzer during silicon bring up and debug.
Experience in from-scratch new product development.
Preferred experience with Tensilica DSP cores, although familiarity with other embedded SIMD DSP cores will be valued
Preferred experience in functional safety
Preferred experience in embedded networking such as lwip or equivalent.
Preferred experience with code quality standards such as MISRA C and AUTOSAR.
Preferred experience with GUI design implementation (e.g. PyQT)
Preferred experience with Docker or related container technologies
Experience with some of the following tools and technologies: FPGA, VHDL, Verilog, Python, MATLAB, digital signal processing modelling, schematic capture, PCB design, embedded assembly language, SIMD-intrinsic based code.
Human Resource Department