The Computational Memory Lab is currently seeking applications for the following positions:
Please see below for descriptions, qualifications, and applicable links to the Penn HR recruiting site. Click here for information on Penn's salary structure.
Scientific Software Developer
This position is responsible for developing and maintaining state-of-the-art tools to conduct human memory experiments and to develop new therapies to treat memory disorders. You will be responsible for the development and testing of experimental programming libraries, and data analysis of large neurophysiology data sets. You will integrate applications with other system components, create system and user-level documentation, and develop architectures to store and analyze large data sets. The position will be supervised by the project director and will interface extensively with project scientists, engineers and clinicians.
Experience with Python, Matlab, or C/C++ required. Ability to implement, understand, and maintain mathematical and scientific codes.
Master’s or PhD in mathematics, computer science, engineering, or other scientific field preferred. Experience with Big Data technologies, including Hadoop and Spark. SQL database programming. Developing or maintaining public software libraries. Identifying technical and algorithmic needs for research teams. Software engineering, including algorithms, design, data structures, and object-oriented techniques.
Senior Scientific Programmer
The Computational Memory Lab is hiring a Senior Scientific Programmer to lead the development of software tools and computational resources needed to develop a novel brain stimulation therapy for patients with memory impairment. This groundbreaking neuro-engineering project is part of President Obama’s BRAIN Initiative.
The selected applicant will lead the development of technical computing software, experimental programming libraries, cluster computing resources, and data transfer protocols. He/she will interface with senior research staff at multiple institutions and equipment vendors, and lead the development of a real-time system for closed-loop brain recording and stimulation, with high data acquisition and computational loads and low-latency requirements. He/she will manage the configuration of the closed-loop brain recording and stimulation system, including system updates and technical support to multiple clinical sites. Finally, he/she will lead the development and maintenance of systems to transfer experimental data from clinical sites to a centralized server. The ideal candidate will possess exceptional system development skills, past experience in mathematical programming, and the ability to develop and enhance a hybrid system implemented in multiple computer languages.
A Bachelor’s degree with at least 5 years relevant experience or Master’s degree with at least 3 years relevant experience Proficiency with C/C++ and Python Experience with scientific / statistical computing techniques and languages MATLAB, SciPy, NumPy, etc.) Experience with Windows, Mac or Linux or Unix development environments
PhD in computer science, neuroscience, bioengineering, mathematics or physics Experience with real-time computing and threading Experience working in a fast-paced collaborative software development setting
The Computational Memory Lab is hiring a Research Analyst, who will be responsible for contributing to the research, design, specification, development, and testing of neural time series modeling and analysis tools for the Restoring Active Memory (RAM) project. Working under the Project Director, as part of a multi-disciplinary team of programmers, scientists, and mathematicians, he or she will work to research and develop approaches and requirements for modeling neural time series data, and then translating those requirements into effective algorithm designs. Part of the focus of this position will also be on compiling and analyzing neural time series data by developing novel visualization tools, and in leading the development of algorithms for use in implantable medical devices.
PhD degree (or foreign educational equivalent) in Applied Mathematics or Statistics. Strong quantitative background in Bayesian time series analysis. Demonstrated expertise programming in MATLAB, Python or C.