Embedded Software Engineer
Kavalirio
Job Summary
The Embedded Software Engineer will work closely with a team of senior engineers, designing and releasing software and hardware for single board computers, environmental control and measurement, and LED sign message control. The role involves all aspects of product and system design, firmware and control software development, product release, and post-release support. The engineer will write complete code, become the owner of specific code bases, design software features, write technical specifications, troubleshoot and debug existing products, research networking protocols, and assist with functional specifications. They will also validate products against standards documents and support production and customer service. They will create test documentation/procedures and test/validation programs. They will use lab equipment to troubleshoot.
Must Have
- 5+ years of C and C++ in an Embedded environment
- Software development experience in Linux & hardware environments (C++)
- Embedded systems, microprocessors (ARM, PIC, STM), memory (SRAM, DDR), I/O
- 5+ years of C++ in Linux and hardware environments
- 5+ years of Networking protocols
- Design software features to meet product requirements
- Troubleshooting skills using lab equipment such as logic analyzers and meters
- Write technical specifications and assist with functional specifications
Good to Have
- CPLD and FPGA processing understanding / exposure
Job Description
Kavaliro has partnered with a client who is seeking a C/C++ Embedded Software Engineer with Linux & Hardware Interface experience for an exciting direct hire opportunity.
DUTIES:
- Candidate will be working closely with a team of senior engineers designing and releasing both the software and hardware for items such as single board computers, environmental control and measurement, and LED sign message control. The successful candidate will be involved in all aspects of product and system design to firmware and control software development to product release and post-release support.
- #1 Importance: Write complete code utilizing a project concept analysis, design review, development, peer review, test and release process
- Become the designated owner of specific code bases.
- Design software features to meet product requirements
- Write technical specifications and assist with functional specifications
- Troubleshoot and debug existing products and perform new development
- Research networking protocols and practices, development techniques, quality improvement methods, and share your knowledge with the team
- Validating products against standards documents
- Working with and support production and customer service
Creating test documentation/procedures and test/validation programs - Troubleshooting skills using lab equipment such as logic analyzers and meters
REQUIREMENTS:
- 5+ years of experience and knowledge of: C and C++ in an Embedded environment
- Software development experience in Linux & hardware environments (We are developing with Linux / C++)
- Embedded systems, microprocessors (ARM,PIC,STM), memory (SRAM, DDR), I/O
- 5+ years of C++ in Linux and hardware environments
- 5+ years of Networking protocols, etc.
- Design software features to meet product requirements
- CPLD and FPGA processing understanding / exposure.
- Able to program, troubleshoot and fix at the IC level
- Troubleshooting skills using lab equipment such as logic analyzers and meters
- Write technical specifications and assist with functional specifications as well as creation of test documentation, procedures and validation.