Duties: The selected applicant will join the team of programmers to develop a software engine for a real-time brain stimulator and software modules that facilitate neural data processing. This role requires fluency in Python and C++, knowledge of data structures and algorithms as well as ability to work with medium to large code-bases. We are particularly interested in candidates who are well versed in high-level object-oriented techniques including knowledge of design patterns. The ideal candidate will possess exceptional system development skills, be able to effectively communicate new ideas to the management and peer developers, be well versed in modern software development practices including version control, regression testing, software documentation and continuous integration. Past experience in developing scientific tools (e.g. statistical package, simulation toolkit, graphics library, data-mining tool, etc.) or completing data science projects is a strong plus. The selected candidate will interface with senior research staff at multiple institutions and equipment vendors to deliver high quality, robust software platform for next-generation real-time brain stimulation and recording.
Qualifications: Required qualifications:
* A Bachelor's degree with at least 1- 3 years of relevant experience or Master's degree. Recent graduates who completed a complex software project as part of their academic curriculum are strongly encouraged to apply as well.
* Proficiency in Python and C/C++ including development of C/C++ Python extension modules.
* Experience with scientific/statistical computing libraries and languages (SciPy, NumPy, xarray, Matlab, R, etc).
* Experience in developing asynchronous/multi-threaded software.
* Solid understanding of C++STL library (preferably C++11 standard).
* Familiarity with GUI development toolkits (Qt/PyQt, Windows Forms, wxWidgets, GTK etc.).
* Ability to work proficiently in Windows, Mac or Linux or Unix development environments.
* PhD in computer science, neuroscience, bioengineering,mathematics or physics.
* Experience with real-time, computing and collaborative software development.
* Exposure to Machine Learning Techniques and Machine Learning Libraries (sklearn, LibSVM, LibLinear, TensorFlow).
* Cross-platform software development.
* Ability to effectively leverage multiple programming languages to deliver flexible software solutions.
Reference Number: 02-27419
Salary Grade: B
Employment Type: Exempt
Special Requirements: Background check required after a conditional job offer is made. Consideration of the background check will be tailored to the requirements of the job.
Job Family: E-Information Systems/Technology