Designs and develops software systems in conjunction with hardware product development, applying principles and techniques of computer science, engineering and mathematical analysis.
Requirements:
- Extensive experience with C/C++ development on Linux
- Experience developing kernel device drivers for Linux Operating System
- Experience developing multi-threaded applications
- Knowledge of Object Oriented Programming, Design Patterns, Separation Of Concerns and general software engineering best practices.
- Experience working with: Unix/Linux, Source Control tools and git, and bug tracking tools.
Desirable Skills and Experience:
- Excellent verbal and written communication skills.
- Experience in software development for embedded systems developing and using BSPs cross compiling, and debugging
- Experience with TCP/IP and network programming
- Experience with video formats and signaling
- Experience with video test equipment: Waveform monitors, signal generators, and oscilloscopes.
- Inter-process communication, and multi-processing applications.
- Experience with STL and STL extender libraries such as Qt.
Education and Experience:
- Typically requires an M.S. in Computer Science plus 4 years experience or B.S. in Computer Science plus 6 years experience.
This is a full-time position with competitive pay and benefits. The base salary for this position is $84,052-206,907. This range reflects base salary only, and does not include additional compensation or benefits. Individual base pay is determined by various factors such as relevant experience, education, training and skills, and the scope and responsibilities of the position.
Email resumes to: jobs@aja.com