Print

Print




POSITION SUMMARY STATEMENT:

Responsible for programming and software development for URMC Miner Libraries using various programming languages and related tools and frameworks. Requires interpreting architecture and design; evaluating code; mentoring, guiding, and monitoring up-and-coming programmers; ensuring adherence to programming and documentation policies; software development, testing, and release.
Consult with managerial and technical personnel to clarify program intent, identify problems, and suggest changes. Use logic and reasoning to identify the strengths and weaknesses of alternative solutions, conclusions, or approaches to problems. Consider relative costs and benefits of potential actions to choose the most appropriate one.
Identify indicators of system performance and the actions needed to improve or correct performance, relative to the goals of the system. Perform or direct the revision, repair, or expansion of existing programs to increase operating efficiency or adapt to new requirements.
Job requires establishing and maintaining personally challenging goals and exerting effort toward mastering tasks.

 

DUTIES AND RESPONSIBILITIES:

1.    Design (25%)

Responsible for the on-going design, development, and operation of Miner Library’s website and interface to thousands of electronic journals, books, and knowledge resources, supporting the full spectrum of the Medical Center’s missions.
Utilize leadership and persuasion to advise design team on technical possibilities, best practices and timeframes.
Create prototype design concepts to demonstrate functionality and design aesthetics.
Introduce innovative design concepts, demonstrate design aesthetics and functionality, and implement approved design/functionality changes.

2.    Develop (25%)

Modify existing components and write new components; utilize frameworks and extensive documentation to ensure code-reusability and rapid troubleshooting.
Develop applications to allow Miner’s systems, utilities, and sites to interact with outside vendors’ systems and platforms, for example, Alma/Primo, SpringShare/LibApps, and HRMS.
Work in partnership with River Campus Libraries technology teams to to develop, implement, and maintain new technologies in support of electronic journals and the University’s online catalog.
Provide programming/scripting input to improve, streamline, support, and maximize functionality and integration of systems and applications, including LibGuides/LibCal, O365, Alma/Primo, MS Active Directory, SQL, Panopto, Blackboard. 

3.    Monitor, troubleshoot, and restore (25%)

Perform or direct the revision, repair, or expansion of existing programs to increase operating efficiency or adapt to new requirements.
Serve as primary resource for web page authors and be responsible for keeping content easily accessible, up-to-date, and error free.
Troubleshoot complex technical problems and restore malfunctioning web pages and Miner Web applications.
Maintain off-campus access to knowledge resources using EZ Proxy , web page functions, and utilities.
Migrate legacy utilities and applications to modernized systems including technology upgrades.
Maintain awareness of current and up-coming URMC Web Services systems and server configurations to calculate impact on Miner’s sites and applications. 

4.    Evaluate and advance (15%)

Help create standards for the team and assist in establishing methods of accountability for the completion of assignments and tasks.
Develop and support user-survey tools for continuous improvement of library operations; includes the website, library class registration system.
Expand, improve, and maintain Library Access Portal (LAP) as directed by needs of other Miner staff.
Prepare and analyze reports on use of the library’s resources, especially IT resources, from logs, usage tables, and publisher-supplied usage statistics. Report on trends and their implications.
Develop and improve tools for capturing use and quality measurement data.

5.    Anticipate and visualize (5%)

Demonstrate and build interest in the application of new and developing mobile technologies to library systems.
Explore hardware, software, and network infrastructure components necessary to make mobile computing an effective addition to library services.
Using knowledge of library projects or initiatives, propose and design new systems, sites, or utilities.

6.    Discover and learn (5%)

Maintain superior knowledge of Internet, database, and programming and mobile technologies. This may require attending seminars, classes, and conferences.
Regularly review relevant Internet sites and current literature.
Maintain working knowledge of various browser rules, functionalities, and nuances.

 

SKILLS AND ABILITIES:

Communication skills – ability to succinctly and accurately describe problems and solutions to senior leadership, colleagues and other stakeholders.
Complex problem solving – identifying complex problems and reviewing related information to develop and evaluate options and implement solutions.
Critical thinking – using logic and reasoning to identify the strengths and weaknesses of alternative solutions, conclusions, or approaches to problems.
Judgment and decision making – considering the relative costs and benefits of potential actions to choose the most appropriate one.
Problem sensitivity – the ability to tell when something is wrong or is likely to go wrong.
Deductive reasoning – the ability to apply general rules to specific problems to produce answers that make sense.
Inductive reasoning – the ability to combine pieces of information to form general rules or conclusions (including finding a relationship among seemingly unrelated events).

[1] EZproxy is a web proxy server used by libraries to give access from outside the library's computer network to restricted-access websites that authenticate users by IP address. This allows library customers at home or elsewhere to log in through their library's EZproxy server and gain access to resources to which the library subscribes.

TECHNOLOGY USED:

Development environment software
Database management system (DBMS) software
Object- or component-oriented development software
Web platform development languages

SUPERVISION AND MANAGEMENT:

Supervised by or report to:  Director, Educational Information Technology
Functional supervision is exercised over junior analyst/programmers and student employees.
Provide technical supervision and instruction, schedule and assign tasks, monitor progress, review results, and evaluate the employee regarding the area of assignment.
Instruct (both formally and informally) library staff in the use of Web and mobile technologies, including advising the library’s Senior Leadership Team on standards, best-practices, and technological possibilities.

 

QUALIFICATIONS:

Bachelor's degree in related discipline such as Computer Science, Business, Mathematics, Statistics, Science or Engineering, and 4-5 years of related experience, preferably 2-3 years in a supervisory capacity; or an equivalent combination of education and experience.  Master's degree preferred. Detailed working knowledge and extensive experience with .NET, SQL, and various API integrations.
Experience in integrating applications written in different programming languages and located in various locations preferred.  Experience in analyzing legacy systems, designing new system structures, and migrating the old into new.  Detailed working knowledge and extensive experience with SQL and multiple programming languages, with .NET being the primary skillset. 
Ability to teach and instruct others in the usage of Web-based tools/applications preferred. Expert level skills with database design and interaction of databases with web pages. Design experience using editors such as Photoshop.
Excellent oral and written communication skills. Capable of working collaboratively with faculty, staff, project leaders, and students. Demonstrated flexibility, initiative, persistence, creativity and the ability and willingness to work cooperatively in an evolving technological environment. The library’s mission statement includes a strong service orientation and staff are expected to advance that goal.
Experience administrating servers (IIS, SQL Server) preferred.  Experience with application development frameworks preferred.  Ability to manipulate HTML and XML via the DOM and XSLT preferred.

 


----
Brought to you by code4lib jobs: https://jobs.code4lib.org/jobs/50538-programmer-analyst-lead