The Programmer Analyst is responsible for leading the creation of technology to solve business problems within a dynamic evolving technical environment in support of Virginia Tech initiatives focusing on the design and development of systems and services. Additionally, the Programmer Analyst will be responsible for ensuring that critical applications are designed, developed, and optimized for high availability and enhanced user experience.
Job Duties:
Application Development:
Develop and maintain web-based applications (Springboot, HTML, JAVA, Swing (Java) GUI) that support database CRUD (create, read, update, delete) operations and third-party restful API’s (JQuery, SQL, Hibernate). Develop API for integration support of internal and third-party vendor implementations. Develop responsive user interfaces and cross browser compatibility
components (bootstrap, CSS, HTML 5, JavaScript, Angular). Ensure web-based applications are developed using secure practices such as google ReCAPTCHA. Handle cross site scripting concerns. Develop user interface components (graphs, dashboards) for functional areas. Ticket and time tracking in ServiceNow. Remain current on new technologies and industry standards (Gartner, Tambellini). Review incoming production tickets and identify solution for quick resolution. Develop and maintain functional and technical documentation.
Database Design and Development:
Database design and development including table, view, query, stored procedure, and function development (MongoDB, Oracle, SQL Server, MySQL). Use of development tools (Eclipse, Tortoise GIT, Vagrant, Spring Framework, MVC, Struts).
System Analysis:
Analyze and review existing applications to ensure the technical infrastructure for applications continue to effectively utilize vendor systems, conform to technology standards, and local modifications so that applications remain viable and sustainable over time from an enterprise perspective. Identify ways to limit or eliminate technical debt. Work with functional/technical areas and external vendors to gather specifications and requirements based on technical needs and then translate those requirements into clear and comprehensive development strategies. Provide data-driven advice to functional areas on how to expand or refine operations to meet needs. Assist in research and analysis of functional business processes and procedures and the effective utilization of technology for process improvement. Accurately define, analyze, and plan for enterprise level applications by specifying needs and requirements
and by identifying alternatives to consider for system design and programming.
Performance/Quality Assurance Testing:
Design, implement, and support load/performance testing of web applications using such software as Apache JMeter, etc. Create and administer web automation tests; to be performed
after each modification/upgrade to ensure the accuracy of functional processes. Participate in code reviews to ensure web applications conform to User Experience (UX) industry standards.
User Accessibility/User Experience:
Review, recommend and update applications to support user accessibility and experience (JAWS, ARIA, HTML 5). Serve and participate in the UX Community Group and the Accessibility
Network. Follow and share updates with team from Educause User Accessibility Community Group. Work closely with Equity and Access on Virginia Tech User Accessibility tools
licensing and usage.
IT Service Management:
IT Operations, change management, release management, service catalog and configuration management utilizing ITIL best practice framework (ServiceNow).