Senior Embedded Linux Engineer

Full Time Raleigh NC Analog Devices, Inc.

Location: Ideally Raleigh or Greensboro, NC can also sit in ANY location with an ADI office (Boston MA, Cambridge MA, Chelmsford MA, Norwood MA, Austin TX, Milpitas CA, San Jose CA, Santa Clara CA)

Insight Globals client is seeking an experienced and versatile embedded software engineer to join their wireless radio group specifically within their Transceiver Team. Come be part of this global team of software engineers and work in a dynamic environment on state-of-the-art real-time embedded software technology for ORAN O-RU reference designs! Here you will participate in the innovation of wireless products and solutions. As a critical member of the team, you will participate and add value in all phases of product maintenance and support, actively participating in feasibility, requirement, architecture, design, implementation, integration, and verifications. You will be positioned within a multi-site development team and will be working closely with system, analog, digital, verification, and customer application teams.

Primary Responsibilities:

Generation of embedded Linux image and file system

Linux device tree maintenance for the embedded system

Linux Kernel driver development /support

Linux boot up/down scripts for the embedded system

Become knowledgeable & develop competence in RF system design.

Deliver high quality code as software is used internally by customers in end application systems

Strong working knowledge of a software development process (e.g. Agile, Waterfall)

Demonstrated knowledge of a scripting language (Python, bash)

Demonstrated knowledge of RF systems

Demonstrated knowledge of digital signal processing (DSP) and algorithm development experience. [Examples include Digital Filters, Digital Mixers, Frequency/Waveform Synthesis, Adaptive Signal Processing]

Demonstrated knowledge of 3GPP standards
8 years of experience developing software in embedded multi-threaded environment.

Experience building embedded ARM Linux distributions with File System constraints and RAM constraints. (Yocto, Linaro, or similar)

Comfortable editing the Linux device tree

Understand/experience with embedded Linux boot process (first/second stage boot loaders, run levels)

Experience with Linux kernel /user space drivers and how to map hardware interrupts into user space software.

Understand Linux SW conventions (standard locations of binaries, libraries, includes, and how to install custom software into these locations)

Understand Linux users, groups, permissions, and security measures to properly secure an embedded Linux device. (certificates, ssh tunnels, etc)

Strong C/C++ programming skills

Experience with embedded platforms & embedded software development paradigms

Experience with embedded real-time operating systems

Experience with data structures and object-oriented programming

Hands on experience integrating, building, and testing of multi-thread based applications

To apply for this job please visit