SUMMARY: The Senior Embedded Software Engineer will work closely with the hardware development team and specify, develop, debug and validate a new embedded Linux-based system. Support legacy embedded Linux-based systems, provide direction to junior engineers and assist in testing as required.
DUTIES AND RESPONSIBILITIES:
· Evaluate embedded Linux software in C at both the kernel and application level.
· Perform the evaluation, specification and integration of Linux kernel, BSP, bootloader, drivers, etc.
· Initialize the Custom board bring-up process, debugging and s/w design validation.
· Maintain existing software platforms, root cause analysis, bug fixes and feature enhancement.
· Document of work product, concepts, and architecture for wide range of customers, products and applications.
· Lead code reviews and participate in bug scrub.
· Mentor of junior embedded software developers.
· Consult with other Engineers to evaluate hardware/software interfaces and optional performance requirements.
· Provide technical guidance to lower level programming personnel.
· Perform other related duties as assigned by management.
· Bachelor's Degree in Computer Science, Electronic Engineering, Electrical Engineering or equivalent and 8 years of experience in embedded systems development.
· 5 years of experience with embedded Linux.
· Experience with Eclipse, CCS, Static Analysis, Perforce, Git, Jenkins and other such development tools.
· Extensive knowledge of C/C++.
· Experience with Linux distributions, toolchains and open source projects, (i.e. Buildroot, Yocto, Ubuntu, etc.).
· Experience with a wide variety of drivers, back-porting techniques and other low-level issues
· Experience with board bring-up, and debugging techniques using a variety of tools & techniques.
· Experience with 2/4-wire Ethernet, USB, RS-232, RS-485, CAN, I2C, SPI, etc.
· Experience with Wi-Fi, Bluetooth, BLE, AT command-sets and NMEA message strings.
· Experience with Bash, Python, or other scripting languages.
· Strong written and verbal skills with the ability to present concepts clearly and concisely using programs such as Word, Excel (charts), and PowerPoint.
Other skills preferred:
· Experience with database design and SQL-lite.
· Experience with Secure Boot, High Assurance Boot, Key and Certificate Management.
· Experience with satellite communications, V2X or other wireless technologies.
· Experience with GPL terms and conditions.
· Knowledge of test and diagnostic equipment such as spectrum analyzers, oscilloscopes, etc.
· Familiarity with simple soldering and electrical diagnostics.
· Experience with RF, analog, digital circuits and logic systems.
· Ability to analyze and solve complex software engineering problems.
Job Type: Full-time
Pay: $0.00 per year
- 401(k) matching
- Dental insurance
- Disability insurance
- Employee assistance program
- Flexible schedule
- Health insurance
- Life insurance
- Paid time off
- Referral program
- Vision insurance
- Software Engineering: 8 years (Required)
Relocation Assistance Provided:
Visa Sponsorship Potentially Available:
- No: Not providing sponsorship for this job
This Company Describes Its Culture as:
- Outcome-oriented -- results-focused with strong performance culture
- Team-oriented -- cooperative and collaborative