Python Developer Graduate Assistant (2)
Academic Year 2021-2022
M.E. Grenander Department of Special Collections & Archives
The University at Albany Libraries’ M.E. Grenander Department of Special Collections & Archives seeks two graduate student developers to join the Mailbag Project Team.
The Mailbag project aims to create a Python library, command line utility, and basic Graphical User Interface (GUI) desktop application to package email exports in multiple formats for long term preservation and access. Currently, there is no single format that is effective for the long term preservation of email. MBOX or EML files provide structured access for computational use, PDF files preserve the document-like rendering of email and provide easy dissemination, and web archives preserve the potential interactivity of email HTML and CSS, as well as embedded and linked Web content from external sources. The Mailbag tool will create and manage Mailbags, an in-development specification to manage email in multiple formats as an extension of the Bagit Specification.
The Mailbag project seeks to foster a collaborative learning environment for software development. We recognize that all of us are continually learning and improving at a variety of different stages of expertise. The Mailbag project seeks to build a collaborative working and learning environment among Graduate Student Developers and the Project Team. All code will be subjected to structured peer review by another Graduate Student Developer, a member of the Project Team, or outside reviewer. Graduate Student Developers will be expected to contribute substantial time to reviewing and improving code as well as writing original code. While the Mailbag project seeks candidates with significant Python development experience, we also expect that Graduate Student Developers will further develop their skills and expertise over the course of the project.
- Design and build functionality into the Mailbag Python library and command line utility as outlined by the consultant developer and the Project Team
- Perform code reviews and provide feedback to peer developers
- Write and contribute to technical and user documentation
- Meet code and documentation standards as outlined by the consultant developer and the Project Team
- Enrolled in a University at Albany graduate degree program on a full-time basis during the Fall 2021 and Spring 2022 semesters
- Experience developing Python applications
- Experience developing with object-oriented architecture in Python
- Experience with Git and code review workflows using Github or similar version control system
- Experience writing documentation
- Experience in using test-driven development to develop Python applications
- Experience working with complex data serialization formats
- A strong understanding of text encoding
- Experience writing to file systems across multiple operating systems
- Interest and appreciation for software maintenance
- Interest in digital preservation
- Experience working with Email export formats
- 20 hours per week for 15 weeks during the Fall 2021 and Spring 2022 semesters. Schedule is flexible, but most work hours occur Monday-Friday, 9am-5pm
- Graduate students will be paid at a rate of $1,354.36 for 15 biweekly pay periods for a total of $20,315 if the academic year commitment is met
Email the following items to Mark Wolfe, Curator of Digital Collections, email@example.com:
- Cover letter specifically addressing the position requirements
- Contact information for three professional references
Review of applications will begin immediately and continue until the position is filled.