Machine Learning Engineer


About SafeToNet:

SafeToNet recently launched the world’s first real-time sext filtering software that safeguards children across all social networks and messaging apps. It can identify and filter inappropriate images and text and has built an intelligent keyboard that works on both iOS and Android. SafeToNet has aspirations to safeguard children from around the world and is working with a high number of mobile network operators who will sell or give the software away for free to their clients. SafeToNet is one of just 5 companies in the world to be part of the Go-Ignite accelerator programme which is a consortium of Orange, Singtel, Deutsche Telecom and Telefonica. They give access to over 1.2bn customers. The board and executive team is highly experienced and the company is well funded, with substantial support from London’s investor community (see ).

SafeToNet is expanding, with a new office in Waterloo for our Canadian subsidiary, SafeToNet Canada (previously VISR Inc.). Together with the University of Ottawa’s Natural Language Processing Lab, SafeToNet Canada is focused on developing the machine learning and natural language processing capabilities necessary for identifying complex child-safety and wellness issues in user generated digital communication data. Our Waterloo office is tasked with working together with our research partners to perform R&D and to productionize the resulting tech.


Job Description:

Social media generates a massive volume of data about online interactions on a daily basis. Such interactions provide useful information about users’ behaviours and psychological states that SafeToNet presents to parents where it is helpful for the child.  SafeToNet has an AI-based engine that constantly analyzes the patterns behind human written languages and produces psychological insights about user’s emotional and mental health. Our emerging technologies are used to promote the safety and welfare of children.

We are seeking an intermediate or senior machine learning engineer to help us create the next generation of SafeToNet technology. In this position you will write core data processing code primarily in C/C++ used in the machine learning pipeline that includes Tensorflow/PyTorch/Caffe models produced by our data-scientists, with a focus on efficiency. Your code will be deployed on device (Android/iOS) and in the cloud.  You will work closely with PhDs specializing in Machine Learning to optimize models within the full data-processing pipeline, assist in automation of model training and testing, serialization of model updates, and more.  

The ideal candidate should have a passion for quality, attention to detail, and a habit of continuous learning. Join an interdisciplinary team of PhD-level researchers and software developers at SafeToNet!

Roles and Responsibilities:

  • Write core data processing code primarily in C/C++ used in the machine learning pipeline.
  • Assist in the development of efficient algorithms that are designed to work in real-time and/or on large data sets.
  • Implement basic algorithms like maximum entropy in C/C++.
  • Help us to improve our tech stack.
  • Have a deep understanding of the analytical pipelines utilized in NLP.
  • Develop performance benchmarks and optimize code to improve results.
  • Analyze, interpret, and communicate results to the data science, engineering, product, and QA leads as required.


  • B.A., M.Sc. or Ph.D. degree in Computer Science or equivalent.
  • 5+ years of experience in a software engineering role.
  • High proficiency in C/C++ and at least three other common languages.
  • Ability to reason and communicate about complex data structures and implement well-designed, low-level code for manipulating them.
  • Ability to debug code in multiple environments (cloud, iOS, Android, OS X, Windows, etc.).

Technical Nice-to-Haves:

  • Experience with Android/iOS development
  • Experience with machine learning and deep learning methods.
  • Proficiency in statistical and quantitative analysis; i.e. regression, properties of distributions, and statistical tests.
  • Proficiency in Python or Java Scikit and one or more of some of the existing DL libraries such as Keras, TensorFlow, and PyTorch.
  • Experience with big data libraries, such as Pandas, and data visualization tools, such as SciPy, and matplotlib.

Why Work Here?

  • Make a difference to the safety of our youth in an increasingly challenging digital age
  • The salary and benefits that we offer are very competitive
  • We believe in the importance of work/life balance, supported by practices such as flex time and the ability to work from home when you have appointments, deliveries, etc…
  • We work in a high-end, boutique office space, centrally located in downtown Kitchener, a short walk from cozy bars, superb restaurants, unique supermarkets and more
  • Our front door is literally a 90-second walk from the “Innovation District” station for the soon-to-be-completed Light-Rail Transit system

How to Apply:

Candidates who are interested in applying are invited to submit their resume and cover letter, highlighting their work experiences and skills via email to

We thank all applicants for applying. Only selected applicants will be contacted.

SafeToNet welcomes applications from people with disabilities. Accommodations will be available on request for candidates throughout the entire recruitment and selection process.