Brief Summary of Job Duties
Under the general direction of the Director for Digital Library Development, and operating in a large, complex, and heterogeneous computing environment, serves as a developer of digital library systems within a collaborative, cross-functional agile development team. Applies advanced software concepts to provide technical guidance and leadership on medium to large projects of broad scope, complexity, and impact. Frequently engages in analysis of unique issues/problems with limited precedent and/or structure.
Takes responsibility for technical designs and decisions that impact digital library architecture for UC Santa Barbara Library. Takes ownership of architectural decisions on a range of software components. Participates in development and implementation of products and services. Is responsible for code review and ensuring technical quality of deliverables. Coordinates with library, campus, UC system-wide, and external collaborators to determine standards, best practices and strategies. This position is approved for remote work. #LI-KA1
- 5 years of professional experience developing software and managing it in production.
- Expertise in web applications, web application languages, and object-oriented programming concepts.
- Demonstrated experience architecting and implementing software solutions using object-oriented languages and design patterns.
- Advanced knowledge of data storage and information systems and how they are used in a large, heterogeneous enterprise.
- Broad understanding of IT services and IT service delivery models.
- Exceptional cross-functional team collaboration skills. Demonstrated ability to work with others from diverse backgrounds.
- Demonstrated effective communication and interpersonal skills, including the ability to communicate technical information to technical and non-technical personnel at various levels in the organization.
- Demonstrated ability to write technical documents with attention to fine detail.
- Self-motivated and ability to work independently and as part of a team. Demonstrates problem-solving skills.
- Ability to learn effectively and meet deadlines.
- Effective time management skills. Ability to learn effectively and meet deadlines.
- Bachelor's degree or equivalent experience in the field of library or information science, computer science, management information systems or business administration.
- Experience working in a library or higher education environment.
- Experience designing and developing library software, digital repositories, digital asset management or other information management systems.
- Experience developing and deploying a Rails application into production.
- Experience developing and deploying web applications to containerized environments.
- Experience designing software for deployment to cloud platforms such as AWS.
- Certified AWS Solutions Architect
Special Conditions of Employment
Job Functions/Percentage of Time/Duties
- Architecture Project Management, 50%
Functions as a technical expert within one or more specialty areas including database architecture, client/server system and infrastructure design and development, system architecture for new or existing complex library systems, software service delivery infrastructure (SOA), and software development methodology.
Conceptualizes, plans, designs, develops, modifies, and debugs complex application components.
May lead or provide technical guidance to a development team in the design of highly complex systems.
Works with a full-stack team to define and implement logical and physical architecture.
Works collaboratively with library, campus and UC system-wide, and external peers to develop and deploy digital library solutions.
Collaborates with product owners and other stakeholders to determine and document system requirements.
Consults on deliverables and timeline for implementing projects, contributing to statements of work for the project, application or service(s).
Uses agile methodologies in working with project managers and product owners to adjust project scope when needed, evaluating resource needs to achieve successful implementation of features as specified.
Provides development and implementation for architecture design concepts.
Provides guidance in implementing industry standards and best practices.
Contributes to documentation of systems architecture.
Defines domain boundaries, API functionality, and data structure to promote clean separation of responsibility in an SOA/microservices environment.
Promotes improvements in DevOps, including version control, continuous integration and delivery, and application observability to maximize team efficiency.
Develops technical requirements and assesses suitable solutions to varied workflow needs.
Architects solutions in Amazon Web Services (AWS) that meet specified performance and security expectations. Builds detailed cost models for the solution, including one-time costs for professional services and ongoing costs for AWS Service consumption and
Digital Library's managed services.
Prepares and obtains approval for system and programming documentation. Initiates and oversees changes in development, maintenance, and system standards.
Establishes the technical requirements for complex software specifications.
Follows established campus and departmental policies and procedures.
Application Development, 45%
Functions as a technical expert on application development with Ruby on Rails and other technologies. Leads other Rails developers in agile, test-driven development.
Designs, implements, and deploys automated tests and continuous integration solutions that optimize the quality of library products.
Performs or directs data modeling, performance, and integration testing, and builds interfaces.
Employs established source code control techniques and configuration management design to initiate, design, develop, and deploy large repository systems.
Helps break down, estimate, and provide just-in-time design for small increments of work.
Helps identify coding patterns and anti-patterns, and enforces implementation of patterns through code reviews. Applies best practices and design patterns when writing code.
Performs analysis, technology evaluation, and design spikes to define architecture supporting high-quality resilient software.
Enforces project plans.
Mentors junior engineers, participating in peer code reviews and occasional pair programming.
Performs complex feasibility analysis on potential future projects and presents findings to library administration.
Takes part in departmental planning meetings.
Contributes to library and campus committees, as appropriate.
Participates in open source collaborations on behalf of UC Santa Barbara.
Attends trainings, workshops, and conferences.
Performs other duties as assigned.
Equal Opportunity/Affirmative Action Statement
The University of California is an Equal Opportunity/Affirmative Action Employer, and all qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability status, protected veteran status, or any other characteristic protected by law.
The University of California endeavors to make https://jobs.ucsb.edu accessible to any and all users. If you would like to contact us regarding the accessibility of our website or need assistance completing the application process, please contact Katherine Abad in Human Resources at 805-893-4664 or email email@example.com. This contact information is for accommodation requests only and cannot be used to inquire about the status of applications.
How to apply
Published: Monday, October 19, 2020 16:36 UTC
Last updated: Monday, October 19, 2020 16:36 UTC