Software Engineer - Lead Developer

Remote (Canada) or on-site, Montreal

Job brief

As the Lead Developer, you will be developing web services & databases, and laying out the architecture of a highly scalable, highly available, and globally distributed data management and personalization engine. You will also contribute to core technology decisions and vendor selection where appropriate, and help establish, shape, and support engineering team growth.

We’re looking for self-starters, with demonstrable experience and exceptional communication skills for this role. Being able to effectively balance idealism with pragmatism, striving to constantly learn, demonstrating passion for one’s craft, attentiveness to details, eagerness, and humility are some of the other key character traits that we look for. Startup experience will be considered a plus.

Technical skills and experience

Mastery, experience and working knowledge with any or all of the following will be considered either a must or a plus:

  • The Go Programming Language and its various libraries
  • Database technologies including relational databases (PostgreSQL in particular), columnar databases, redis, etc.
  • Distributed systems development
  • Functional language programming experience
  • Design and implementation of operational machine learning systems
  • Data processing systems and working knowledge of Kafka, HDFS, Spark, including Spark streaming
  • Cloud computing platforms, particularly the Google Cloud Platform (GCP) and Amazon Web Services (AWS)
  • Infrastructure as code and containerization and configuration management (Terraform, Kubernetes, Docker, etc.)
  • JavaScript and related web libraries and tooling (in particular, jQuery, React)
  • Telemetry solutions instrumentation and deployment
  • Working experience with Linux and aspects of systems operation & administration
  • Experience leading in a high growth and rapidly evolving team

Your responsibilities will include: 

  • Develop, deploy, and operate the Optable platform
  • Develop, deploy, and operate supporting web services, databases, distributed systems, front-ends and back-ends, etc.
  • Contribute to core technology decisions and vendor selection
  • Help establish, shape, and support the engineering team growth
  • Collaborate with team members on product definition and architecture

Apply now

* Add some disclaimer text here.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.