Skip to content

Programmer Analyst I

University of British Columbia

Vancouver, CAonsite$81k-$116k/yrPosted Jun 5, 2026

Skills

kubernetesjavascriptdockergithubpythonazuremysqlcicdperlgooglecloudawscssphp

About the role

Staff - Non Union

Job Category

M&P - AAPS

Job Profile

AAPS Salaried - Information Systems and Technology, Level C

Job Title

Programmer Analyst I

Department

LTIC | Incubator

Compensation Range

$6,747.50 - $9,701.42 CAD Monthly

The Compensation Range is the span between the minimum and maximum base salary for a position. The midpoint of the range is approximately halfway between the minimum and the maximum and represents an employee that possesses full job knowledge, qualifications and experience for the position. In the normal course, employees will be hired, transferred or promoted between the minimum and midpoint of the salary range for a job.

Posting End Date

June 12, 2026

Note: Applications will be accepted until 11:59 PM on the Posting End Date.

Job End Date

Ongoing

This position is expected to be filled by promotion/reassignment and is included here to inform you of its vacancy at the University.

At UBC, we believe that attracting and sustaining a diverse workforce is key to the successful pursuit of excellence in research, innovation, and learning for all faculty, staff and students. Our commitment to employment equity helps achieve inclusion and fairness, brings rich diversity to UBC as a workplace, and creates the necessary conditions for a rewarding career.

Job Summary

The Programmer Analyst I designs, develops, and supports learning technology solutions for faculty-specific and university-wide teaching & learning activities. The Programmer Analyst I leads faculty or department scale projects architected by the LTIC Incubator lead or LTIC solutions architects, focuses on software modules and system-to-system integrations, as well as contributing to larger software systems available throughout the university.

Organizational Status

The Learning Technology Innovation Centre is a central unit that supports the UBC community in using and developing learning technology solutions for face-to-face classrooms, hybrid courses, and fully-online learning. The unit supports self-developed, community-developed, and vendor-supplied solutions, from small-scale pilots through to campus-wide deployments.

Reports to Manager, Application Development and Web Strategy, in the UBC Learning Technology Innovation Centre. Works under the direction of Solutions Architects, Programmer Analysts, Leads, Managers, and others.

Work Performed

Specific Duties:

Programs solutions based on core teaching and learning applications; leads programmers developing faculty and/or department specific modules; advises through face-to-face interaction, virtual, phone and email/ticketing system.

Manages projects to implement learning technology solutions in cloud-based infrastructure including Educloud and vendor-provided environments.

Evaluates functional requirements and system features of UBC's enterprise teaching and learning platforms (e.g., Blogs, CMS, Wiki, H5P Open Hub, TLEF Applications).

Designs solutions to extend system capabilities and develop integrations for tools into UBC's teaching and learning ecosystem.

Provides technical guidance to developers' community at UBC including providing proactive recommendations in an agile manner.

Implements the latest standards in accessibility, security, privacy, equity and in other areas as regulated by University policies.

Documents code for internal and Open Source distribution and creates user manuals and documentation for end users.

Works collaboratively, as part of an Agile software development and learning technology operations team.

Participates in team practices including refinement, estimation, and planning.

Conducts demos of features and fixes for faculty and other campus stakeholders.

Ensures that learning applications meet interoperability standards.

Contribute to documenting our processes, designs, and guidelines.

Support continuous improvement activities.

Core Duties:

Programs software applications and services.

Supports the university community that use the services we provide.

Conducts testing and debugging to ensure application meets specifications.

Prepares programming documentation for supported programs.

Supports software development lifecycle, and applies and follows appropriate programming/development methodologies and best practices.

Integrates applications with UBC Campus Wide Login systems using Shibboleth as well as Learning Management Systems using LTI and APIs.

Maintains appropriate professional designations and up-to-date knowledge of current information technology techniques and tools.

Participates in project planning and implementation.

Builds and maintains good working relationships and collaborates with others to achieve client objectives.

Performs other related duties as required.

Consequence of Error/Judgement

Contributes to decisions regarding the design and development of learning technology solutions for the university. Errors in judgment that impact the security and privacy of data may have a significant impact in achieving the strategic goals and vision of the university.

Supervision Received

Works with moderate latitude. Work is reviewed in terms of achievement of desired results. Receives guidance from senior developers, team leads, and solutions architects.

Supervision Given

Works in collaboration with a variety of roles that may include a combination of academic faculty and instructors, instructional support staff, course designers, learning technologists, researchers, and other technical staff. May manage co-op students and/or student employees engaged in software development activities.

Minimum Qualifications

Undergraduate degree in a relevant discipline. Minimum of three years of related experience, or the equivalent combination of education and experience.

Willingness to respect diverse perspectives, including perspectives in conflict with one’s own.

Demonstrates a commitment to enhancing one’s own awareness, knowledge, and skills related to equity, diversity, and inclusion.

Preferred Qualifications

Experience with full-stack development.

Experience with Python, JavaScript, PHP, and/or Perl.

Experience with scripting languages and version control (Git).

Effective problem-solving skills.

Excellent written and verbal communication skills.

Experience in a mixed software development and software maintenance role.

Experience in application and software development related to learning technologies.

Experience in building integrations with SAML, LTI, and APIs.

Expertise in plug-in development for WordPress, MediaWiki, and similar CMS platforms.

Professional HTML development including XHTML, CSS, JavaScript, Ajax, and demonstrated understanding of PHP and MySQL.

Expertise in authentication module development, preferably using SAML 2.0.

Experience in building, deploying, and managing containerized applications using Docker and Kubernetes.

Experience in building, deploying, and managing solutions using cloud-managed services (e.g. AWS, Azure, GCP, Educloud).

Experience with CI/CD tools (e.g. GitHub Actions, AWS CodePipeline)

Experience working with relational databases.

Understanding of cross-platform compatibility issues, networking and firewall considerations.

Client services training and a service-oriented focus.

Ability to work independently, multi-task and work effectively under pressure to meet deadlines.

Demonstrated ability to explain complex concepts in layman's language.

Compensation

This Software Engineer role pays $81k-$116k/yr. Within typical range for software engineer roles in Canada.

Questions about this role

  • How do I apply to this Programmer Analyst I role at University of British Columbia?

    Click "Apply with AI Applyd" above. We auto-fill the application from your resume and answer screening questions in seconds. No copy and paste, no juggling tabs.

  • What's the typical salary for Software Engineer in Canada?

    Compensation for Software Engineer roles in Canada varies widely by seniority, employer size, and remote vs onsite arrangement. Check the salary range on this listing when published, or browse our Software Engineer hub for Canada medians across recent openings.

  • How fast does AI Applyd auto-apply?

    Most applications complete in under 90 seconds. You can track the status in your dashboard and watch the screenshot proof land the moment the application submits.

  • What ATS does University of British Columbia use?

    AI Applyd supports Greenhouse, Lever, Ashby, Workday, iCIMS, SmartRecruiters, LinkedIn Easy Apply, and most other ATS platforms. If we can submit through the platform, we do.

Want AI Applyd to auto-apply to roles like this?

We tailor your resume per posting, fill the forms, and track replies for you.