Software Engineer (281-13)

Req Code: 
Job Location: 
San Francisco, CA
Job Summary: 

The Software Engineer researches and designs computer vision software systems in conjunction with hardware product development for game-changing reality capture systems.

  • Drive investigations of computer vision algorithms for 3D reconstruction
  • Work with the broader team to integrate new algorithms / plug-ins into our product portfolio
  • Assist in the maintenance of applications developed and deployed on Linux platforms; work with other software, mechanical and electronics teams to develop software solutions and integrate them into hardware systems

Education & Training:
BS or advanced degree in Computer Engineering/Science with strong computer vision/machine vision background; Master’s or PhD degree preferred

Recent graduate and/or embedded software experience

Knowledge, Skills & Abilities:

  • Must have:
    • Solid software development skills and ability to write production quality code
    • Stereo vision experience (photometric stereo, structure from motion, multi-view reconstruction, bundle adjustment, dense surface reconstruction)
    • Previous algorithm development
    • C, C++, C#, Java, Javascript and/or Python experience
    • OpenCV/PCL experience, Kinect, IR/RGB cameras
    • Experience with data structures and algorithms for handling 3D mesh data
    • Ability to rapidly conceive of, test, and deploy software that utilizes multiple machine vision libraries
    • Demonstrated ability to apply highly technical concepts in practical ways
  • Nice to have:
    • Ability to discern and implement key concepts from technical papers
    • Camera sensor and lens distortion measurement & calibration
    • Parallel/GPU programming