Machine Learning Engineer
- Toronto, ON, Canada
- Greater Toronto Area, Canada, Canada
Full-time
Applications open in a new tab.
Job details
- Job type
- Full-time
- Apply by
- Posting language
- English
- Posted
Original job description
About Sapphire Stream Technology
Sapphire Stream Technology (SST) is a technology and engineering solutions company specializing in software development, AI and machine learning, semiconductor technologies, automotive solutions, and advanced engineering services.
We collaborate with leading global technology companies to deliver innovative engineering solutions and support the development of next-generation products.
As we continue to expand our presence in North America, we are looking for talented engineers who are passionate about emerging technologies, solving complex technical challenges, and contributing to advanced AI and computing solutions.
Position Overview
SST is seeking a Machine Learning Software Engineer – GPU & AI Optimization to join our growing engineering team in Markham, Ontario.
The successful candidate will work on advanced machine learning software development, GPU computing, and performance optimization for next-generation computing platforms.
This role involves developing and optimizing machine learning kernels, leveraging agentic AI workflows to improve engineering productivity, and collaborating with cross-functional engineering teams to enhance software performance, computational efficiency, and power optimization.
We are looking for an enthusiastic, technically strong individual who enjoys working on complex engineering challenges and exploring innovative approaches to AI and GPU software development.
Key Responsibilities
- Develop, implement, and optimize machine learning software, GPU kernels, and computational workloads for advanced computing platforms.
- Leverage agentic AI tools and workflows to accelerate software development, testing, debugging, and optimization.
- Support software and workload development across pre-silicon and post-silicon development environments.
- Design and maintain efficient machine learning kernels, kernel fusion techniques, and performance optimization solutions.
- Develop clean, maintainable, and testable C++ and Python code, including microbenchmarks and automated regression tests.
- Optimize GPU execution parameters, including tile sizes, block configurations, and memory layouts, to improve latency, throughput, and power efficiency.
- Support runtime integration, deployment, and performance tuning across machine learning inference frameworks and computing platforms.
- Analyze GPU performance using profiling tools and performance metrics to identify bottlenecks and optimization opportunities.
- Collaborate with software, hardware, runtime, and machine learning engineering teams to improve system-level efficiency.
- Participate in technical design discussions, code reviews, debugging, and continuous improvement initiatives.
- Contribute to the development of innovative engineering solutions for emerging AI and high-performance computing applications.
Required Qualifications
- Bachelor's or Master's degree in Computer Science, Computer Engineering, Software Engineering, Computer Systems, or a related technical discipline.
- Strong programming proficiency in C++ and Python.
- Solid understanding of software engineering principles, algorithms, data structures, and performance optimization.
- Knowledge of machine learning concepts, numerical computing, and linear algebra.
- Experience developing, debugging, and testing complex software applications.
- Strong analytical and problem-solving abilities.
- Excellent communication, collaboration, and teamwork skills.
- Ability to work effectively in a fast-paced, collaborative engineering environment.
Preferred Qualifications
- Practical experience using agentic AI workflows, AI coding assistants, or AI-driven development tools to improve engineering efficiency.
- Experience with GPU computing or parallel programming technologies such as CUDA, HIP, or OpenCL.
- Familiarity with GPU graphics programming technologies such as DirectX or Vulkan.
- Experience developing and optimizing machine learning kernels and GPU-accelerated workloads.
- Understanding of machine learning architectures, including Transformers, U-Nets, and Convolutional Neural Networks (CNNs).
- Familiarity with pre-silicon software development or hardware emulation platforms such as FPGA, ZeBu, or Veloce.
- Experience with performance profiling tools and GPU performance metrics, including occupancy, memory bandwidth, FLOPs, and roofline analysis.
- Knowledge of kernel fusion, memory optimization, parallel execution, and high-performance computing.
- Experience with machine learning inference frameworks, runtime integration, or production software deployment.
- Exposure to hardware-software co-optimization and power-efficient computing.
Why Join SST?
- Work on advanced AI, machine learning, and GPU computing technologies.
- Contribute to challenging engineering projects involving next-generation computing platforms.
- Collaborate with experienced engineering professionals and global technology teams.
- Gain exposure to emerging technologies in semiconductor engineering and high-performance computing.
- Be part of SST's growing North American engineering organization.
Work Location
Markham, Ontario, Canada – Onsite
This position requires working onsite and collaborating closely with engineering teams.
Equal Opportunity Employer
Sapphire Stream Technology is committed to providing an inclusive and respectful workplace. Employment decisions are based on qualifications, experience, and business requirements, in accordance with applicable employment and human rights legislation.
More about this job
Responsibilities
Develop and optimize machine learning software, GPU kernels, and computational workloads, including kernel fusion, execution tuning, and performance analysis. Use agentic AI workflows and collaborate with software, hardware, runtime, and machine learning teams to improve performance, efficiency, and power optimization across pre-silicon and post-silicon environments.
Requirements
A bachelor's or master's degree in computer science, computer engineering, software engineering, computer systems, or a related discipline is required, along with strong C++ and Python skills. Candidates should understand software engineering, algorithms, data structures, machine learning, numerical computing, and linear algebra, and bring strong analytical, problem-solving, communication, and teamwork abilities.
Skills
- C++
- Python
- Machine Learning
- GPU Computing
- GPU Kernel Optimization
- CUDA
- HIP
- OpenCL
- Parallel Programming
- Performance Profiling
- Kernel Fusion
- Linear Algebra
- Machine Learning Inference
- AI Coding Assistants
- DirectX
- Vulkan
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
- Data & Analytics
Keywords
- Machine Learning
- GPU Computing
- C++
- Python
- CUDA
- HIP
- OpenCL
- DirectX
- Vulkan
- Agentic AI Workflows
- AI Coding Assistants
- GPU Kernels
- Kernel Fusion
- Performance Optimization
- Performance Profiling
- Pre-Silicon Development
- Post-Silicon Development
- FPGA
- ZeBu
- Veloce
- Transformers
- U-Nets
- Convolutional Neural Networks
- Machine Learning Inference
- Runtime Integration
- Memory Bandwidth
- Occupancy
- Roofline Analysis
- High-Performance Computing
- Hardware-Software Co-Optimization