Interesting post on the Pirates JOB website.
Please don't call it DiamondView. That name is already taken.
Senior Programmer/Analyst - Pittsburgh Pirates (Pittsburgh, PA)
Reports to: Senior Director, Information Technology
Job Summary: This position is primarily responsible for the development and operation of a unified player management and scouting system. Works closely with the General Manager and Baseball Operations staff to define, develop, and implement a system that will support the Pirates player evaluation, selection and development efforts. The system will integrate multiple sources of information and video, both internal and external to the Pirates organization, into a single, centralized view of ballplayers. The incumbent is responsible for the full life-cycle of the player management and scouting system.
Works with Senior Director, Information Technology and Director of Baseball Operations to develop project plans and work breakdown structures for developing and implementing a player management system. With limited supervision, follows plan and monitors and reports progress.
Gathers, verifies, and documents user requirements for player management system. Understands and analyzes the business process and required outcomes of the system and creates requirements definition document defining the business use cases.
Develops and modifies player management application using Microsoft VB.NET and other Visual Studio tools. Makes use of industry best practices and recommended coding standards to write clear, readable, and efficient code.
Coordinates with video and data providers to effectively integrate systems and information into the unified player management system.
Identifies potential features and functions to be incorporated into the player management system. Presents features to Baseball Operations staff and management and incorporates additional functionality as directed
Prepares detailed design specifications defining system architecture and object relationships and functions. Reviews specification with Baseball Operations and IT management to validate design.
Designs underlying data architecture for player management system. Adheres to rules of normalization and database design practices to produce efficient and intuitive data structures. Creates database tables, stored procedures, and views using Microsoft SQL Server and associated tools.
Develops and oversees system acceptance testing for all newly developed components of the player management system. Designs and sets up test scenarios. Reviews test results and validates software capabilities meet business needs.
Provides ongoing support of player management system. Troubleshoots and corrects defects found in the system. Upgrades system as necessary to take advantage of new technology and meet dynamic business goals.
Analyzes structure and content of external player data to be incorporated into the system. Works with providers to receive the necessary data in a convenient format. Designs and develops routines to integrate external data into the underlying data architecture.
Develops training scenarios and, in cooperation with key Baseball Staff, provides training to all player management system users.
Designs and develops procedures to calculate advanced player statistics and manage player evaluations, rankings, and other information contained in the system. Designs and develops graphical and tabular layouts of the information according to the needs of the Baseball Operations staff.
Other duties as assigned by Senior Director, Information Technology.
Provides technical guidance for custom development and coding projects within the organization. Assist other IT staff developing workflow scripts and customizing business systems.
Establishes software development guidelines for Pirates organizaqtion. Guides IT staff in implementing guidelines in all custom coding and scripting.
Assist the Senior Director, Information Technology in developing and managing the IT department budget. Anticipates and makes recommendations on software development budget requirements.
Remains abreast of activities in the field of software development and make appropriate recommendations to achieve business objectives.
Software development life cycle skills
Understanding of baseball operations & sabremetrics
Database design and implementation skills
Verbal and written communications
Attention to detail
Ability to work at a fast pace
Bachelor's Degree in Computer Science, Information Systems, or equivalent.
In depth understanding of advanced statistical analyses techniques and experience implementing statistical calcuations in software applications. Experience using sabremetrics techniques for player evaluation strongly preferred. Experience implementing graphical representation of statistical trends.
Minimum of four years experience developing enterprise level applications using Microsoft VB.NET and SQL Server.
Experience leading all aspects of the software development lifecycle incuding requirements definition, design, development, testing, and implementation.
Ability to design and implement complex database structures using SQL Server tools. Understanding of database documentation and design tools.
Experience integrating multiple data sources, formats, and media into a single business application.
Demonstrated ability to work with users to understand business processes, document system requirements, and develop applications that meet business objectives.
Previous experience developing, implementing, and employing structured software development techniques.
Ability to guide other technical staff in software development techniques and the use of software customization tools.