Embedded Linux Engineer/Programmer
Location : Chicago, IL
Job Type : Temp/Contract
Hours : Full Time
Travel : No
Relocation : No
Job Description :
Key Job Functions:
- Responsible for the development of embedded software/firmware for Linux Kernel/OS, drivers, libraries & Applications using C/C++, & Java on ARM/x86 processors.
- Develop Linux software (Application, Libraries, HAL) based on requirements and design documentation for the product being developed.
- Develop and execute unit testing of developed software firmware, based on design, running on custom developed hardware.
- Develop and deploy software (low/high level) on real time operating systems for hardware-based products.
- Participate in code reviews and specification conformance testing as defined by the selected software development methodology.
- Ability to perform tasks based on targeted schedules.
- Ability to perform within a team environment as needed to meet team goals.
- Ability to communicate in a clear and concise manner, whether verbally or in writing.
- Compliance to all software development processes as defined by ISO/AS9100 standards and customer standards.
Required Qualifications :
- C/C++ and Java applications and drivers for embedded embedded Linux.
- Knowledge of build environment on Linux systems.
- Knowledge of C/C++, Java, Database, embedded development tools for Linux.
- Knowledge or pre-emptive multitasking environments and CPU configurations, boot loaders, debuggers, and memory management in an embedded space.
- Hands-on experience with compilers, JTAG debuggers, emulators and board bring-up.
- Experience with SQL, schema and DB
- Knowledge of ARM & x86 processor architectures
- Familiarity with audio/video processing in Linux
- Experience embedded software development with peripherals such as ADC, DAC, UART, Flash, & EEPROM’s.
- Ethernet, RS-485, USB, SPI, and I2C interface/communications
- Familiar with ISO and AS9100 standards and DO-178B processes is a plus.