Primary responsibilities
Responsible for test and maintenance of a multi-platform (Linux and Mac) software application (FreeSurfer) used in the field of brain-imaging research. Focus on test suite development that ensures correctness of software results and coverage of the software suite.
- Test responsibilities include:
- Develop and execute software test plans
- Analyze test results and recommend corrective action
- Implement regression tests as bugs are found and fixed
- Implement the Dart software quality system
- Maintenance responsibilities include:
- Assist in bug-fixing, and feature enhancement
Maintain multi-platform builds of the FreeSurfer code-base and its accompanying 3rd-party packages
- Help resolve multi-platform compatibility, installation and run-time issues
- Port to new platforms when necessary
- Maintain an issue tracking system
- Help resolve open-source build issues
Qualifications
BSCS or related technical degree. C and C++ programming experience in a Unix environment is required. Basic shell scripting, and Perl, Python and Tcl/Tk scripting experience desired. Unix autoconf and CVS experience desired.
Tasks
- Test:
- Setup automatic tests of bert for the 'dev' enviro
- Setup automatic tests of buckner40 for the 'stable' enviro
- Expand tests to cover more binaries, particularly mri_glmfit, where a group analysis could be automatically run on the buckner40
Create a [http://public.kitware.com/Dart/HTML/Index.shtml Dart server], with Dashboard, to receive nightly build and test results, for public web-page display
- Buy and setup a 64bit Intel Mac Pro, and setup as a build and test machine
- Maintenance:
- Create VMWare Freesurfer virtual machine for Linux (so that freesurfer can run on Windows)
- Create a Mac Universal binary for Freesurfer (which is compatible with both powerpc and intel)
- Setup a read-only CVS server, for open-source code distribution (use the virtual server that Paul setup, and create cronjob to copy nightly the real CVS to the read-only CVS, excluding non-public code)
- Explore and mess with trying to get freesurfer to build in CMake, at least portions of it relating to Qdec