The Solomon and Keller laboratories in Psychiatry and Behavioral Sciences at Stanford University are seeking a joint Software Developer Associate to develop software for the storage, management, access, and analysis of human electrophysiological data. The role will also be expected to contribute to existing software packages for conducting brain stimulation experiments.
The goal of both labs is to understand the fundamental principles governing how the human brain responds to electrical stimulation, and to develop next-generation neurotherapeutics to treat neuropsychiatric conditions. The Software Developer Associate will assist in this mission by developing software that enables research analysts to efficiently and flexibly interact with complex human neural data and associated metadata (including neuroimaging, behavioral, medical, and audio-visual measures). The Associate will work under the general supervision of the laboratory PI and in direct collaboration with postdoctoral researchers and graduate students.
Duties include:
- Assessment of users needs relating to the flexible access and analysis of human electrophysiology data and associated research metadata.
- Assist in the development of new Python-based software packages and APIs to enable easy, efficient, and fast analysis of these data.
- Assist in the integration of new software with in-house and Stanford-based data storage solutions.
- Contribute to refinements of existing software packages for conducting transcranial magnetic stimulation (TMS) research experiments, including hardware/software interfacing and GUI development.
- Real-time technical support and troubleshooting during TMS experiments.
- Develop user guides and tutorials for newly-developed software and follow best practices for code documentation and version control.
- Follow team software development methodology.
- Suggest improvements and/or changes to help increase efficiency.
* - Other duties may also be assigned
DESIRED QUALIFICATIONS:
- Prior experience working with or developing software to process biological time-series data.
- Experience with Python and MATLAB programming languages.
- Experience with Github.
- General knowledge of privacy standards for handling health-related information.
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
* - 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 his or her job.
WORKING CONDITIONS:
May work extended hours, evening and weekends.
Core Duties:
Assess user needs and requirements.
Assist with design and development of applications that may involve sophisticated data manipulation.
Assist with maintaining and updating existing programs.
Troubleshoot and solve basic technical problems.
Assist in the design and implementation of user and operations training programs.
Contribute to documenting changes in software for end users.
Follow team software development methodology.
Suggest improvements and/or changes to help increase efficiency.
Minimum Education and Experience:
Bachelor's degree or a combination of education and relevant experience.
Knowledge, Skills and Abilities:
Familiarity with latest software and design standards.
Ability to solve logical problems for technical applications.
Knowledge of and ability to select, adapt, and effectively use 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.
