Programmer Analyst I

University of British ColumbiaVancouver, BC
CA$6,748 - CA$9,701

About The Position

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.

Requirements

  • 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.

Nice To Haves

  • 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.

Responsibilities

  • 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.
  • 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.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service