Applications Developer - Expert
Summary:
This is work within the multi-level Applications Developer specialty. Positions work under minimal technical guidance provided by a more senior technical project leader. Positions are responsible for developing, testing, implementing, and maintaining complex applications and/or databases. Positions also draft technical program documentation, such as end-user operational instructions. Depending upon assignment, positions may be responsible for developing and maintaining software applications and/or databases, including web applications and user interfaces. Based on assignment, incumbents may serve as Contracting Officer Technical Representative responsible for a full range of contracting activities in coordination with contracting officer.
Duties, Tasks, and Responsibilities
- Analyzes, designs, implements and maintains the database applications and structures
- Attends meetings and training sessions to increase proficiency in job-related skills and procedures.
- Based on assignment, may be responsible for: Design, Development and Maintenance of Software Applications and/or Databases.
- Conducts unit/functional testing.
- Consults with client to develop formal user requirements. Consults with client to develop user requirements
- Design, Development and Maintenance of Websites and Web Databases
- Designs, and develops the layout and user interface.
- Designs, codes and debugs web applications; designs and maintains interactive web databases and web services; designs graphics and user interfaces.
- Develops, tests, implements and maintains complex applications and/or databases
- Ensures that the new application can access data that has been transitioned to the new database structure.
- Maintains currency on tools, methodologies, technologies and programming languages Organizes content, develops color schemes, designs and produces graphics.
- Participates in contracting activities to evaluate different acquisition approaches; develops a contracting strategy and completes required documentation; participates in the competitive evaluation process to identify qualified contractors; monitors and evaluates contractor performance and provides appropriate formal feedback and recommends contractor award and/or incentives.
- Performs general administrative activities
- Provides ongoing maintenance of basic web applications, databases, and web services. Transitions data from legacy systems to new relational database structures.
- Transitions the application/database to production; enhances application/database as needed
- Translates user requirements from a formal requirements document into an application/database design.
- Writes all necessary code.
- Writes interfaces to companion applications or databases
Knowledge, Skills, and Abilities
- Ability to explain protocols, technical procedures and processes clearly and accurately to both technical and non-technical audiences.
- Ability to plan, set goals and determine strategies for accomplishing results; monitors and evaluates progress toward goals
- Ability to track and resolve programming bugs
- Ability to translate user requirements into end-to-end design for applications/databases that may involve multiple interfaces to other applications or supporting database systems.
- Ability to write clear, concise and effective requirements documents, correspondence, procedures and reports in accordance with policies.
- Considerable knowledge and ability to program proficiently in two or more of the applications or database programming languages relevant to the project.
- Considerable knowledge of the life-cycle process for software development, web applications, and implementation
Minimum Education
- General equivalency guidelines for education, certifications, and experience are provided below; however, these guidelines do not immediately qualify someone at a particular level. Skill levels for an individual are based upon a combination of education, training, and experience, e.g. someone may have 20 years of professional experience; however they may only be qualified as Full Performance based upon the expertise needed to perform the work within that category.
- General professional years of experience may be substituted for specialized years of experience at a ratio of three (3) years of general experience within an occupation for one (1) year of specialized experience.
- Relevant certifications will be considered equivalent to three (3) months of specialized experience.
- An Associate’s degree in Computer Science, Information Systems, Engineering, Business, or a scientific or technical discipline related to the specific skill will be considered equivalent to eighteen (18) months specialized experience.
- A Bachelor’s degree in Computer Science, Information Systems, Engineering, Business, or a scientific or technical discipline related to the specific skill will be considered equivalent to three (3) years specialized experience (total equivalency is not cumulative when combined with an Associate’s degree).
- A Master’s degree in Computer Science, Information Systems, Engineering, Business, or a scientific or technical discipline related to the specific skill will be considered equivalent to two (2) years specialized experience (up to a total of five (5) years when combined with a Bachelor’s).
- A Doctorate in Computer Science, Information Systems, Engineering, Business, or a scientific or technical discipline related to the specific skill will be considered equivalent to two (2) years specialized experience (up to a total of seven (7) years when combined with a Master’s and a Bachelor’s).
Minimum Experience
Expert:
- Typically someone that is a recognized expert or certified practitioner with a particular computer language, system or technology that can not only deliver capabilities, but can mentor and train others.
- Generally requires eleven (11) years of experience specific to the skill and relevant training or certifications.
- Expertise, training and actual work experience with the specific computer language, systems, and/or technology is significantly more important than the number of years of experience. This is especially true with emerging technologies.