Essential Responsibilities of a Senior Software Engineer:
- Working knowledge of software development tools (debugger's, compilers, etc).
- Ability to read schematics and debug analog and digital hardware.
- Able to use oscilloscope and logic analyzer for troubleshooting.
- Working knowledge of software development processes.
- Working knowledge of embedded operating systems.
- Analyze customer and internal requirements and specifications and translates these into software designs.
- Analyze existing embedded software to add features, make modifications, fix bus, and/or port to different platforms.
- Tests software designs and code at the unit and system level to insure that all requirements are met and the highest software quality is achieved.
- Participates in internal and customer driven design reviews throughout program.
- Coordinates software development activities with software team leader.
- Identifies product requirement or performance issues. Works with software team leader to negotiate resolution.
- Communicate with peers inside the HARMAN group to coordinate software development. This includes occasional travel for training or coordination with other groups.
- Manages small projects and technical resources, including planning, estimating and follow through.
- Manages large projects and technical resources, including planning, estimating, and developing requirements in compliance with the established software development process.
- Works with the customer to further define requirements and to resolve issues.
- 4-6+ years of embedded software development or testing.
- 5+ years of C/C++ or other structured language.
- Experience developing and debugging software in a real-time, embedded, multiprocessor, multi-interface environment.
Preferred Qualifications:
- Experience developing AM\FM\HD radio\DAB\XM or similar software components
- Experience with Master's degree in Electrical Engineering, Computer Science or equivalent QNX, Linux, or Android experience for development on Infotainment, Audio or Multimedia products.
- Vehicle networking experience including CAN, LIN, MOST, etc.
- Working knowledge of physical communication buses including: I2C, RS232, SPI or other serial interfaces.
- Strong attention to detail.
- Mastery of Object oriented design.
- Exemplary verbal and written communication skills.
- Creative problem-solver capable of creating and reproducing complex software defects.
- Capable project management and time management skills.
- API design experience
- HMI development experience
C/c++ Oscilloscope Debugging Logic Analyzer Time Management Rs232 Spi