Embedded Linux Software Engineer
Futurex · Bulverde, TX · 1 mo ago
On-siteEngineeringFull-time
Primary Responsibilities
- Design software and systems based on defined requirements for existing and new embedded systems
- Code, test, and troubleshoot operating system components for embedded systems
- Confer with software and hardware team members to develop, understand, and update requirements for product features
- Write and maintain programming documentation on subjects including code, API functionality, and software issue creation/resolution
- Maintain confidentiality with regard to information being processed, stored, or accessed
Requirements
- Strong interest in embedded Linux, embedded hardware, and software
- Software development experience in C
- Comfortable on a Linux command line interface
- Experience with basic FLOSS development tools (gcc, binutils, strace, valgrind, etc.)
- Bachelor's degree or higher in computer science, engineering, or similar field
- In depth knowledge of embedded Linux systems, Linux driver development, or kernel debugging
- Motivated, self-starting, and eager to learn
Qualifications
- Strongly prefer experience building an embedded Linux environment from scratch (buildroot, Yocto, or OpenWRT, etc.)
- Experience with initial bring up of a board with a Linux environment
- Experience with using toolchains including for cross compiling for diverse architectures (ARM, PowerPC, x86_64, or aarch64)
- Comfortable reading assembly (ARM, PowerPC, x86_64, or aarch64)
- Experience debugging and integrating hardware components with the Linux operating system
- Experience with scripting (Bash, POSIX shell)
- Experience with version control software (git)
- Experience with hardware interfaces such as I2C, SPI, and GPIO
- Strong knowledge of Linux kernel stack and subsystems