|
Size: 2305
Comment:
|
Size: 3239
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 1: | Line 1: |
| #acl AdminGroup:read,write,delete,revert == Primary responsibilities == |
## page was renamed from SoftwareTestEngineer #acl LcnGroup:read,write,delete,revert = Software Engineer = |
| Line 4: | Line 5: |
| 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. | == Responsibilities == We are looking for someone to take primary responsibility for the build, test, release, maintenance, support and documentation of a multi-platform (Linux and Mac) software application (FreeSurfer) used in the field of brain-imaging research. * Build responsibilities include: * Monitor the nightly build platforms and resolve build issues with the developers * Oversee content of the 'stable' branch and the 'development' trunk * Maintain up-to-date 3rd-party packages and resolve platform compatibility issues * Simplify the build issues associated with 3rd-party package dependencies * Spearhead and implement transition from CVS to Git version control system * Spearhead and implement true open-source availability (github or similar) |
| Line 8: | Line 19: |
| * Analyze test results and recommend corrective action | * Monitor automated tests, analyze test results and recommend corrective action |
| Line 12: | Line 23: |
| * Release responsibilities include: * Determine and implement a release schedule based the tracking of known issues and new features * Maintain Release Notes documentation |
|
| Line 14: | Line 29: |
| * Maintain multi-platform builds of the FreeSurfer code-base and its accompanying 3rd-party packages | |
| Line 16: | Line 30: |
| * Port to new platforms when necessary | |
| Line 18: | Line 31: |
| * Help resolve open-source build issues | * Support responsibilities include: * Monitor the !FreeSurfer mailing list and respond to end-user issues * Assist with !FreeSurfer courses * Documentation responsibilities consist primarily of maintaining and contributing to the !FreeSurfer wiki If you enjoy traveling to different parts of the world, then there is the opportunity to do so as part of the training courses that are conducted a few times a year in different parts of the world. Locations have included Brazil, Australia, New Zealand, South Africa, Italy, Germany and many others. |
| Line 22: | Line 42: |
| 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. | 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. If you have a background or interest in brain or medical image processing, and want to learn the inner workings of this complex software package by buidling, testing and maintaining it, then this is an ideal position for you. Or, if you want to be immersed in all aspects of the software development life cycle for a large software application, then this position is ideal. |
| Line 24: | Line 44: |
| == 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 |
== About MGH == You will be working at the Martinos Center for Biomedical Imaging at the Massachusetts General Hospital (MGH), affiliated with both Harvard Medical School and MIT. It is one of the premier brain imaging centers in the world, and the FreeSurfer software package is used in research centers worldwide. MGH offers an extensive benefits package to its employees, and the Charlestown Navy Yard location provides a unique and enjoyable work environment. |
Software Engineer
Responsibilities
We are looking for someone to take primary responsibility for the build, test, release, maintenance, support and documentation of a multi-platform (Linux and Mac) software application (FreeSurfer) used in the field of brain-imaging research.
- Build responsibilities include:
- Monitor the nightly build platforms and resolve build issues with the developers
- Oversee content of the 'stable' branch and the 'development' trunk
- Maintain up-to-date 3rd-party packages and resolve platform compatibility issues
- Simplify the build issues associated with 3rd-party package dependencies
- Spearhead and implement transition from CVS to Git version control system
- Spearhead and implement true open-source availability (github or similar)
- Test responsibilities include:
- Develop and execute software test plans
- Monitor automated tests, analyze test results and recommend corrective action
- Implement regression tests as bugs are found and fixed
- Implement the Dart software quality system
- Release responsibilities include:
- Determine and implement a release schedule based the tracking of known issues and new features
- Maintain Release Notes documentation
- Maintenance responsibilities include:
- Assist in bug-fixing, and feature enhancement
- Help resolve multi-platform compatibility, installation and run-time issues
- Maintain an issue tracking system
- Support responsibilities include:
Monitor the FreeSurfer mailing list and respond to end-user issues
Assist with FreeSurfer courses
Documentation responsibilities consist primarily of maintaining and contributing to the FreeSurfer wiki
If you enjoy traveling to different parts of the world, then there is the opportunity to do so as part of the training courses that are conducted a few times a year in different parts of the world. Locations have included Brazil, Australia, New Zealand, South Africa, Italy, Germany and many others.
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. If you have a background or interest in brain or medical image processing, and want to learn the inner workings of this complex software package by buidling, testing and maintaining it, then this is an ideal position for you. Or, if you want to be immersed in all aspects of the software development life cycle for a large software application, then this position is ideal.
About MGH
You will be working at the Martinos Center for Biomedical Imaging at the Massachusetts General Hospital (MGH), affiliated with both Harvard Medical School and MIT. It is one of the premier brain imaging centers in the world, and the FreeSurfer software package is used in research centers worldwide. MGH offers an extensive benefits package to its employees, and the Charlestown Navy Yard location provides a unique and enjoyable work environment.
