This role is responsible for C/C++ software development and Python, Shell scripting with extensive work in designing and building high-quality, high-performance embedded applications. You will be assigned to research, design, develop, and test embedded software solutions for our company line of products.
The successful candidate will be a responsible, motivated, self-started professional who is able to work alone as well as in a team environment.
· Research, design and develop functional and performance enhancements for existing products and develop new software products and tools.
· Design and develop applications in C/C++ and Python on a Linux platform
· Analyze and code complex modules, define data structures, and specify test tools
· Solve problems and create solutions for embedded systems
· Troubleshoot, isolate, and resolve issues in complex systems and components
· Communicate effectively (written and verbal) with management, systems engineers and other software developers on ideas and solutions
· Successfully complete multiple simultaneous tasks in an environment with rapidly changing priorities
· Actively participate in a small, experienced, energetic team on a rapid, agile development schedule
· Write and maintain lower level device drivers and various hardware interfaces, in addition to higher level I/O subsystems in C/C++
· Design, develop and support desktop, server, and embedded software for various products
· Take ownership of projects and lead team members
· Plan, document and execute software testing activities
· Design and implement embedded software in line with best practices
· Perform rapid-prototyping to support functional requirement development
· Perform Deep dive analysis improving hardware, software interfaces
· Test and validate new software features within our products and solutions and/or on the test bench