Join Us

<< Back to job list

Research Software Developer

Bellevue, Wa, Washington, United States

Ref#: 3440

Date published: 09/28/17

Intellectual Ventures (IV) Lab is part of Intellectual Ventures' efforts to support invention. IV Lab works on the very beginning stages of invention, validating the concept and refining the technology to demonstrate its potential for commercial or humanitarian use.  IV Lab believes in the power of independent and unconventional approaches to solving problems.  The broad range of Intellectual Ventures' invention activity provides opportunities for a breadth of expertise across fields including computer network security, computational modeling, electrical and mechanical engineering, software development, chemistry, microbiology, materials science, nanotechnology, physics, medical devices, and aerospace engineering.  IV Lab's unique environment has attracted veteran technologists and scientists from leading companies and renowned academic, government and private laboratories.

The Optical Systems Group (OSG) is a research group within IV Lab that develops intelligent sensing platforms. OSG is an interdisciplinary group with core capabilities in optical and electronic hardware design, signal and image processing, and advanced machine learning and computer vision algorithm development. OSG focuses on applications relevant to global health and development. 

The Research Software Developer will support projects within OSG that require massive data collection and machine-learning at scale. The incumbent will be responsible for the system architecture definition, system performance analysis, and the design and development of complex software systems that incorporate machine learning algorithms including computer vision and deep learning. The successful candidate will demonstrate the ability to think creatively and to operate within a flexible, fast-paced development environment dedicated to converting advanced machine-learning algorithms into real-world functional solutions.

Technical competency and the ability to find creative solutions to difficult problems are critical skills in this position. The successful candidate must be able to resolve complex technical problems and address design challenges using an interdisciplinary approach that utilizes skills in multiple technical areas. Strong software engineering foundations are required including experience in system architecture, user-interface design, large software systems, cloud computing, GPU computing, and software design & development processes.

This position reports to the Manager of the Optical Systems group.

Responsibilities:
  • Provide technical leadership in software development.
  • Perform high-level system modeling and system framework development.
  • Develop deployable machine learning-based software, negotiating performance tradeoffs based on application-specific requirements.
  • Develop GUI software that provides healthcare worker-friendly user interfaces for interacting with complex, machine learning-based algorithms.
  • Design and implement training, validation, and testing pipelines for machine learning solutions and report on performance results.
  • Conduct design reviews with technical peers and management.
  • Adhere to best-in-class software processes and create associated documents. 
  • Create intellectual property (IP) and submit disclosures.
  • Minimal travel requirements.
Key Qualifications and Required Skills:
  • More than two years of experience as a software engineer or in a related field. Preference will be given to candidates with experience in machine learning or computer vision-based software systems.
  • Bachelor’s degree in computer science, software engineering or equivalent is required. Master’s degree or greater is desirable, but not required. 
  • Proficiency and experience with medical image processing systems is desired.
  • Proficiency and experience in Linux, Python, Android, and SQL is required. Matlab proficiency is desired.
  • Proficiency with the development of GUIs in Python and Android is required.
  • Proficiency with code optimization techniques (e.g. multithreading, SSE, GPU), data processing, and scientific computing is required.
  • Proficiency and experience with software configuration management (SCM) is required. Experience with git in a team environment is highly desired.
  • Good communication skills, both written and verbal, are required.
  • Ability to work as a strong contributing member of a small R&D team.
  • A ‘get it done’ attitude is required.
We are an equal opportunity employer
Apply Now