Database Developer

A position is open immediately for a database developer and administrator to work with our interdisciplinary team of researchers and software developers at the British Columbia Cancer Agency (BCCA). We are seeking a creative, experienced, and dedicated individual to play a key role in developing and maintaining our data storage solutions (SQL and noSQL databases) and data archival infrastructure, including migration to cloud computing solutions. The successful candidate will join Dr. Sohrab Shah’s computational cancer biology research lab, and work closely with the larger systems team at the BCCA as well as other software developers, staff scientists, post-doctoral fellows and graduate students in the lab operating at the leading edge of the field of cancer genomics. Our laboratory has recently made meaningful advances in understanding of tumour evolution and the software platforms developed in the lab will be used by world-leading scientists at the BC Cancer Agency and international collaborators to gain insight into how cancers initiate, develop and acquire resistance to treatment. More information on the research we conduct can be found here:

Working independently and reporting to the Principal Investigator in Molecular Oncology or designate, and in conjunction with investigators within the BCCA, UBC and internationally.

Design, implementation, and maintenance of data storage solutions

    • Relational databases, PostgreSQL, MySQL
    • NoSQL databases
    • Search indices, elasticsearch
    • Build and maintain a lab information management (LIMs) database
  • Implement data loading software (Python)
  • Design and implement data access APIs for use in web applications

Accountable for the generation of quality software and maintainable computing infrastructure that will have significant research progress implications.

Supervision from Principal Investigator or designate. Results reviewed for achievement of overall objectives.

May help to supervise undergraduate trainees and/or junior software developers.



  • Undergraduate degree in a relevant discipline including computer science, computer engineering or information technology (degree in computer science preferred)
  • Minimum of 2+ years experience or equivalent combination of education and experience
  • Experience with design and administration of relational and non-relational databases
  • Working knowledge of query optimization strategies and database performance tuning
  • Proficiency working in Linux environments
  • Experience with Python
  • Familiarity with distributed version control systems (e.g. git)
  • Strong verbal/written communication skills and willingness to work in a team


  • Professional programming experience in a commercial software development environment
  • Familiarity with integrating databases with web applications
  • Hands-on experience with large data sets and associated scalability challenges
  • Experience with search technologies (e.g. Elasticsearch)
  • Working knowledge of cloud solutions (e.g. Microsoft Azure)

To apply: please send your CV and cover letter to, please include the position title in the subject line.