The primary accountability of the Programmer Analyst III – Custom Applications includes all aspects of the application development life cycle. The individual must have extensive development experience working with complex custom built applications. The individual must have extensive programming experience working with a wide variety of software and technologies.
This role works closely with architects, business analysts and business partners to understand and participate in the business requirements definition, technical designs, development, testing, and implementation. The Programmer Analyst III will participate in project and operational activities to meet team, department, and corporate objectives.
The individual must be able to work independently, prioritize and multitask in a dynamic environment, adapt quickly to change and manage multiple projects simultaneously. The individual must be able to show leadership skills and have the ability to lead small teams in design and development efforts. Strong analysis and interpersonal skills are a necessity.
Delivery Capability
- Implement and document complex solutions from technical designs of high complexity.
- Identify options for potential solutions and assess them for both technical and business suitability.
- Participate in the analysis and development of business requirements and the design of solutions in medium to large complex projects or requests in collaboration with IS and business partners. Responsible for translating complex technical designs into high quality code.
- Understand and give guidance on implementation of concepts of unit testing, system testing, performance testing, and user acceptance testing.
- Understand concepts of project management, may be responsible for the definition of software development plans including scoping, scheduling and implementation.
- Make key decisions, include determining the most appropriate platform to complete application development requests and code quality assurance for other programmers.
- Develop processes and procedures to organize workflow that ensures quality, precision and timeliness of outputs.
- Handle multiple demands and competing priorities while ensuring deliverables are met.
- Prepare accurate estimates for all development related tasks and can validate estimates of others.
- Provide leadership including technical mentoring/coaching and support for other team members.
- Provide recommendations on the use of technology to further Servus goals and objectives.
Support and Maintenance
- Responsible for the maintenance of production applications.
- Monitor application performance through testing, schedule and perform application improvements and upgrades as required.
- Serve as an escalation point for the Service Desk on applications supported by the team. Liaise with IS and business partners to assist in resolving reported problems.
- Possess troubleshooting and problem-solving skills to deliver solutions to problem areas of high complexity and can provide business and / or operational impact assessment. Can communicate potential solutions and information as required.
- Major contribution in the creation of disaster recovery plans pertaining to supported applications.
- Liaise with vendors for efficient implementation of new software products or systems and for resolution of any adoption issues.
- Assist in the development and maintenance of system documentation, help files, user manuals and guidelines.
Communication & Team Effectiveness
- Manage group situations with business partners and provide facilitation of meetings.
- Communicate clearly, both written and verbally.
- Communicate effectively with non-technical staff and with members of interdisciplinary teams.
- Clearly explain problems, potential solutions and status to business partners and peers.
- Manage own time and schedule within overall project plan, can effectively control scope of own work, as well as the work of more junior personnel.
- Timely communication, escalates own issues and potential team issues appropriately to leads or managers.
- Complete individual status reports on time and to the detail required, may be responsible for reporting at a team or project level.
- Active participant, contributor and leader in group discussions. Performs as an effective team member within the team and department.
- Provide technical mentorship to team members.
- Flexible and adaptable in regards to learning and understanding new technologies.
- Ensure follow-up communication with IS and business partners to validate functionality of delivered applications, functions and bug fixes.
- Train end users to operate new or modified user solutions.
Standards
- Maintain a familiarity and working knowledge of operations policies, procedures, operating practices and products.
- Maintain familiarity of Servus Credit Union business strategies and objectives.
- Adhere to legislation and security procedures as they pertain to the responsibilities of the team.
- Understand and adhere to application development standards, conventions and guidelines, as defined. May be responsible for the development of standards, conventions, and guidelines.
- Is responsible for research, recommend and apply emerging application development software products, languages and technologies in support of development efforts.
- Is responsible for applying industry best practices in application development, architectures and SDLC methodologies through the recommendation and development of standards and best practices for the team.
Experience:
- Seven or more years and considerable skill in applying programming concepts and constructs, can train others.
- Seven or more years and considerable skill in applying database concepts (normalization, SQL query language constructs), can train others.
- Extensive knowledge of Microsoft Office product line and opportunities.
- Seven or more years and broad knowledge of and familiarity with the systems development life cycle (SDLC) and related practices and techniques.
- Must have demonstrated user interaction/support experience and excellent verbal and written communication skills.
- Seven or more years of extensive programming experience working with complex .NET applications, web technologies (HTML5, CSS, XML, jQuery, JavaScript, MVC, ASP.NET), Microsoft SharePoint, Microsoft Team Foundation Server, Microsoft Visual Studio, Microsoft IIS and Microsoft SQL Server.
- Financial sector experience (preferably in banking) is considered to be an asset.
Education and Training:
- Post-secondary education plus seven or more years of job related experience or an equivalent combination of education and experience.
- Experience working with ITIL (preference for ITIL certification) considered an asset.
Licenses/Certificates:
- Technical designations are valued but not required at this time.
Any other special requirements necessary to do the job:
Note that Servus operates a multi-regional de-centralized corporate model which could result in teams in geographical dispersed locations.
Weekend or shift work, available to travel, on-call, etc.
The business may from time to time ask for branch and/or department support for special projects and/or areas experiencing staff shortages. All employees may be asked to volunteer to assist in areas of need during these times. These assignments could result in a change of hours, location, and/or travel.
Please note: There are three positions available, one 12-month temporary and two full-time permanent.
Why Servus Credit Union? We live our values in how we do business and how we treat our employees. Servus Credit Union is one of Canada’s 50 Best Managed Companies. Servus is committed to being socially responsible and living the co-operative values. Through our operations, we strive to make a positive impact on our economy, the environment and society. We know that our employees are our most valuable assets so we offer ongoing growth and career advancement and we reward employees for their hard work and achievements.