Job Summary

The University of Colorado Libraries encourages applications for a Digital 
Library Senior Software Developer! This position reports to the Head of Core 
Technology and Applications and uses best-practices in software engineering and 
product development to build and maintain large-scale digital library systems 
and underlying architectures that contribute to the realization of 
organizational strategic goals. This includes technologies that facilitate 
scholarly research, digital asset management and preservation, publishing, and 
broad open access to digital collections. They build new applications and 
contribute to the growth of existing applications and, by extension, develops 
APIs, microservices, system integrations, and other software components to 
manage the creation, storage, retrieval, and archiving of a wide array of 
digital objects, including monographic and serialized collections, research 
data sets, geospatial data, digitized special collections materials, archival 
finding aids, audio, video, and more. They also contribute to the development 
of user interfaces to discover, manage, and display them. Working 
collaboratively with team members, library faculty/staff, and other campus 
partners, they lead and execute assigned projects in accordance with 
established priorities and plans, while embracing industry best-practices in 
DevOps, Agile software development, open source product adoption, public cloud 
infrastructure, QA/testing, and information security.

 

Who We Are

Mission 

We are a knowledge catalyst. We spark inquiry, discovery, collaboration, 
creation, and the dissemination of knowledge. We welcome everyone, wherever 
they are on their educational journey. 

Vision 

An information-empowered world.

 

What Your Key Responsibilities Will Be

Software Development

Develop, modify, and maintain sophisticated library full-stack applications and 
related software.
Deploy open source software solutions; actively participate in and contribute 
to the associated development communities.
Collaborate with library faculty/staff to evaluate and select appropriate open 
source solutions.
Use DevOps, Agile, and other industry best-practices throughout the development 
lifecycle to ensure solutions are reliable, scalable, accessible, and secure; 
mentor team members in these best-practices.
Review solution designs for correctness; conduct unit, functional, system, and 
integration tests as required.
Lead code review, sprint retrospectives, and post-mortems.
Work collaboratively with Product Owners and other partners to ensure 
applications are performing as expected and continue to deliver value.
Respond to incident and general requests.

Solution Architecture

Develop architectural specifications to support the maintenance and growth of 
the library's technology ecosystem, including the library services platform 
(catalog), discovery services, and digital asset management technologies.
Plan, design and implement specified solutions in a public cloud environment.
Collaborate with software developers to ensure there is a common understanding 
of implemented solutions, including participating in code reviews and other 
development activities as required.
Contribute knowledge and expertise as a technical architect to product reviews.
Assist the Digital Library Software Architect to resolve complex problems and 
address technical concerns when they arise; independently monitor systems to 
ensure performance goals are met and take necessary corrective as appropriate.

Project/Product Management

Use best-practices in project/product management to ensure implementation 
targets are met.
Maintain product documentation; report regularly on progress.
Leads/conducts sprint retrospectives and post-mortems to identify potential 
areas for improvement and as a means of sharing knowledge with other members of 
the team.
Advise other members of the team on preferred approaches to resolving complex 
technical problems.

Professional Development

Actively participate in professional development activities to expand knowledge 
and skills and to maintain technical proficiencies; lead discussions on 
technical architecture and advanced software development topics.
Stay abreast of new developments and trends in library technologies; advise 
team members accordingly.
Work closely with multi-functional teams comprising library faculty/staff, 
campus partners, and external partners to achieve common goals.
Participate in and/or lead library/campus committees and working groups.

 

Be Effective. Be Creative. Be Boulder.

 

What We Require

Bachelor’s degree or equivalent combination of education and experience may 
substitute.
2+ years of professional, job related experience.

 

What You Will Need

Understanding of common design patterns, service oriented architecture, and 
test driven development.
Proven track record of analyzing complex problems and producing concrete, 
measurable solutions, specifically as it pertains to production troubleshooting.
Familiarity with developing automation and containerization solutions using 
tools such as Jenkins, Docker, and Ansible.
Willingness to learn new technical skills and adapt to emerging technologies.
Superb communication skills.
Strong service and customer engagement orientation.
Excellent task management skill and ability to meet deadlines under pressure.
Ability to cultivate an environment of diversity, inclusion, and respect.

 

What We Would Like You to Have

Master’s degree in computer science or related field, or equivalent combination 
of education and experience.
Experience resolving highly complex integration issues involving multiple 
technologies and business areas.
Demonstrated programming experience with web development technologies including 
Python, PHP, Ruby, Java, Javascript, React, and RESTful APIs, and a willingness 
to learn other languages and web development frameworks as appropriate.
Demonstrated experience with data management software such as MySQL, 
PostgreSQL, and MongoDB, and search/indexing software such as Apache Solr.
Demonstrated experience deploying solutions in public cloud infrastructure, 
e.g., AWS.
Demonstrated proficiency working in a DevOps culture using Agile development 
methods and tools, Git repositories, Kanban boards, and other tools.
Professional experience developing library technologies.
Experience with open source products such as FOLIO, Blacklight, Samvera, Omeka, 
ArchivesSpace, Fedora, Solr.
Familiarity with digital library metadata concepts and standards such as XML, 
OAI-PMH, Dublin Core, and MODS.
Proven success participating in and contributing to open source projects.

The CU Boulder Libraries encourages applications from women, racial and ethnic 
minorities, individuals with disabilities, and veterans. We are most interested 
in finding the best person for the job, and that person may be one who comes 
from a less traditional background. As you review the qualifications, please 
think about how your qualifications are transferable if (at first) they do not 
seem directly related. Share how those skills translate in the cover letter. We 
encourage you to apply, even if you don’t believe that every one of our 
preferred qualifications described is met.

 

Special Application Instructions

To apply, please submit the following materials: 

A current resume. 
A cover letter that specifically addresses how your background and experience 
align with the requirements, qualifications and responsibilities of the 
position.

You will not be asked to upload references at this time.

Please apply by February 7, 2021 for consideration.

Note: Application materials will not be accepted via email. For consideration, 
applications must be submitted through CU Boulder Jobs.


----
Brought to you by code4lib jobs: 
https://jobs.code4lib.org/jobs/47254-digital-library-senior-software-developer

Reply via email to