The Programmer Analyst (PA) is a position that plays a key role in developing, integrating, and maintaining critical systems within the organization. This position specializes in one of four focus areas: Geographic Information Systems (GIS) Technology, Revenue Technology, Corporate Services Technology, or Outage Management System (OMS) Technology. Depending on the focus, area, responsibilities may include managing and analyzing geographic data for infrastructure planning and safety, supporting financial and customer service systems, maintaining enterprise resource planning (ERP) and budgeting tools, or utilizing Automated Metering Infrastructure (AMI) to monitor utility operations and outage response.
This position is involved in planning, implementing, and improving complex applications while also serving as a technical resource. The PA performs programming on major systems, leveraging high-level coding languages and analytical skills to develop innovative solutions. Additionally, the role may involve leading IT efforts, contributing to multi-phased projects, and collaborating with cross-functional teams to enhance system functionality and efficiency.
Reporting Relationships
- Reports to: Applications Manager
- May receive directions from the Lead PA or Project Team Leader
- Directs: None
Responsibilities
- Performs Personally
- Writes program and data model specifications, analyzes alternatives, creates project plans including developing task lists and cost estimates for smaller projects, and acts as a technical resource for larger projects.
- Document user requirements, analyze existing workflows for optimization, develop technical options for project proposals, and propose recommendations for existing systems.
- Assesses the impact of design issues related to hardware and software. Develops a good understanding of data flows and data dependencies between applications across classification specialties.
- Designs software applications following accepted programming standards including detailed structure charts, properly stored documentation and coding specifications.
- Participates in the evaluation of the technical and economic feasibility of application development, maintenance, or implementation.
- Supports applications within their PA focus area, assists in troubleshooting as needed for crossover processes. Understands user functional requirements for applications within their classification
- Designs and implements security measures to provide controlled access to applications, database, source code, and program libraries.
- Develops and enforces quality assurance standards and documentation.
- Interacts with multi-disciplinary staff to solve complex technical challenges.
- Prepares and executes test plans to certify that programs function properly.
- Performs as an advanced software support expert in answering operational and application knowledge questions.
- Installs application software, upgrades, supported software patches, and configuration in a test or development environment.
- Resolves issues by assisting staff in installing tested application modifications and approved software, patches, and/or configuration files.
- Interacts with software provider as a primary customer contact to resolve function issues, bugs and to communicate enhancement requests.
- Participates in development of and maintains internal technical standards. Ensures relevant documentation is kept up to date and stored in accordance with policies and procedures.
- Guides and advises colleagues on an informal basis in the use of programming languages and data processing techniques.
- Performs training and education to users and IT staff.
- Attends software training and user conferences.
- Follows Chugach processes and procedures.
- Provides status reports.
- Performs other duties as assigned.
Relationships
- Internal
- IT Management: Receives direction and assistance from, exchanges information and makes recommendations.
- Lead PA: Receives direction and assistance from, exchanges information and makes recommendations.
- Other Information Technology Staff: Coordinates interrelated activities and exchanges information.
- Users: Provide product support, exchanges information.
- External
- Vendors and Consultants: Consults and coordinates with, and exchanges information.
- User Community: Provides product support.
- Software and Hardware Vendors: Consults with, performs advanced troubleshooting, reports and solves problems.
Knowledge, Skills and Abilities
- Ability to adapt to changing environments and new technologies.
- Excellent listening, communication, and interpersonal skills, both oral and written.
- Willingness and ability to learn quickly. Proactive in implementing change through teamwork.
- Possess a high level of professionalism and integrity. Has a strong work ethic and is reliable and dependable.
- Proficient in Structured Query Language (SQL).
- Ability to analyze complex problems, identify their basic elements, and describe solutions graphically as a series of logical steps.
- Ability to work with details accurately.
- Ability to prepare logic diagrams and document programs.
- Ability to design and evaluate tests of systems.
- Ability to create entity relationship diagrams and data models.
- Proficient in various programming languages and techniques.
- Ability to define user requirements, design systems or components of larger systems, develop systems specifications, and write technical reports, memoranda and user manuals.
- Capable of leading the work of project team members and/or programmers, when directed.
- Ability to perform feasibility and cost/benefit studies for new or converted systems, communicate effectively with users in order to evaluate problems and recommend solutions, and plan project completion requirements.
- Knowledge of hardware and software capabilities and limitations.
- Knowledge of data collection techniques.
- Ability to multi-task and work independently with limited supervision while remaining organized.
- Familiarity with application and database performance tuning methods.
- Proficient in business process reengineering and workflow analysis.
Working Conditions
- Standard office environment.
- This position is subject to call-out outside normal working hours, with occasional weekend work.
- Periodic trips to remote facilities may be required.