- Play a key role in requirements analysis, architecture and design of software. Typical application domains could range from application development for modeling and simulation, imaging systems, sensors data analysis to software control and graphical interface for hardware systems such as sensors
- Responsible for development of rapid proof-of-concept prototype software for demonstration at early stages of the project. Enhance the proof-of-concept prototypes to production quality code as the product matures.
- Responsible for following the agile development methodology for software development, testing, traceability to requirements and ensuring software quality.
- Bachelor's Degree and equivalent experience required. Master's Degree preferred in Computer Science, Computer Engineering, Electrical Engineering, Physics, or a related field.
- Experience in software development using tools such as databases, Qt, Visual Studio, debuggers, databases on Linux and Windows platforms
- Experience with development tools including Eclipse and version control systems
- Experience in design, development and unit/system level testing for application software based on libraries such as Worldwind, OpenCV, R, CUDA, BOOST, GIS or similar packages.
- Expert level skills in C, C++, Java, Perl, and Python programming and Linux operating systems
- Must have experience in technical writing to produce software documentation
- Excellent communication skills – verbal and written
- Ability to learn and work in a wide range of application domains including but not limited to image processing, modeling/simulation and visualization; data-analysis and networking will be a plus.
- Familiarity with software testing, quality assurance and software release procedure is a plus
Valid Through: 2019-10-18