Now hiring: Software Developer

TITLE: Software developer
POSITION REPORTS TO: Principal Investigator

If interested, please send a CV, cover letter, and contact information for three references to CareersMolOnc [at] bccrc [dot] ca, and quote job number 2014SS01 in the subject line.


A position is available to develop cutting-edge web-based visualization software in a world-class cancer research institute. Placed in the lab of Dr. Sohrab Shah, the project entails developing a web application that enables scientists and clinicians to dynamically visualize and interpret large-scale cancer genomics data. The successful candidate will play a central role in planning, prototyping and iteratively refining the web-based visualization system consisting of a JavaScript front-end and database supported back-end in a Linux environment. This role in a multi-disciplinary research environment demands close collaboration with other programmers and database developers on the back-end components, and with end-user scientists on improving the user experience. This work will be used to support leading edge research in identifying genomic alterations that drive breast and ovarian cancers. The end product will be a software system that is distributed to the broader international cancer research community.


  • Minimum of a bachelors degree in computer science or relevant field
  • 3+ years professional programming experience or the equivalent combination of education and experience
  • 2+ years experience working in a Linux/UNIX operating system environment
  • Strong verbal communication skills and willingness to work in a team
  • Experience with front-end web technology (JavaScript/HTML5/CSS), popular JavaScript libraries and frameworks (e.g. jQuery, AngularJS), and event-driven programming
  • Familiarity with UI design patterns and principles
  • Experience building and integrating back-end web services (using JSON, AJAX, REST) and interfacing with a database
  • In-depth knowledge of object oriented programming concepts and design patterns
  • Proficiency with Python
  • Familiarity with distributed version control systems (e.g. git) and Agile development methods
  • Familiarity with the following is an asset:
    • Statistical plotting (e.g. in R or matplotlib) and custom visualization creation (e.g. in D3 or Processing)
    • Challenges of and scalable solutions to interacting with large data sets (e.g. database optimizations)
    • Bioinformatics tools and genome databases (e.g. IGV or the UCSC genome browser, its utilities and data resources)