PROGRAMMER/ANALYST
JOB SUMMARY
Under direction of the Manager, Computer Systems & Operations or the Director, Adult Education, reviews and analyzes various sources of information and requirements to design and implement complex systems and programs for the District's administrative applications; performs in-depth testing cycles of new and existing programs; reviews system objectives with users to ensure design goals are achieved; performs other essential job-related duties as required.
ESSENTIAL DUTIES AND RESPONSIBILITIES
1.Meets with District and non-District staff to discuss, question, and analyze requirements for new and existing systems, processes and procedures for the purpose of creating software enabling delivery of effective and efficient user tools.
2.Translates oral and written system specifications into process diagrams and logical block code creating or modifying high-level procedural code (eg. COBOL, C, Powerhouse) to make an effective interface between users and their workstations, associated peripheral equipment, and computer data.
3.Assists programmers in understanding system, program, and user interface requirements and monitors and reviews their program code, documentation and techniques to ensure design goals are met.
4.Creates and maintains libraries of commonly used code and text to ensure consistent delivery of software modules and processes.
5.Reviews and analyzes program input and output to verify that all processes are operating correctly; prepares test data for use with applications and performs testing from all aspects to ensure proper functioning; uses debugging tools and writes specific code to determine causes of application malfunctions.
6.Assists in analysis of systems, procedures, and impact of software development projects; creates written reports and graphs to assist in the determination of project schedules and timelines.
7.Documents application code to clarify logic and purpose of specific code; maintains a change history when applications are modified describing the reason for the change, date changed, version number assigned, and name.
8.Assists in preparation of written application documentation for use by staff and users.
9.Assists department and District staff in the use of application software; responds to technical questions from coworkers on various aspects of the workings of application software.
10.Assists in the evaluation of new hardware and software.
11.Complies with applicable state, local, and federal rules, regulations and laws, as well as District policies and procedures.
12.Establishes and maintains effective working relationships with teachers, administrators, coworkers, vendors, and the general public.
13.Demonstrates and models safe, prudent, and healthful work behaviors and practices; identifies and works toward elimination of unsafe or unhealthful work area conditions.
14.Performs other essential job-related work as required.
QUALIFICATIONS GUIDE
Education and Experience
Typical qualifying background would include any equivalent combination of:
Associate's degree or equivalent in computer science, electronics, or related field and four years of experience with computers comparable to those utilized by the District; course work in computer science procedures, methods, designs, interfaces, file structures, and programming languages from Assembly through Fourth Generation levels.
Knowledge, Skills, and Abilities
Typical qualifying knowledge, skills, and abilities would include:
1.Knowledge and experience utilizing microcomputers (PC's and Macintosh) and dumb terminals, keyboarding, mice, and other input devices.
2.Knowledge and experience using mini- and main-frame computers in the design and implementation of software applications.
3.Ability to think logically; apply analytical skills; convert English instructions into block diagrams and pseudo code for use in the design and maintenance of software applications; ability to translate design documents and requirements into machine code for use by themselves or programmers to achieve desired objectives in an effective and efficient manner that is easily understood and applied by the user.
4.In-depth knowledge of file systems, relational databases and record structures, disk, tape, CD, and other electronic recording media and input and output devices on various computing platforms in order to design the most effective and efficient access to data.
5.Knowledge of capabilities and limitations of computer software, hardware, input and output devices and their relationship to people in providing effective tools to make users more efficient in their work.
6.Ability to establish effective and cordial working relationships with both District and non-District staff; question users and discuss business and procedural needs and requirements to create system designs.
7.Ability to take on complex and often frustrating tasks while maintaining an impartial and constant dedication to completing tasks within deadlines.
8.Ability to work on multiple projects and tasks within the same time period.
9.Ability to write both technical and user-oriented documents explaining the purpose, processes, steps, and functions of systems and programs.
10.Ability to troubleshoot processes, program code, and human actions to resolve problems or processes; keep supervisor informed of problems or potential problems in a timely manner in order to resolve or preclude problems; assume personal/professional responsibility for programming/analytical errors and notify supervisor to allow quick correction of such errors.
11.Skill in communication, interpersonal relations, time management, decision making, problem solving, and conflict resolution.
12.Participates in training, forums, workshops and work groups to enhance personal skills and to keep current on new methodologies, tools, and hardware.
WORKING CONDITIONS
Work is performed in an office environment; frequent to constant demand for use of keyboard; lift boxes of paper; sit for extended periods.