hirly

UBC

Programmer Analyst I

UBC Vancouver Campus - Vancouver, BC, Canada

See how you match this job — and similar ones. Free.

Upload your resume and hirly scores it against this role at UBC first, then against similar open jobs, and shows where you fit and why.

PDF or DOCX, up to 12MB. No sign-up to see your matches.

Get past the screening software and onto a recruiter's desk

hirly rewrites your resume for this job — matching the keywords and skills in the posting, moving your most relevant experience to the top, and writing a cover letter to fit. About 30 seconds.

  • Keywords matched to this posting
  • Fit score before you apply
  • Cover letter included
Tailor my resume for this job →

Apply from your AI assistant

Connect hirly to Claude and ask it to apply to this job. hirly tailors your resume, fills the employer’s form and asks before sending. ChatGPT: manual setup today.

Some employer sites stop an application at a CAPTCHA or sign-in and hand it back with a link. Applying needs a paid plan. Works with any assistant that supports MCP.

hirly's read of this role

Role family
Engineering
Seniority
Mid level
Stated salary
$10,292 per year
Country
CA
Work mode
On-site / unstated
First seen by hirly
27 Oct 2026

Derived automatically from the posting. Upload your resume above to see how the role scores against it.

the posting

Job Title

Programmer Analyst I

Job Category

M&P - AAPS

Job Profile

AAPS Salaried - Information Systems and Technology, Level C

Job Family Group

Staff - Non Union

Department

LTIC | Learning Analytics

Compensation Range

$7,158.42 - $10,292.25 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.

Job End Date

Ongoing

Posting End Date

November 3, 2026

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

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 supports the Learning Technology Hub with the design, development, and support of learning technology solutions for campus-wide teaching & learning activities. The Programmer Analyst I focuses on smaller software modules and system-to-system integrations as well as contributing to larger software systems available throughout the university. This role contributes to AI-powered and data-driven learning-technology solutions — including building platforms and shared services that other teams and developers build on, as well as retrieval-augmented generation (RAG) chatbots and conversational assistants, agentic AI tools and workflows, cloud-hosted services, and data pipelines and analytics — in support of UBC’s role in the responsible use of Artificial Intelligence in education. We are looking for a curious, self-directed developer who takes initiative, learns new tools quickly, and is comfortable working at the frontier of rapidly evolving AI technology.
  • 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 the Software Innovation Technical Lead at the UBC Learning Technology Innovation Centre. Works under the direction of Solutions Architects, Programmer Analysts, Senior Managers, Managers, and others.

  • Work Performed
  • Specific Duties:
  • Programs solutions based on core teaching and learning applications; advises 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 environments.
  • Builds and maintains platforms and shared services — reusable infrastructure, developer tooling, and self-service capabilities — that enable teams across UBC to build and deploy learning technology solutions.
  • Builds and integrates APIs and services, including APIs that power retrieval-augmented generation (RAG), chatbots and conversational assistants, and Model Context Protocol (MCP) tools/servers, to extend UBC’s teaching and learning ecosystem.
  • Designs and builds agentic AI tools and workflows and adopts AI-assisted development tooling to accelerate delivery, applying the responsible use of Generative AI and Large Language Models.
  • Contributes to data pipelines and data-lake / analytics infrastructure — ingestion, ETL/ELT, and producing analytics-ready datasets that support reporting and AI/ML use cases.
  • Implements data-governance controls, including row-level security (RLS) and access controls, consistent with University privacy and security policy.
  • Evaluates functional requirements and system features of UBC’s enterprise teaching and learning platforms.
  • 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.
  • Designs, develops, tests, maintains, and supports enterprise learning technology solutions in support of faculty teaching and learning goals.
  • Participates in team practices including refinement, estimation, and planning.
  • Conducts demos of features and fixes for faculty and other campus stakeholders.
  • Contributes to documenting our processes, designs, and guidelines.
  • Supports continuous improvement activities.

Core Duties:

  • Programs software applications and services.
  • 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.

Core Competency

  • Collaboration — Takes initiative to actively participate in team interactions. Without waiting to be asked, constructively expresses own point of view or concerns, even when it may be unpopular. Self-directs and seeks out work that adds value rather than waiting for direction. Ensures that the limited time available for collaboration adds significant customer value and business results.
  • Communication for Results — Converses with, and writes to, peers in ways that support transactional and administrative activities. Seeks and shares information and opinions. Explains the immediate context of the situation, asks questions with follow-ups, and solicits advice prior to taking action.
  • Problem Solving — Investigates defined issues with uncertain cause. Solicits input in gathering data that help identify and differentiate the symptoms and root causes of defined problems. Suggests alternative approaches that meet the needs of the organization, the situation, and those involved. Resolves problems and escalates issues with suggestions for further investigation and options for consideration as required.
  • Accountability — Checks assumptions about mutual expectations and clarifies standards of overall performance. Checks the scope of responsibilities of self and others. Monitors day-to-day performance and takes corrective action when needed to ensure desired performance is achieved.
  • Business Process Knowledge — Defines routine, integrated processes. Documents processes using basic formal process charting techniques. Applies process definitions and flows to work performed. Identifies process bottlenecks and contributes suggestions for process improvement.
  • Information Systems Knowledge — Possesses a basic understanding of the strategy, structures, processes, and procedures of the enterprise in its relationship with the business and its activities. Troubleshoots in r
Original posting on UBC's site ↗

Listed on hirly, a job board. hirly is not the employer: UBC is hiring for this role.

Browse similar roles

Want this one?

Upload your resume and hirly rewrites it for this job and writes the cover letter — in about thirty seconds, before you sign up.

Tailor my resume for this job