The candidate will design and program real-time embedded systems in C/C++ for machine vision and control applications. The candidate should be familiar with the entire software development process including requirements analysis, design, implementation, integration and test. Familiarity with structured analysis and design as well as object-oriented analysis and design is required. The candidate must be able to operate independently with minimal supervision in a fast-paced, dynamic, highly technical environment and work on multiple concurrent, cross-functional projects. A successful candidate must be highly self-motivated and have a fundamental understanding of real-time embedded systems that include microcontroller and embedded systems software development tools and methodologies.
- 1-5 yrs real-time & embedded software engineering experience
- Extensive experience programming in C and C++
- Familiarity with scripting languages for data processing and test automation (e.g. Perl, Python, Ruby, Bash).
- Demonstrated knowledge of electronic hardware, real-time computing platforms including single board computers and microcontrollers, oscilloscopes, logic analyzers, etc.
- Experience developing on both Windows and Linux platforms
- Knowledge of network protocols and experience with socket programming
- Experience developing multi-threaded applications
- Knowledge of common communication protocols such as, CAN, RS-232, SPI, I2C, etc.
- Experience using version control systems such as Subversion or Git
- Ability to identify and analyze problems in a systematic and timely manner, drawing correct and realistic conclusions based on data and information, and accurately assessing the root cause before moving to a solution
- Ability to balance multiple projects and communicate project status, issues and requirements efficiently
- Demonstrated self-starter – proactive in determining goals and objectives and pursuing the necessary course of action. Takes the initiative to learn the systems, software and job duties
B.S. or MS in Electrical Engineering, Computer Engineering, Computer Science or relevant major