Senior Software Engineer

Job Level
Mid-level position
Job Category
Engineer / Architect
Sector
  • Systems / Operations
Job Status
Areas of Responsibility
  • Software
Job Summary

The Senior Software Engineer will play a lead role in systems analysis, design, and full-stack development for the Audiovisual Metadata Platform (AMP), a workflow system that will integrate machine learning and human processing steps to create and augment metadata for collections of audio and video files, which is being developed by the IU Libraries with support from a grant from the Mellon Foundation. Operating under limited supervision, the position’s duties will include working with the project director and a multi-institutional development team to design, implement, deploy and support features and the AMP high-level architecture; coding, testing, debugging, and maintaining the AMP system software to support project objectives; investigating alternative technologies and designs, evaluating the options and recommending solutions to the project team to ensure efficient, effective development; documenting the AMP system for other developers, administrators, and end users; and providing other training and support as needed.

NOTE: This position is funded for two years, with potential for renewal. Applicants for this position must be legally authorized to work in the United Sates. Employer sponsorship will not be provided for this position.

Required Qualifications

REQUIRED: Bachelor’s degree in computer science or related field and five years of experience in: systems analysis and programming of complex software systems using the Java object-oriented programming language; Java design patterns; web application and web services development; Java web frameworks; and Unix/Linux.

Combinations of related education and experience may be considered.

Knowledge, skills, and abilities: 
Excellent relational database modelling and programming skills; and experience with JavaScript libraries and frameworks such as nodeJS, angularJS, redux; web markup, including HTML5 and CSS3; XML and JSON. Experience providing technical support. Ability to effectively communicate and exchange information. Good interpersonal skills and ability to work as part of a team.

Preferred Qualifications

Master’s degree; experience with Python development; experience with digital video and audio formats and technologies; experience with workflows and system job queueing mechanisms; experience with application of machine-learning tools; experience with cloud computing and/or high-performance computing environments; experience with Agile development methodologies; experience with version control tools and test-driven development; broad understanding of metadata use in libraries.

Working Conditions / Physical Demands

Must be able to stare at a computer screen particularly for long periods of time. Must be able to perform detailed work (programs, documents or instruments); interact with staff, faculty, and vendors; handle the stress of performing multiple concurrent tasks with constant interruptions.

Requires creativity in identifying complex problems and finding solutions quickly and accurately; attention to detail in communicating technical issues and implementing solutions; mental discipline in resolving software problems; ability to change priorities as project expands or project needs change.

Salary Range  
Salary Plan PAE
Salary Grade 4IT
FLSA Exempt
Work Location

Bloomington, Indiana

Job Category Library/Information Science/Archiving