Wednesday, February 24, 2010

R&D Software Engineer - Java (MST Performance)-University of Rochester,New York

R&D Software Engineer (MST Performance)
About the Job
R&D Software Engineer (MST Performance)
POSITION SUMMARY:

This position is responsible for software development, testing, and deployment activities for eXtensible Catalog software applications that are currently under development. This position is part of the eXtensible Catalog Organization (XCO) ( http://eXtensibleCatalog.org ) and will help to enhance a suite of open-source next-generation library web applications. This high-profile project will offer the selected candidate an opportunity to work with a range of developers, both within the project and at other institutions.

The XC software consists of several distinct applications, each designed to work with library metadata in various XML formats, to integrate with legacy systems, process data, and present web user interfaces. The applications are built with a number of technologies. Experience with some or all of the technologies listed below is highly desired and conceptual familiarity is required for discussion purposes. The core list of technologies used in the Java-based components of eXtensible Catalog includes: Java, JSP, Struts 2 Framework, YUI Toolkit, SOLR, Lucene, mySQL, web services, XML, XSLT, and XML Schema. Knowledge and/or familiarly with the following library specific standards and technologies is desired: MARC format, Dublin Core format, OAI-PMH Protocol, and NCIP Protocol. Development tools used include Subversion, Eclipse, and NetBeans.

The position is a 12 month assignment with possible extension should funding be available.

One of the applications within the XC suite of software is called the Metadata Services Toolkit (MST) and it consists of a user interface and several distinct “services.” This position will be responsible for enhancing the performance of the MST and services via:
• Code changes to allow for multiple processor processing/parallel processing
• Enhancements in SOLR indexing and storage
• Code and query related optimization enhancements
• Other enhancements identified by the XCO management

SUPERVISION AND DIRECTION EXERCISED:None
SUPERVISION AND DIRECTION RECEIVED:This position reports to the eXtensible Catalog Organization’s Executive Director ( http://extensiblecatalog.org ).

TYPICAL DUTIES:
• Software Engineering, Implementation and Testing
• Produce well designed, documented, and tested code for the “next-generation” library platform.
• Communication and Collaboration with a team of programmers responsible for other modules of the overall system to insure component interfaces will interoperate successfully.
• Software development of web applications using Java, JSP, XML, Struts 2 Framework, YUI Toolkit, Apache SOLR, and mySQL.
• Software configuration management including version control, status reporting, review, and defect tracking
• Coordination of software releases including installation and testing of software, documentation review, and distribution via Google Code.
• Management of the bug tracking and feature request process using web-based software currently in use
• Completion of tasks in a self directed fashion

QUALIFICATIONS REQUIRED:

• 3+ yrs of development experience in JAVA
• Experience in Java Enterprise Edition (J2EE) – Java, Servlets and JSPs, JSTL, JDBC, SQL, XML, web services, Apache, Tomcat or similar.
• Experience with Struts2, AJAX, ANT, Lucene, TestNG, SVN
• SOLR ( http://lucene.apache.org/solr /) with embedded Lucene ( http://lucene.apache.org /) for indexing and searching
• Bachelor's degree in Software Engineering, Computer Science, or a related field
• Previous web development work on database driven web sites
• Familiarity with software design methods, models, and standards.
• Excellent interpersonal skills as well as technical aptitude
• Object oriented design and software development
• Knowledge of MySQL database and query optimization techniques
• Performance improvement techniques to handle large data sets
• Parsing and manipulating XML
• Experience in building Multi-core Java applications and parallel computing.

The position involves programming, testing, and documentation. This position will work in an environment that includes Subversion ( http://subversion.tigris.org /) version control system, Eclipse editor ( http://www.eclipse.org /). Emphasis is placed on quickly getting up to speed on technologies, user interfaces and local conventions.

QUALIFICATIONS PREFERRED:
Knowledge and experience working with the following technologies is preferred:

• 5-10 years Java experience
• Ivy, YUI, Hibernate, Spring
• OAI-PMH protocol ( http://www.openarchives.org /)) for metadata harvesting
• MARC ( http://www.loc.gov/marc /)
• MARCXML ( http://www.loc.gov/standards/marcxml /)
• Dublin Core ( http://dublincore.org /) as the metadata schema used to package and transmit data between systems
• MARC4J ( http://marc4j.tigris.org /) or similar tools
• Library of Congress authority headings

Note: This job description describes typical duties and responsibilities and is not intended to limit management from assigning other work as required.

The University of Rochester provides equal opportunity employment regardless of sex, age, race, color, creed, disability, sexual orientation, and national or ethnic origin. Further, the University complies with all applicable nondiscrimination laws.
Please send letter of application, resume, and the names, addresses and phone numbers of three references to:

Kelley M. Kitrinos
Human Resources Administrator
Rush Rhees Library, Box 270055
University of Rochester
Rochester, NY 14627-0055 OR
Email: RCLHR@library.rochester.edu

No comments:

Post a Comment