Machine Learning Developer
- Waterloo, ON, N2L 0C7, Canada
Full-time
Applications open in a new tab.
Job details
- Job type
- Full-time
- Posting language
- English
- Posted
Original job description
Senstar is looking for a Machine Learning Developer to help bring machine learning from research into real-world applications on embedded edge platforms.
This is an opportunity for an early-career developer who enjoys working with machine learning, software development, automation, and embedded technologies. You'll work closely with an experienced ML researcher, helping build the tools, processes, and workflows that support everything from data collection and model training to optimization and deployment.
The role focuses on making machine learning development more efficient, reproducible, and reliable, while providing opportunities to develop hands-on experience with model optimization and deployment on constrained hardware.
Responsibilities
- Build and maintain workflows for data collection, labeling, curation, and dataset versioning.
- Develop and improve annotation workflows for video, time-series, and other sensor data using tools such as Label Studio.
- Create reproducible training, validation, and testing datasets, maintaining traceability between data, experiments, and model versions.
- Automate model training, evaluation, regression testing, and packaging.
- Develop tools and processes that improve the efficiency and reliability of machine learning development.
- Collaborate with an experienced ML researcher on model training, evaluation, calibration, and optimization.
- Support the optimization and deployment of machine learning models to Texas Instruments embedded platforms, including TIDL and related edge inference runtimes.
- Analyze and improve inference performance, including latency, memory usage, accelerator utilization, and model accuracy.
- Develop Python and C++ tools to integrate, validate, benchmark, and deploy machine learning models.
Required Skills & Experience
- Strong programming skills in Python and C++.
- Solid understanding of machine learning fundamentals.
- Experience with PyTorch, TensorFlow, or similar machine learning frameworks.
- Familiarity with Linux development environments.
- Experience working with datasets, data-processing pipelines, and model evaluation.
- Understanding of common machine learning evaluation metrics, including precision, recall, F1, and confusion matrices.
- Strong software development practices, with an interest in building maintainable, reusable, and automated tools.
- Strong problem-solving skills, attention to detail, and the ability to work collaboratively with technical teams.
- A Bachelor's or Master's degree in Computer Science, Computer Engineering, Electrical Engineering, Machine Learning, Artificial Intelligence, or a related field is preferred.
This position is well suited to a recent graduate or someone early in their career. Relevant academic projects, internships, research experience, and personal projects are highly valued.
Nice to Have
- Embedded systems or edge AI, including Texas Instruments processors and TIDL.
- ONNX, model conversion, quantization, pruning, or compression.
- Computer vision, signal processing, or time-series analysis.
- Label Studio or similar data annotation platforms.
- MLflow, Weights & Biases, DVC, or similar ML lifecycle tools.
- Docker, CI/CD, and automated development workflows.
- GPU or hardware-accelerated inference.
Inclusion & Accessibility
At Senstar, we are committed to fostering an inclusive, accessible workplace that values a wide range of backgrounds, perspectives, and skills. We believe that diversity and inclusion make us stronger, more innovative, and more competitive. If you require an accommodation at any stage of the recruitment or hiring process, please let us know.
AI
We may use technology, including AI-based tools, to support our recruitment process (for example, to compare applications against job requirements or to summarize interview notes). All hiring decisions are made by our hiring teams, not by automated systems.
More about this job
Responsibilities
The developer will build and maintain workflows for data collection, labeling, and model training while collaborating on the deployment of machine learning models to embedded edge platforms. They are responsible for automating model evaluation and developing tools to improve the efficiency and reliability of the machine learning development lifecycle.
Requirements
Candidates should have strong programming skills in Python and C++ along with a solid understanding of machine learning fundamentals and frameworks like PyTorch or TensorFlow. A Bachelor's or Master's degree in a relevant technical field is preferred, and the role is well-suited for early-career professionals with experience in data processing and embedded systems.
Skills
- Python
- C++
- Machine Learning
- PyTorch
- TensorFlow
- Embedded Systems
- Edge AI
- Computer Vision
- Data Pipelines
- Model Optimization
- Linux
- Label Studio
- CI/CD
- Docker
- Signal Processing
- Inference
Visa sponsorship
Not detected in the job text
Categories
- Technology
- Software
- Engineering
- Data & Analytics
- Science & Research
Keywords
- Machine Learning
- Embedded Systems
- Edge AI
- Python
- C++
- PyTorch
- TensorFlow
- Computer Vision
- Signal Processing
- TIDL
- Label Studio
- MLflow
- Weights & Biases
- DVC
- Docker
- CI/CD
- Model Quantization
- Model Pruning
- Inference
- Linux
- Data Versioning
- Regression Testing
- Automation
- Latency Optimization
- Memory Usage
- Accelerator Utilization
- Time-series Analysis
- Software Development
- Model Deployment
- Embedded Platforms