Class Title: | APPLICATION ARCHITECT |
---|---|
Bargaining Unit: | Use for all Job Titles |
Class Code: | 075577 |
Other Requirements:
Job Overview:
Work Activities:
- Researches and evaluates current and emerging technologies.
Inspecting Equipment, Structures, or Material:
- Troubleshoots application problems by working with appropriate teams to diagnose and recommend solutions.
Estimating the Quantifiable Characteristics of Products, Events, or Information:
- Ensures the software capacity can handle the number of possible users of the system.
Judging the Qualities of Things, Services, or People:
- Provides guidance to development team to insure consistent look and feel of components, utilization of implementation patterns, and consistent use of tools. Note: This task is more critical for an individual whose primary focus is software than for an individual whose focus is hardware.
Evaluating Information to Determine Compliance with Standards:
- Works with application team to insure the compliance of security policies and standards in the application design. Note: This task is more critical for an individual whose primary focus is software than for an individual whose focus is hardware.
- Defines change management procedures for an application.
- Ensures the testing methodology properly tests all components of an application.
Developing Objectives and Strategies:
- Makes recommendation for improvement if current capacity of any of the application components proves to be inadequate.
- Develops programming and development standards, policies, and procedures for use within the application. Note: This task is more critical for an individual whose primary focus is software than for an individual whose focus is hardware.
- Works with vendors to identify products which could provide potential solutions to business needs.
Scheduling Work and Activities:
- Plans the application development and deployment strategy and timeline which can include proof of concept, pilot, conversion, upgrade, and rollout.
Drafting, Laying Out, and Specifying Technical Devices, Parts, and Equipment:
- Works with infrastructure specialists such as network, systems, and database and security personnel to insure proper planning, implementation, and operations of an application. Note: This task is more critical for an individual whose primary focus is hardware than for an individual whose focus is software.
- Designs, documents, and deploys software on servers as needed, collaborating with other technical individuals when necessary. Note: This task is more critical for an individual whose primary focus is hardware than for an individual whose focus is software.
- Designs the necessary environments (development, test, UAT, etc.) for support of an application.
- Diagrams the design of an application, (i.e., physical, software, network, communication, data flow, and security).
- Participates in developing and reviewing Requests for Information and Requests for Proposals for new systems.
Interpreting the Meaning of Information for Others:
- Facilitates an understanding of the technical recommendations and communicates design rationale to project team members.
- Provides expert problem solving and technical judgment.
Communicating with Supervisors, Peers, or Subordinates:
- Presents recommendations and technical information to staff with varied level of technical knowledge and/or upper management.
- Interacts with project managers, business analysts, functional experts, or other key personnel to understand and validate user requirements and insure the application design meets the requirements. Note: This task is more critical for an individual whose primary focus is software than for an individual whose focus is hardware.
Communicating with Persons outside the Organization:
- Communicates with external entities to research software or product implementation to gather information.
Resolving Conflicts and Negotiating with Others:
- Defines and negotiates Service Level Agreements.
Coordinating the Work and Activities of Others:
- Works with application manager or lead personnel to insure the application code follows best practices and standards and appropriately utilizes framework or other application components. Note: This task is more critical for an individual whose primary focus is software than for an individual whose focus is hardware.
Training and Teaching Others:
- Identifies technical skill gaps and makes recommendations of appropriate training required to support the application.
Provide Consultation and Advice to Others:
- Provides expertise in defining techniques and protocols for system integration.
- Recommends development languages, administrative tool sets, and frameworks to be used within an application lifecycle. Note: This task is more critical for an individual whose primary focus is software than for an individual whose focus is hardware.
- Acts as an internal consultant, advocate of emerging technologies and mentor to enhance the technical skill set of agency personnel and act as a change agent.
Staffing Organizational Units:
- Participates in selection of technical personnel for involvement in project lifecycle.
Competencies (KSA’s):
- Problem Solving
- Functional/Technical Competencies
- Decision Quality
- Business Acumen
- Creativity
- Technical Learning
- Perspective
- Strategic Agility
- Innovation Management
- Intellectual Horsepower
Knowledge:
- Knowledge of industry standard network protocols
- Knowledge of a variety of technical methodologies
- Understanding of application/system memory management
- Knowledge of detailed Database design
- Knowledge of a variety of Design frameworks (e.g.UML)
- Knowledge of a variety of programming languages specific to the platform required for the position
- Knowledge of use of Integrated Development Environments
- Industry standards related to application development
- Awareness of current technology trends
- Knowledge of clustering technologies
- Detailed knowledge of Operating systems and parameters
- Advanced understanding of nTier architecture
- Knowledge of High Availability clustering technology
- Working knowledge of Service Oriented Architecture
- Working knowledge of programming paradigms (object oriented, relational, asynchronous messaging)
- Working knowledge of middleware and web layer software
- User Interface (UI)/presentation layer development
- Advanced knowledge of Computers and electronics
- Advanced knowledge of Systems Design
- Knowledge of education and training
- Knowledge of computer engineering and technology
Skills:
- Active Learning
- Active Listening
- Critical Thinking
- Learning Strategies
- Mathematics
- Monitoring
- Reading Comprehension
- Science
- Speaking
- Writing
- Instructing
- Negotiation
- Persuasion
- Service Orientation
- Social Perceptiveness
- Complex Problem Solving
- Technical Skills
- Equipment Maintenance
- Equipment Selection
- Installation
- Operation and Control
- Operation Monitoring
- Operations Analysis
- Programming
- Quality Control Analysis
- Repairing
- Technology Design
- Troubleshooting
- System Skills
- Judgment and Decision Making
- Systems Analysis
- Systems Evaluation
- Management of personnel resources/identifying the best person for the job
- Time Management
Abilities:
- Category Flexibility
- Deductive Reasoning
- Flexibility of Closure
- Inductive Reasoning
- Information Ordering
- Mathematical Reasoning
- Oral Comprehension
- Oral Expression
- Originality
- Perceptual Speed
- Problem Sensitivity
- Selective Attention
- Speed of Closure
- Time Sharing
- Visualization
- Written Comprehension
- Written Expression
Tools and Equipment Used:
- Personal Computer
- Telephone
- Printer
- Mobile Devices
- Software Development Tools
- Software Testing Tools