Computer Programmer/Analyst (Data Management & Reporting)

Arizona Department of Public SafetyPhoenix, AZ
Onsite

About The Position

The Arizona Department of Public Safety is seeking a professional Computer Programmer/Analyst who will work under general supervision, assist in designing, developing, and maintaining software applications under the guidance of more experienced developers. This classification will contribute to various phases of the software development life cycle, including coding, testing, and debugging. This classification involves collaborating with team members to understand project requirements, write and review code, and ensure software meets quality standards. Ideal candidates will have foundational knowledge of programming languages and development tools, a willingness to learn, and a passion for solving problems through technology. Performs related duties as assigned. This is a competitive classification. Computer Programmer/Analysts develop applications using the following: Visual Studio, C#, Visual Basic, .NET, SQL Server, and DB2. Must successfully complete the examination process. In-person Written Exam - 60% Qualifications Appraisal Board (QAB) - 40%.

Requirements

  • Knowledge of understanding and applying methodologies such as Agile, Scrum, or Waterfall.
  • Knowledge of applying principles and techniques for effective software system analysis and design.
  • Knowledge of implementing best practices in both batch and online application processing.
  • Knowledge of developing applications using a common language such as Java or C#.
  • Knowledge of applying data modeling principles, storage methods, and access methods when creating, maintaining, or modifying relational databases.
  • Knowledge of managing databases using a system, data dictionary, or ORM framework.
  • Knowledge of employing methodologies for object-oriented programming, analysis, and design.
  • Knowledge of designing and implementing client/server architecture solutions.
  • Knowledge of operating and managing computer hardware, data storage devices, and peripherals.
  • Knowledge of overseeing the operation and management of personal computer hardware, peripherals, and software.
  • Knowledge of utilizing version control systems like git for managing a codebase.
  • Knowledge of understanding data communication concepts and networking protocols.
  • Knowledge of understanding common software development terminology.
  • Knowledge of communicating effectively, with attention to spelling, grammar, and punctuation.
  • Skill in translating system specifications into efficient code.
  • Skill in ensuring data quality and integrity through rigorous data analysis.
  • Skill in developing and maintaining complex applications, including batch processing and web-based solutions.
  • Skill in modifying software systems, applications, and processes.
  • Skill in testing and debugging software applications and systems.
  • Skill in creating and executing test plans for new and modified software applications.
  • Skill in writing efficient SQL queries for data manipulation and retrieval.
  • Skill in understanding and implementing file organization and access methods.
  • Skill in analyzing and resolving complex programming and technical issues.
  • Skill in utilizing commercial software (e.g., Visio, Excel, Word).
  • Skill in documenting software programs and systems effectively.
  • Skill in creating flowcharts for data flow, work processes, and program logic.
  • Skill in operating personal computers, printers, and other office equipment.
  • Skill in communicating effectively and professionally orally and in writing.
  • Skill in developing and maintaining effective interpersonal relationships.
  • Skill in managing time and organizing tasks efficiently.
  • Ability to understand written and oral communications.
  • Ability to maintain confidentiality of sensitive information.
  • Ability to develop logical conclusions for programming challenges.
  • Ability to work collaboratively within a team on application planning, development, and problem-solving.
  • Ability to work independently with minimal supervision.
  • Ability to simplify complex logic processes into manageable steps.
  • Ability to thoroughly test software applications.
  • Ability to coordinate programming efforts across languages and platforms.
  • Ability to design intuitive user interfaces and report layouts.
  • Ability to learn and apply new technologies and methodologies to assignments.
  • Ability to assess the feasibility of alternative solutions.
  • Ability to read, comprehend, and interpret technical and user manuals and reports.
  • Ability to assist users with software-related problems.
  • Ability to operate personal computers and office equipment.
  • Ability to participate in meetings and exchange information regarding issues.
  • Ability to perform general office tasks.
  • 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.

Nice To Haves

  • Foundational knowledge of programming languages and development tools.
  • Willingness to learn.
  • Passion for solving problems through technology.

Responsibilities

  • Develops a test plan, creates test data, executes the test program, and reviews the code to ensure desired results and efficient resource utilization.
  • Analyzes, troubleshoots, and modifies production systems to ensure efficient and accurate operation, diagnosing and resolving issues.
  • Analyzes data within a file or database to ensure accuracy, assesses the impact of shared data, and maintains data integrity.
  • Reviews system and program specifications to determine the appropriate actions and development methodology for a project.
  • Communicates with supervisors, coworkers, business users, and other agencies to obtain approval, share information, assess needs, and resolve issues.
  • Assists business users and technical personnel with new applications or modifications to existing applications.
  • Manages data upload and download between platforms.
  • Prepares and submits a change control request for production program updates and system changes.
  • Develops written documents to present information logically and clearly.
  • Develops and modifies technical and system documentation to facilitate code modifications by another person.
  • Prepares written reports to disseminate information.
  • Prioritizes tasks and activities to ensure efficient time use and assignment completion.
  • Conducts and attends meetings to obtain and share information about projects, programs, and systems.
  • Stays current on job-specific knowledge, skills, and abilities, applying relevant knowledge to an assignment.
  • Responds to 24-hour calls to provide emergency technical support and restore program and system operation during off-duty hours.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service