> Markdown version of [/jobs/ext/3393917-research-programmer-software-engineer](https://www.wearedevelopers.com/jobs/ext/3393917-research-programmer-software-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Research Programmer / Software Engineer - **Company:** Thomas Jefferson University - **Location:** Philadelphia, PA, United States - **Contract:** Permanent contract - **Skills:** Testing (Software), Unity 3d, JavaScript (Programming Language), Computer-Aided Design, Computing Platforms, Big Data, C++ (Programming Language), Code Reuse, Collaborative Software, Computer Simulation, Computer Programming, File Systems, R (Programming Language), Python (Programming Language), MATLAB, NumPy, Qt (Software), Software Tools, SciPy, Software Engineering, Systems Integration, Data Processing, High Performance Computing, Git, Pandas, Matplotlib, Scikit Learn, Information Technology, Maintaining Code, Data Management, Slurm, Network Server, Software Version Control - **Published:** September 13, 2026 - **Apply:** https://www.indeed.com/viewjob?jk=b886c51bf69a9e7c ## About the Role * Bachelor's degree in computer science, engineering, data science, or a related field. * Strong programming skills in Python. * Experience with C++, or willingness to work with and extend existing C++ code. * Experience working in Linux/Unix computing environments. * Experience with version control and software environment management tools (e.g., Git, conda, pip). * Demonstrated experience completing technical projects or contributing to larger codebases. * Ability to write clean, well-documented, maintainable, and reusable code. * Strong independent problem-solving skills. * Excellent communication skills and ability to collaborate within multidisciplinary teams. Preferred Qualifications * Experience with neuroscience, psychology, biomedical research, or human subjects research. * Experience with EEG, intracranial EEG, neural time-series analysis, or physiological data. * Experience with MATLAB, R, JavaScript, Unity, PsychoPy, Psychtoolbox, Qt, or related tools. * Experience with scientific Python libraries such as NumPy, pandas, SciPy, MNE, matplotlib, or scikit-learn. * Experience with software testing, deployment, or collaborative software development. * Experience with high-performance computing, SLURM, server-based workflows, or scientific data management. * Experience with computational modeling, simulations, or large-scale data analysis. * Experience with hardware, electronics, or experimental systems integration. * Interest in memory research, epilepsy, brain stimulation, clinical neuroscience, or computational neuroscience. ## Description A Research Programmer / Software Engineer position is available in the laboratory of Dr. Noa Herz in the Department of Neurology and Neuroscience at Thomas Jefferson University. Research in the Herz Lab focuses on the neural mechanisms underlying human episodic memory. We use direct brain recordings and electrical stimulation collected from neurosurgical patients with implanted electrodes undergoing seizure monitoring. Our work aims to characterize memory processes and memory dysfunction in neurological and psychiatric conditions and to develop novel brain stimulation approaches to improve human memory function. We are seeking a motivated, independent, and technically skilled programmer/software engineer to develop, maintain, and improve software tools for human memory experiments, intracranial EEG (iEEG) data processing, and scientific analysis. The successful candidate will work closely with neuroscientists and clinicians to develop new experimental paradigms, improve existing analysis pipelines, and provide technical expertise for ongoing cognitive neuroscience studies., This position is ideal for someone who enjoys solving challenging technical problems, rapidly developing new tools, and working at the interface of software engineering, neuroscience, and medicine. Projects may involve: * Rapid development and implementation of new behavioral experiments in human memory. * Building and optimizing software tools for direct brain stimulation studies. * Developing reproducible preprocessing and analysis pipelines for intracranial EEG data. * Supporting computational analyses on high-performance computing clusters. * Designing software systems, testing procedures, and reproducible workflows. * Preparing software releases and maintaining code documentation. * Troubleshooting computing infrastructure, including servers, file systems, and cluster environments. * Contributing to the design and implementation of novel neuroscience experiments and