In addition to the application, the candidates must submit a statement of interest (a couple of paragraphs will suffice) explaining their suitability for the position and long-term career interests to adubra@stanford.edu.
The Dubra Lab at Stanford University is seeking a highly motivated software developer to create an automated ophthalmic image processing and analysis pipeline, as well as custom novel retinal imaging instrumentation. The resulting software and hardware will be deployed across premier academic centers in the US and Europe to advance our understanding, diagnosing and management of ocular, neurodegenerative and systemic diseases and conditions. This will require the implementation and optimization of novel and sophisticated image algorithms in C++, Python, LabView, OpenGL and CUDA. The candidate must have a bachelor's degree in Computer Science or Computer engineering. Expertise in designing, developing, testing, and deploying C++ applications using Microsoft Visual Studio is required. Familiarity with the following is highly desirable: Microsoft Team Foundation Server (now Azure DevOps Server), GitHub, Python, SWIG and CUDA. Experience programming hardware such as cameras, frame grabbers, motors, etc. is desirable but not required. The applicant must be experienced with CPU multi-threading and GPU parallel processing programming, as well as profiling and performance optimization.
If appointed, the applicant would collaborate closely and be mentored by colleagues with expertise in firmware, middleware, business logic, user interfaces and databases. Exposure to such a diverse set of technical challenges is an opportunity for acquiring and developing new skills, at the cutting edge of almost all the technologies used in the lab, and thus, provide a strong foundation for a career in R&D. Although not required, the applicant would be able to work hands on with optical instrumentation and develop practical experimental skills.
The candidate would be part of a highly collaborative and welcoming multidisciplinary team with optical designers, computer engineers, vision scientists, students and staff of various backgrounds as well as physicians. If desired, the applicant would have opportunities to present their contributions at conferences and submit for publication in peer-reviewed scientific journals.
This position is for a full-time in-person (no remote work) software developer that will work on the implementation of modules and applications with C++, Python and LabView FPGA components for custom ophthalmic instrumentation and image processing. The work will not use artificial intelligence, machine learning, programming for the cloud, internet of things, web applications, or security. The successful candidate will assist in the design and assembly of custom computers for high-performance applications, such as image acquisition, low-latency pupil tracking, adaptive optics control and image processing. He/she/they will observe and understand all stages of ophthalmic image capture, processing and analysis to assist in the design of overall strategy and technical approaches for a streamlined pipeline with maximum automation. Our custom instruments are deployed at Stanford and collaborating academic centers, and the candidate will assist with the installation and troubleshooting of our custom software as needed. All the software will be kept in an Azure DevOps repository that will eventually transition to open-source.
Duties include:
* Assess user needs and requirements. * Design and develop applications that may involve sophisticated data manipulation. * Maintain and update existing programs. * Troubleshoot and solve technical problems. * Create programs to meet reporting and analysis needs. * Design and implement user and operations training programs. * Document changes in software for end users. * Follow team software development methodology. * Serve as technical resource with respect to applications.
* - Other duties may also be assigned
DESIRED QUALIFICATIONS:
Bachelor's degree in computer science or computer engineering
*Object-oriented programming, C, C++ and Python proficiency.
*Familiarity with Azure DevOps and/or GitHub automation.
EDUCATION & EXPERIENCE (REQUIRED):
Bachelor's degree and three years of relevant experience or a combination of education and relevant experience.
KNOWLEDGE, SKILLS AND ABILITIES (REQUIRED):
*Working knowledge of latest software and design standards.
*Ability to define and solve logical problems for technical applications.
*Knowledge of and ability to select, adapt, and effectively use a variety of programming methods.
*Ability to recognize and recommend needed changes in user and/or operations procedures.
*Basic knowledge of software engineering principles.
*Strong knowledge of at least one programming language.
CERTIFICATIONS & LICENSES:
None
PHYSICAL REQUIREMENTS*:
*Constantly perform desk-based computer tasks.
*Frequently sit, grasp lightly/fine manipulation.
*Occasionally stand/walk, writing by hand.
*Rarely use a telephone, lift/carry/push/pull objects that weigh up to 10 pounds
*Must be able to assemble, disassemble and troubleshoot computer and electronics equipment (e.g., must be able to lift and carry an oscilloscope).
* - Consistent with its obligations under the law, the University will provide reasonable accommodation to any employee with a disability who requires accommodation to perform the essential functions of their job.
WORKING CONDITIONS:
May work extended hours, evening and weekends, in particular when required for grant submission and/or conference presentation/submission deadlines.
The expected pay range for this position is $107,423 to $133,600 annually.
Stanford University provides pay ranges representing its good faith estimate of what the university reasonably expects to pay for a position. The pay offered to a selected candidate will be determined based on factors such as (but not limited to) the scope and responsibilities of the position, the qualifications of the selected candidate, departmental budget availability, internal equity, geographic location and external market pay for comparable jobs.
At Stanford University, base pay represents only one aspect of the comprehensive rewards package. The Cardinal at Work website (https://cardinalatwork.stanford.edu/benefits-rewards) provides detailed information on Stanford's extensive range of benefits and rewards offered to employees. Specifics about the rewards package for this position may be discussed during the hiring process.
Consistent with its obligations under the law, the University will provide reasonable accommodations to applicants and employees with disabilities. Applicants requiring a reasonable accommodation for any part of the application or hiring process should contact Stanford University Human Resources by submitting a contact form.
Stanford is an equal employment opportunity and affirmative action employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, protected veteran status, or any other characteristic protected by law.
Why work at Stanford?Stanford University has changed the world, over and over again.We are one of Silicon Valley's largest employers - and also one of the most unique. Our mission is to educate future leaders and promote interdisciplinary, world-class research and teaching. This passion makes Stanford an intensely creative, rewarding, and challenging place to work. At the same time, our traditions of respect and collaboration sustain a humane, supportive environment in which to pursue your life and your career.At Stanford you'll work with bright, diverse, dedicated people. You'll find encouragement to learn and grow. You'll enjoy excellent benefits and an outstanding environment. How will it change you?