Scientific Programmer I- Laboratory of Dr. Wolfgang Busch

Job Details

The Busch and Pereira laboratories at the Salk Institute for Biological Studies are seeking a Scientific Programmer I to be an integral member of the research lab focused on cutting-edge research in computational biology through the development and application of machine learning models, using computer vision and deep learning. Example applications include pose tracking for the quantification plant phenotyping for bioengineering efforts to combat climate change. The Scientific Programmer I will work in the lab and interact directly with faculty, student/postdoctoral researchers, and technical staff both to provide technical support and to contribute to scientific discussions. The Scientific Programmer I will work alongside researchers to design and implement machine learning systems, provide expertise in algorithm development and optimization, and maintain codebases for research software. The Scientific Programmer I will assist researchers with the management of scientific data by analyzing, designing, developing, coding, testing, debugging, and managing scientific computing infrastructure such as virtual servers, database servers, operating systems, scientific software packages, applications, and software development environments. Works individually or in a team environment to design, implement, and support novel software tools, cloud-based systems for scientific data analyses and reporting. May provide computational support of scientific projects. May also conduct applied research and develop novel methods to enhance the institute's computational infrastructure. Review researcher's needs and requests and develop proposed solutions for system enhancements based on requirements. Participate in the development of and ensure adherence to project schedules and milestones. Break down project requirements in programming sequence by analyzing requirements; prepare a workflow chart and diagram using knowledge of computer capabilities, subject matter, programming language, and logic. Builds and codes software patches, applications, and/or modules using languages such as C, C++, Python, Matlab, and web frameworks Creates detailed test cases and documents all programming and systems changes to include flowcharts, layouts, diagrams, charts, code comments, and revision dates. Prepares operating instructions, compiles documentation of program development, and analyzes system capabilities to resolve questions of program intent, output requirements, input data acquisition, programming techniques, and controls. May build add-on modules using API's and application program language. Document and publish software and tutorials on project website.

The ideal candidate will have a strong background in software engineering and sufficient familiarity with academic research to translate academic research code into production quality, stable and documented code. Candidates will be expected to demonstrate their research software engineering skill set by implementing a solution to a coding exercise representative of the types of tasks they will encounter in this role.


Programming (70%)

  1. Provide technical expertise and guidance for improving the performance and quality of research software code bases.
  2. Develop graphical interfaces and/or application programming interfaces (APIs) for machine learning models and data processing pipelines.
  3. Lead and co-lead the design and construction of increasingly complex research software systems using modern DevOps and MLOps practices.
  4. Review and respond to software engineering inquiries during research planning.
  5. Maintain knowledge of current and future software development tools and techniques, programming languages, and high-performance computing.
  6. Implementing new functionality in existing software packages.
  7. Testing new software that is developed.
  8. Refactoring code to improve efficiency and modularity.
  9. Keeping up with industry best practices for software engineering, as well as new tooling and infrastructure.

Researcher Support (15%)

  1. Develop documentation and tutorials for existing and new software tools, including preparing screenshots, videos, and interactive notebooks.
  2. Document existing codebases to meet style guidelines, including enforcement of static typing, docstring formats and inline examples.
  3. Provide support for users, including answering issues, troubleshooting, and developing patches or additional documentation.

Presenting (15%)

  1. Presenting results and current progress in lab meetings and to colleagues.
  2. Contributing to writing of scientific papers.
  3. Presenting work at industry and academic conferences.



  • Proficiency in programming languages used for numerical and scientific computing: Python, and C/C++.
  • Experience with modern DevOps practices: version control, unit testing, CI/CD.
  • Basic experience with machine learning, deep learning, computer vision.
  • Basic experience with web and cloud development (backend preferred).
  • Ability to learn new systems beyond area of core knowledge.


  • Experience with MLOps or infrastructure and tooling for ML practitioners.
  • Experience with data science applications.
  • Experience with GPU or concurrent programming experience on workstations and computational clusters.
  • Experience with frontend programming experience (web or desktop graphical interfaces).
  • Experience in an academic research environment.



  • Bachelor’s degree in a relevant discipline (Computer Science, Statistics, Bioinformatics, Engineering, Neuroscience, or a related field with strong computational emphasis etc.), and one year of related experience, or an equivalent combination of combined relevant education and research or software engineering experience.


  • Advanced degree in a related field. Online courseware or university-level coursework in software engineering, deep learning, computer vision or DevOps/MLOps.



  • Demonstrated ability to program effectively in one or more languages.
  • Ability to write readable, well-organized code that can be utilized or extended by other individuals.
  • Ability to organize complex software repositories and datasets.
  • Ability to debug, diagnose problems, and implement fixes for complex software.
  • Highly organized, effective at multitasking, adept at juggling changing priorities.
  • Proven ability to work both independently and also as part of a collaborative team.
  • Excellent communication skills, both oral and written.
  • Strong interpersonal skills, including tact, diplomacy, and flexibility.
  • Demonstrated ability to interact effectively with diverse groups.
  • Demonstrated skill in establishing and maintaining effective working relationships with personnel at all levels.


  • Ability to read scientific literature and implement methods described in papers.
  • Ability to perform statistical analysis of large datasets.


  • Must be willing to work in an animal-related research environment.
  • Satisfactory completion of the Institute’s background investigation.
  • Must be willing to sign a confidentiality agreement.


This position will be constantly adjusting focus, grasping, hearing, keying, seeing, sitting, talking, analyzing, calculating, communicating, reasoning, reading, writing and working inside. 


Working at Salk Institute for Biological Studies

The Salk Institute for Biological Studies is one of the world's preeminent basic research institutions, where internationally renowned faculty probe fundamental life science questions in a unique, collaborative, and creative environment. Focused on both discovery and mentoring future generations of researchers, Salk scientists make groundbreaking contributions to our understanding of cancer, aging, Alzheimer's, diabetes, and cardiovascular disorders by studying neuroscience, genetics, cell and plant biology, and related disciplines.

Faculty achievements have been recognized with numerous honors, including Nobel Prizes and memberships in the National Academy of Sciences. Founded in 1960 by polio vaccine pioneer Jonas Salk, M.D., the Institute is an independent nonprofit organization and architectural landmark.

Salk Equal Opportunity and Non-Discrimination Statement

The Salk Institute for Biological Studies is committed to providing equal access to opportunities for students, employees, applicants for employment and other persons.

Our policies prohibit harassment or unlawful discrimination against individuals on the basis of sex, gender, marital or parental status, pregnancy, childbirth, breastfeeding, medical conditions/disabilities related to pregnancy, childbirth or breastfeeding, gender identity, gender expression, or sexual orientation age, ancestry, color, religion (including religious dress and grooming practices), family and/or medical care leave status, disability (mental or physical), registered domestic partner status, legally protected medical condition, genetic information, military or veteran status (disabled veteran, veteran of the Vietnam era, other covered veteran status), national origin (including language use restrictions and possession of a driver’s license), race, religion or any other classification protected by local, state or federal laws.

The Salk Institute participates in the E-Verify program.

Reasonable accommodation is available for qualified individuals with disabilities and for individuals with religious restrictions.

Get job alerts

Create a job alert and receive personalized job recommendations straight to your inbox.

Create alert