Job Descriptions & Pay
|Class Title:||COMPUTER PROGRAMMER/ANALYST|
|Salary Schedule:||Approved Arizona Law Enforcement Merit System Council Salary Schedule|
|Summary Statement:||Under general supervision, performs applications development tasks of average to considerable difficulty involving complex business, scientific, and/or mathematical problems; and performs related functions as required. This is a competitive classification.
Mainframe Computer Programmer/Analysts develop applications using the following: COBOL, CICS, JCL, ADABAS and Natural.
JAVA Computer Programmer/Analysts develop applications using the following: IBM Rational Software for WebSphere, Java and DB2.
Microsoft Technologies Computer Programmer/Analysts develop applications using the following: Visual Studio, C#, Visual Basic, .Net, SQL Server and DB2.
|Essential Functions:||(not intended to be all inclusive)
1. Creates and modifies on-line and batch programs that are efficient and maintainable and meet the requirements while adhering to department development standards.
2. Creates and modifies job control language statements and/or scripts to run batch programs, ad hoc reports, data conversions, and file maintenance.
3. Creates and modifies the design of on-line screens and report layouts to provide business users with useful information in a user friendly manner.
4. Develops test plans, creates test data, tests programs, and reviews program code to determine if programming logic creates the desired results and makes efficient use of hardware and software resources.
5. Analyzes, troubleshoots and modifies production systems to ensure programs are operating efficiently and accurately; and to detect, diagnose and resolve problems or malfunctions of systems.
6. Analyzes data entered, stored and extracted from computer files and databases to ensure data accuracy, determine impact of data shared between systems and assure data integrity.
7. Reviews system and program specifications to determine appropriate course of action and programming methods required for assigned projects.
8. Communicates, both orally and in writing, with supervisors, coworkers, business users and other public agencies to obtain authorization and approval, to disseminate information, to assess the needs and to resolve difficulties with assignments.
9. Assists business users and technical personnel on new applications and modifications to existing applications.
10. Corrects/updates information and restore lost data.
11. Uploads and downloads data between various platforms.
12. Prepares and submits change control requests to initiate changes to production programs and systems.
13. Creates and modifies production job documentation to provide instructions and notifications to computer operations personnel of changes to batch job processing and report distribution.
14. Develops written documents (e.g. charts, diagrams, letters, notes, email, bulletins, etc.) to clearly present information in a logical order with terms that are understood by the receiving audience.
15. Develops and modifies technical and system documentation to provide reference material and facilitate modification of code by other programmers.
16. Prepares written reports (e.g. weekly status reports, project status reports, etc.) to disseminate information.
17. Prioritizes assigned tasks and activities to ensure efficient utilization of time and completion of assignments.
18. Conducts and/or attends meetings to obtain and/or disseminate information regarding assigned projects, programs and systems.
19. Documents activities and time spent on tasks.
20. Remains current on job-specific knowledge, skills and abilities to expand knowledge of application development, programming languages, hardware and software; and applies appropriate knowledge and skills to assignments.
21. Responds to 24-hour calls for assistance to provide emergency technical support to return programs and systems to operational mode during off-duty hours.
|Knowledge, Skills, & Abilities Required:||Knowledge of:
1. software development life cycle and development methodologies.
2. the principles and techniques of computer system analysis and design.
3. the principles and practices of batch and online computer processing.
4. various programming techniques (e.g. top down, structured, object-oriented, etc.).
5. third and fourth generation programming languages.
6. the internal representation of data (e.g. EBCDIC/ASCII character sets, binary, decimal, hexadecimal, packed numbers, zone decimal, etc.).
7. the principles of data modeling and computer file storage and access methods (e.g. sequential, partitioned, indexed sequential, relational, etc.).
8. database management systems and data dictionaries.
9. the principles and methodologies of object-oriented programming, analysis and design.).
10. the principles of client/server architecture designs.
11. the principles, concepts, capabilities and operations of computers hardware, data storage devices and peripherals.
12. the principles, concepts, capabilities and operations of personal computer hardware, peripherals, and software.
13. program version control tools.
14. data communications concepts and protocols.
15. data processing terminology.
16. business English, spelling, grammar, and punctuation.
1. translating program specifications into logical computer instructions to meet processing requirements.
2. analyzing data to ensure data quality and integrity.
3. coding and maintaining complex batch, online and synchronous transaction applications.
4. making modifications to computer systems, applications and processes.
5. testing and debugging computer applications and systems.
6. devising test plans for new and modified custom developed applications.
7. using software development utilities and editors.
8. using various operating systems to develop applications (e.g. z/OS, Microsoft Windows Operating Systems, UNIX, etc.).
9. using debugging and monitoring tools.
10. using database management systems and data dictionaries.
11. coding with standard query language (SQL) to access/maintain data in relational databases.
12. using file organization and file access methods.
13. researching, reading and interpreting technical information from a variety of resources to design, code and debug custom developed computer applications.
14. researching, analyzing and resolving complex problems (e.g. program logic, technical hardware, computer system, etc.).
15. accessing and maintaining database systems in custom developed applications.
16. using custom developed applications as assigned.
17. using commercial personal computer software (e.g. Visio, Excel, Word, etc.).
18. creating documentation for computer programs and systems.
19. flowcharting data flow, work processes, and program logic.
20. operating office equipment (e.g. personal computers, printers, copy machines, fax machines, etc.).
21. effectively and professionally communicating in writing and orally with users and department personnel.
22. developing and maintaining effective interpersonal relations.
23. effective time management and organization techniques.
1. understand written and oral communications.
2. maintain confidentiality of sensitive information.
3. reason and develop logical conclusions for programming problems.
4. work within a team concept in application planning, development and problem solving.
5. work independently with minimal supervision.
6. convert complex logic processes into several simple steps.
7. thoroughly system test applications.
8. test and modify existing programs accordingly after upgrades of databases, programming languages and other system software.
9. coordinate creations/modifications of programming in different languages.
10. design screen and report layouts.
11. learn and apply new knowledge and technology to assignments.
12. independently research available information to develop new applications and modify or correct existing applications.
13. assess the feasibility of alternative solutions.
14. read, comprehend and interpret technical and user manuals and reports.
15. foresee potential problems with new and/or modified automated systems.
16. organize and perform multiple tasks to complete assignments and meet deadlines.
17. assist business users with computer related problems.
18. operate personal computers and other office equipment.
19. prioritize work assignments.
20. participate in meetings and exchange information regarding issues.
21. perform general office tasks.
|Minimum Qualifications:||Requires one (1) year of experience programming in a language used in the Department; OR two (2) years of course work in computer science, management information systems or a related field from an accredited college, technical school or university including at least six (6) semester hours in a programming language used by the Department. Additional programming experience may substitute for the required education on the basis of one (1) year of experience equal to 30 semester (or 45 quarter) hours of credit.
Progression to the next pay level/step requires an overall performance rating of at least "Standard" in the last 12 months.
Must successfully complete the examination process.
FLSA Status: Non-Exempt
Please download and review the below document(s) relating to this position:
Current as of: 4/19/2014 3:39:27 PM