Senior Embedded Linux Engineer
Job Description
Senior Embedded Linux Engineer
Reports to: Connectivity Software Team Lead
Can manage direct personnel: Not immediately
Can coordinate indirect personnel:Yes
Essential Duties and Responsibilities
- Act as maintainer for a product or a component
- Maintain architecture and design
- Select appropriate technologies and 3rd party libraries
- Review all code contributed by other developers
- Ensure that applicable code quality standards are met
- Ensure that documentation is maintained
- Ensure test that coverage is adequate
- Provide technical mentorship to other developers
- Review code written by other developers
Qualifications
- C++, C, Bash, Python, and assembly languages
- Yocto, Bitbake and cross build systems
- Knowledge of Linux platforms and development environments
- Knowledge of Linux system architecture
- Knowledge of common communication interfaces at a hardware integration level (SPI, I2C, I2S, UART, CAN, USB, Bluetooth, WiFi, etc)
- Linux Kernel programming and configuration (Device Tree)
- U-Boot programming and configuration (Device Tree)
- Knowledge of DBus Linux daemon (ModemManager)
General
- Ability to work cooperatively in a team environment
- Ability to work independently and assume new responsibilities
- Ability to learn new skills quickly and apply relevant domain knowledge
- Strong written and oral communication skills
- Good attitude and strong work ethic
- Writes modular, robust, and maintainable code
- Ability to develop and execute software test plans
- Proficient in applicable programming language(s)
- Proficient in applicable communication interfaces, algorithms, and software patterns
- Ability to work cooperatively or independently depending on the task at hand
- Working and integrating with electronic circuit designs
- Knowledge of common software structure and patterns
- Knowledge of common signal processing techniques
- Knowledge of common protocols like HTTP, REST, SSE, WebSockets, MQTT
Why Work at Appareo Systems?
Appareo is focused on dramatic growth and innovation. With that in mind, Appareo is committed to providing opportunities for individual growth and career satisfaction, and assisting employees to realize their potential by providing appropriate training and development opportunities.
Culture is Everything
Our culture is deeply rooted in our company purpose and core values. We love what we do and weβre passionate about it. Everyone at Appareo is helping to build a company that is meaningful and impactful. We are defining the direction of a rapidly growing business. We work hard, but we also have a little fun along the way
Appareo is proud to be an Equal Opportunity/Affirmative Action Employer, making decisions without regard to race, color, religion, creed, sex, sexual orientation, gender identity, marital status, national origin, age, veteran status, disability, or any other protected class.
Job Type: Full-time
Benefits:
- 401(k)
- 401(k) matching
- Dental insurance
- Employee assistance program
- Employee discount
- Flexible spending account
- Health insurance
- Health savings account
- Life insurance
- Paid time off
- Professional development assistance
- Referral program
- Retirement plan
- Vision insurance
Schedule:
- 8 hour shift
Supplemental pay types:
- Bonus opportunities
Education:
- Bachelor's (Required)
Experience:
- Yocto, Bitbake and cross build systems: 7 years (Required)
- SPI, I2C, I2S, UART, CAN, USB, Bluetooth, WiFi, etc: 5 years (Required)
- C++, C, Bash, Python, and assembly languages: 5 years (Required)
- U-Boot programming and configuration (Device Tree): 5 years (Required)
- Linux, DBus Linux (modemManager): 5 years (Required)
Work Location: In person
Benefits
- 401(k)
- 401(k) matching
- Dental insurance
- Employee assistance program
- Employee discount
- Flexible spending account
- Health insurance
- Health savings account
- Life insurance
- Paid time off
- Professional development assistance
- Referral program
- Retirement plan
- Vision insurance
- 8 hour shift
- Bonus opportunities
- Bachelor's (Required)
- Yocto
- Bitbake and cross build systems: 7 years (Required)
- SPI
- I2C
- I2S
- UART
- CAN
- USB
- Bluetooth
- WiFi
- etc: 5 years (Required)
- C++
- C
- Bash
- Python
- and assembly languages: 5 years (Required)
- U-Boot programming and configuration (Device Tree): 5 years (Required)
- Linux
- DBus Linux (modemManager): 5 years (Required)