« View All Jobs

Computer Vision Specialist

loub – Posted on June 7, 2017 at 11:28 am –


EDUCATION: Masters, or Doctorate degree in Computer Vision/Mathematics or related discipline
EXPERIENCE: One (1) year (minimum) – mathematical programming experience required
REPORTS TO: Software Engineering Associate Manager
SECURITY CLEARANCE: Must pass the Canadian Controlled Goods Program (“CGP”) Security Assessment Application and meet International Traffic in Arms Regulations (“ITAR”) requirements, if any.

REQUIRED SKILLS, ABILITIES AND EXPERIENCE
Participation in the Scrum Process
1. Work in a collaborative team setting with Systems Engineers and Software Engineers.
2. Regular attendance of Scrum process ceremonies, including iterative planning, standup meetings, demos, and retrospectives.
3. Provide estimates and suggestions to assist with planning tasks in iterations with respect to items related to subject matter expertise.
4. Work with the continual iterative and incremental development methodology of the team, so as to undertake and execute specific commitments on an iterative basis.
5. Determine deliverables and schedule on an iterative basis in collaboration with the team.

Structure from Motion Development Support
1. Work with the development team to enable immediate and continual feedback and communication between the Supplier and the development team.
2. Implement, modify, diagnose, or port relevant algorithms in C++ and CUDA
3. Program unit and integration tests for algorithms and mathematical implementations.
4. Execute other development tasks in support of the structure from motion system.
5. Pair program with developers to diagnose, understand, and remove impediments arising from the mathematical complexity of the system.
6. Provide and communicate insight into computer vision research and literature.
7. Contribute to continuous improvement efforts.

KEY RESPONSIBILITIES
1. Provide subject matter expertise to the Agile Scrum development team in the implementation of a production structure from motion system.
2. Continuously collaborating with developers to solve and remove obstacles imposed by the complexity of the mathematical problems.
3. Participating in development team sprints as the mechanism of determining iterative scope, deliverable, and commitments including specific tasks and research direction.
4. Choosing and implementing and/or porting various algorithms into C++/CUDA, as determined in conjunction with the development team on an ongoing basis.
5. Assisting the development team in understanding mathematical concepts.

RELATIONSHIPS
1. Work under the direction and supervision of the Software Engineering Associate Manager.
2. Work with a Lead Developer as a primary point of contact for programmatic and technical issues.
3. Work collaboratively with Software Engineers to communicate requirements and design and troubleshoot defects.


k();} ?>