Senior Backend Software Developer
Senior Backend Software Developer
Toronto, Ontario, Canada
This job allows you to work remotely†
Our client is an innovative cancer research institute located in downtown Toronto. They are addressing significant challenges in cancer research with multi-disciplinary, multi-institutional teams. New discoveries to prevent, detect and treat cancer will be moved from the bench to practical applications in patients. Their team is growing quickly. They are innovative, dedicated professionals who bring expertise to each of their roles. They are looking for individuals interested in being part of a culture of excellence that will result in Ontario being recognized internationally as a leading jurisdiction for cancer research.
They're looking for passionate and talented software developers across the entire stack to join their Genome Informatics team to continue building cutting-edge tools and infrastructures used by researchers around the globe to fight cancer. They are growing and working with new projects and lots of exciting technologies.
Their open source applications handle vast amounts of data (2+ PB) and run on large compute environments. Designed and implemented by their in-house developers, they maintain a diverse set of tools and projects, from complex ETL systems to modern user interfaces. The Genome Informatics team has worked on a variety of projects including:
● ICGC-DCC - Their most mature and well-known project is a submission system comprised of an ETL pipeline and data portal coordinating cancer research on 89 projects with participants from all over the world. With ICGC-ARGO, ICGC is entering a new phase with an engaging and complex set of software engineering challenges ahead of them, such as providing researchers with access to 100ís of billions of genetic variants.
● Cancer Genome Collaboratory - A compute and storage cloud operated by the team which is progressively enhanced with more tools to assist researchers running analysis pipelines.
● Human Cancer Models Initiative Catalog - A searchable catalogue of cancer models.
● NCI Genomic Data Commons - A US-based unified data repository that enables data sharing across cancer genomic studies. The team was responsible for the development of the front-end and portions of the API.
As part of the Genome Informatics team, the successful candidate will be joining some of the above-mentioned projects, but also be contributing to Overture.bio, their suite of open-source components for big data genomic science in the cloud. They are looking for a passionate senior level candidate to join their agile development teams with a focus on back-end design and architecture. Specifically, you will be responsible for leading technical backend design discussions, documenting and implementing the agreed-to designs as well as communicating those designs to a Product Owner or Technical Business Analyst.
The interview process will involve virtual interviews with whiteboard questions aimed at challenging your skills and assessing your approach to new and complex problems. If you feel comfortable with some of the technologies mentioned below, please get in touch and tell us about yourself!
Required Qualifications:● 5+ years of experience building complex applications in a professional setting utilizing agile methodologies
● Able to confidently lead technical architecture discussions and help drive technical decisions within the team
● Clear and concise communication and collaboration skills. Explaining complex technical concepts to designers, product owners and other developers comes easily to you.
● Proven experience with all or some of the following technologies
○ Java 11
○ (lambdas, functional interfaces, streams API), Springboot
○ Databases: PostgreSQL, MongoDB, MySQL
○ Spring/Spring Boot
○ Strong understanding of design patterns
○ Microservice architecture
○ Node JS/Apollo/Express
○ Python/Django/Flask (Graphene)
○ Message broker tooling such as Kafka or RabbitMQ
Nice to haves:● Experience or exposure with the following technologies:
○ Cloud solutions: OpenStack, Amazon AWS, Microsoft Azure, Google Cloud
○ Build Systems: Maven, Webpack
○ Continuous integration: Travis, Jenkins
○ Functional Programming Concepts (in any language)
○ Reactive Programming Concepts/Frameworks/Libraries (Spring Webflux/Reactor, RxJava, Bacon.js, etc)