Embedded Software Engineer
NR Consulting LLC
Cleveland, OH
Apply
JOB DETAILS
SALARY
$100,000–$140,000 Per Year
LOCATION
Cleveland, OH
POSTED
30+ days ago
Location: Cleveland, OH
Duration: Full Time Role
Job Summary
- We are seeking a high-energy Embedded Software Engineer to join our team.
- In this critical role you will have the opportunity to develop, integrate, test, and maintaining embedded software in our X-PAQ screwdriver controller.
Responsibilities
- Has a basic understanding of our company’s products, operations and procedures. Seeks assistance, as necessary with unfamiliar situations.
- Communicates effectively with co-workers; and performs assignments in a timely and efficient manner while meeting customer quality and service expectations.
- Design, develop, code, test, and debug system software.
- Analyze and enhance the efficiency, stability and scalability of system resources.
- Effectively abstract hardware, I/O and function using clean, efficient, reliable, well documented and reusable code while mastering real-time aspects of the solutions.
- Able to create own software requirement specs, design documents, unitary tests, test plans, integration plans and associated code.
- Provide feedback to the electrical engineers about interfaces usage scenarios up to component selection.
- Able to adapt to new environments and make the best use of the resources available.
- Software development primarily using the 32 bit ARM platform or similar. Development in the AM335x series is beneficial.
- Developing new embedded applications defined by written and verbal requirements.
- Interpreting existing written requirements and implementing them in code.
- Creating development plans, specifications, and timelines for new projects.
- Provide well documented and tested solutions.
- Developing high level software which interfaces with low level firmware.
- Keeps the supervisor aware in a timely manner of any issues needing the supervisor’s involvement.
- Maintains timely and accurate records and reports, as required.
- Observe good housekeeping and safety habits.
Requirements
- Bachelor’s degree or higher in a relevant technical discipline. Has the necessary training to be proficient in the position.
- Minimum of 5 years of hands-on software design and development experience.
- C, C++, Bash, JavaScript/HTML/CSS programming languages.
- System administration skills including understanding of networking protocols and programming stack for Linux and Linux permissions model
- Knowledge of basic security principles.
- Experience with Linux kernel configuration: Hardware specification using the device tree, and or/ Kernel build options.
- Experience with Linux Kernel / filesystem build tools: Yocto/Bitbake.
- Experience with U-boot bootloader.
- Experience with Linux driver development.
- Experience with SQLite database or similar.
- Qt experience beneficial.
- Proficiency with Git version control system.
- Has excellent communications and interpersonal skills to be able to interact effectively with internal and external customers.
- Has basic analytical and problem-solving abilities to meet the requirements of the position.
- Effective time management skills in prioritizing and addressing multiple and at times conflicting demands.
- High energy with a sense of urgency in responding to customer needs.
- High level of personal and professional integrity.
- Is committed to the company’s values.
- Attention to detail in maintaining required records and reports.
Benefits
- Competitive compensation
- Comprehensive insurance benefits package (including medical, dental and vision coverage as well as company paid life insurance and disability)
- Tuition reimbursement
- Fun staff events and activities
- 401k plan with profit sharing
- Paid vacation time starting at 13 days
- 11 paid holidays
About the Company
N