World Vision International

Application Developer II

Job Description

PURPOSE OF POSITION:

Individuals working in an Application Developer II role work on multiple small to large, complex projects as a team member, sometimes as a project lead. Individuals working as an Application Developer II require increased skill in multiple technical environments and possess knowledge of a specific business area.

Individuals must be able to adjust to constant business change and as needed to proactively plan for changes that are likely to occur. Common types of changes include introduction of new organizations through mergers and acquisitions, the separation of parts of organization (as subsidiaries, or when the business changes direction), evolving goals and strategies and emerging technologies. These changes require integration of solutions that can impact the overall system development activity. Application Developers also provide client support, consultation and subject matter expertise for system development, maintenance and support.

Individuals within the Application Development job family work closely with clients, business analysts and team members to understand the business requirements that drive the analysis and design of quality technical solutions. These solutions must be aligned with business and IT strategies and are in compliance with the organization’s architectural standards. Application Developers are involved in the full systems life cycle and therefore are responsible for designing, coding, testing, implementing and supporting application software that is delivered on time and within budget. Responsibilities beyond development of software may include participation in component and data architecture design, technology planning, product evaluation, advanced testing processes and buy vs. build recommendations. Individuals also provide input to project plans related to the Application Development initiative.

Application Developers have a strong knowledge of programming languages used by the organization. They have experience in systems design and have a solid understanding of development, database development, testing, and integration methodologies. Knowledge of current and emerging IT products, services and processes is required.

KEY RESPONSIBILITIES:

Project Planning:

  • Participates in project planning process with IT business analysts and team members.

  • May develop work plan timelines and manages work flows to meet project timeframes.

Application Portfolio Management:

  • Works with Applications Developer Team Lead and Sr. Applications Developer as well as ‘the operations team’ and architects to ensure the practical, smooth, effective application retirement which may include any data migration, planning of application de-coupling, and staging and phasing of work to ensure smooth, risk-free application retirement.

Design:

  • Identifies technical requirements.

  • Creates technical design specifications and assists in sizing technical requirements.

Code and Test:

  • Codes applications using a disciplined development process and in accord with the company’s standard development process (SDLC).

  • Integrates solutions with other applications and platforms outside the framework.

  • Creates data extracts and reports from system based requirements.

  • Develops, executes and documents test plans.

Deployment:

  • Assists in the deployment of new modules, upgrades and fixes to the production environment.

  • Makes modules production-ready by moving them to libraries, completing forms, following procedures, completing version control documents, etc.

Maintenance (BREAK/FIX):

  • Provides ongoing maintenance of applications.

  • Participates in review sessions where patterns of development and break/fix metrics are reviewed as part of standard process for optimizing IT development processes.

Production Support:

  • Provides Level 2 and 3 production support.

  • Troubleshoots existing information systems to identify errors or deficiencies and develops solutions.

Performance Management:

  • Evaluates existing applications and platform and provides recommendations for improving application performance by conducting gap analysis, identifying feasible alternative solutions, and assisting in the scope of modifications.

Documentation/User Guide:

  • Documents functions and changes to new or modified modules and test activities/results.

  • Assists in the development of user guides and training documentation for systems.

Standards/Quality:

  • Adheres to standards and procedures.

  • Reviews modules for quality assurance and checks compliance with applications standards and Service Level Agreements (SLAs).

Technology, Evaluation and Research:

  • May evaluate new application packages and tools and perform research on best practices.

  • Provides recommendations for solutions.

Coaching/Mentoring:

  • Provides technical coaching and mentoring to less-experienced team members.

KNOWLEDGE, SKILLS & ABILITIES:

  • Bachelor’s degree in Programming/Systems, Computer Science, or other related field. Or equivalent work experience.

  • Requires knowledge of advanced programming techniques and application design.

  • Typically requires 3 – 5 years of programming experience.

  • Willingness and ability to travel domestically and internationally, as necessary.

Preferred:

  • Knowledge of distributed systems architecture, middleware or object oriented analysis and design.