PURPOSE OF POSITION :
Individuals working in an Application Developer III role work on multiple projects that may span a broad range of applications as a project team member, sometimes as a project lead.
Individuals working as a Sr. Application Developer require expertise in multiple technical environments and business knowledge that spans one or more business areas.
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 :
Project Planning :
Participates in all project planning processes.
May develop work plan timelines and manage work flows to meet project timeframes.
Application Portfolio Management :
Works with Applications Team Lead and 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.
Data Requirements :
Identifies better sources of data feeds and interfaces with architects to ensure their feasibility with corporate data warehouse, when needed.
Actively participates in planning sessions with Architecture team to define, plan, analyze, implement and operationalize enterprise data model.
Identifies technical requirements.
Creates technical design specifications and assists and reviews technical design specifications developed by junior levels.
Code and Test :
Codes applications or enterprise-wide software systems 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.
May lead 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.
Ensures modules are production-ready.
Maintenance (BREAK / FIX) :
Provides ongoing maintenance of applications.
Leads 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.
Participates on teams that outline the process and scope out the improvements that can be realized through the application solution.
Documentation / User Guides :
Documents functions and changes to new or modified modules and test activities / results and other areas such as error handling and backup / recovery procedures.
Assists in the development of user guides and training documentation for systems.
Standards, Policies and Procedures :
Adheres to standards and procedures.
Reviews modules for quality assurance and checks compliance with applications standards and Service Level Agreements (SLAs).
Helps to define the company’s standard development process (SDLC).
Periodically works with Application Developer Team Lead to review and revise company’s standard development process (SDLC) in alignment with changes in corporate and business goals, and as required by IT architectural standards.
Technology Evaluation and Research :
Evaluates new application packages and tools and performs research on best practices.
Provides recommendations for solutions.
May prepare and present formal training to IT staff, as needed.
Coaching / Mentoring :
Provides technical coaching and mentoring to less-experienced team members.
Provides technical guidance or system process expertise.
Develops reports and presentations for senior management, as needed.
KNOWLEDGE, SKILLS AND ABILITIES :
Bachelor’s degree in Programming / Systems, Computer systems of other related field. Or equivalent work experience.
Has a broad level of understanding surrounding information systems and application architecture standards. Ability to analyze and interpret complex problems or processes that span multiple business areas.
Ability to identify and understand requirements and develop alternate solutions.
Typically requires 5 7 years of application programming and analysis experience.
Experience designing, developing and testing applications using proven or emerging technologies.
Willingness and ability to travel domestically and internationally, as necessary.
Effective in written and verbal communication in English.