Implement parallel programming techniques including multi-threading, vectorization, and GPU acceleration. * Ensure solutions are portable across Linux (primary) and Windows environments. Performance ...
Implement parallel programming techniques including multi-threading, vectorization, and GPU acceleration. * Ensure solutions are portable across Linux (primary) and Windows environments. Performance ...
Strong programming skills in Python and one of C/C++, Go, or Rust. Solid CS fundamentals: algorithms & data structures, operating systems, computer architecture, parallel programming, software ...
Strong programming skills in Python and one of C/C++, Go, or Rust. Solid CS fundamentals: algorithms & data structures, operating systems, computer architecture, parallel programming, software ...
Strong programming skills in Python and one of C/C++, Go, or Rust. Solid CS fundamentals: algorithms & data structures, operating systems, computer architecture, parallel programming, software ...
Strong programming skills in Python and one of C/C++, Go, or Rust. Solid CS fundamentals: algorithms & data structures, operating systems, computer architecture, parallel programming, software ...
Java Developer - Assistant Vice President
Mississauga, ON · On-site
CA$94K - CA$141K/yr
Understanding of concurrent and parallel programming, including threads, processes, synchronization, and handling race conditions. Knowledge of reactive programming for building asynchronous, event ...
Java Developer - Assistant Vice President
Mississauga, ON · On-site
CA$94K - CA$141K/yr
Understanding of concurrent and parallel programming, including threads, processes, synchronization, and handling race conditions. Knowledge of reactive programming for building asynchronous, event ...
Senior / Lead Data Engineer
Mississauga, ON · On-site +1
... parallel programming techniques. * Must be well versed in general infrastructure technology and understand public and private cloud concepts such as Software as a Service (SaaS), Platform as a ...
Senior / Lead Data Engineer
Mississauga, ON · On-site +1
... parallel programming techniques. * Must be well versed in general infrastructure technology and understand public and private cloud concepts such as Software as a Service (SaaS), Platform as a ...
Strong programming skills in Python and C/C++; experience with Go or Rust is a plus; solid CS fundamentals: algorithms & data structures, operating systems, computer architecture, parallel ...
Strong programming skills in Python and C/C++; experience with Go or Rust is a plus; solid CS fundamentals: algorithms & data structures, operating systems, computer architecture, parallel ...
Senior / Lead Data Engineer
Mississauga, ON · On-site +1
... parallel programming techniques. * Must be well versed in general infrastructure technology and understand public and private cloud concepts such as Software as a Service (SaaS), Platform as a ...
Senior / Lead Data Engineer
Mississauga, ON · On-site +1
... parallel programming techniques. * Must be well versed in general infrastructure technology and understand public and private cloud concepts such as Software as a Service (SaaS), Platform as a ...
Strong programming skills in Python and C/C++; experience with Go or Rust is a plus; solid CS fundamentals: algorithms & data structures, operating systems, computer architecture, parallel ...
Strong programming skills in Python and C/C++; experience with Go or Rust is a plus; solid CS fundamentals: algorithms & data structures, operating systems, computer architecture, parallel ...
Head of Toronto AI Center
Toronto, ON · On-site
Experience working with GPU, parallel programming, and Simulation environments is a plus * Experience in Android development and graphic rendering is a plus * Ability to work as a team, motivation ...
Head of Toronto AI Center
Toronto, ON · On-site
Experience working with GPU, parallel programming, and Simulation environments is a plus * Experience in Android development and graphic rendering is a plus * Ability to work as a team, motivation ...
Software Engineer, TT-Distributed
Toronto, ON · On-site
CA$100K - CA$500K/yr
Design and build distributed APIs enabling data-parallel and tensor-parallel AI workloads. * Leverage MPI-based technologies and related frameworks to scale programming models across multiple hosts ...
Software Engineer, TT-Distributed
Toronto, ON · On-site
CA$100K - CA$500K/yr
Design and build distributed APIs enabling data-parallel and tensor-parallel AI workloads. * Leverage MPI-based technologies and related frameworks to scale programming models across multiple hosts ...
Software Engineer, Acceleration Kernel Development
Toronto, ON · Hybrid
CA$100K - CA$500K/yr
A developer who loves high performance code, parallel algorithms, wrangling bits, optimizing compute, and making hardware fly. * Great in C/C++ and able to build fast, efficient code from the ground ...
Software Engineer, Acceleration Kernel Development
Toronto, ON · Hybrid
CA$100K - CA$500K/yr
A developer who loves high performance code, parallel algorithms, wrangling bits, optimizing compute, and making hardware fly. * Great in C/C++ and able to build fast, efficient code from the ground ...
GPU Compiler Engineer
Markham, ON · On-site
Parallel computing and highly parallel architectures. * Low-level systems programming. * Graphics APIs or compute environments. For more senior positions, we're interested in engineers with deep ...
Quick apply
GPU Compiler Engineer
Markham, ON · On-site
Parallel computing and highly parallel architectures. * Low-level systems programming. * Graphics APIs or compute environments. For more senior positions, we're interested in engineers with deep ...
Demonstrated experience planning, prioritizing, and coordinating parallel engineering efforts while balancing delivery, operational health, and long-term platform improvements. * Experience ...
Demonstrated experience planning, prioritizing, and coordinating parallel engineering efforts while balancing delivery, operational health, and long-term platform improvements. * Experience ...
Senior / Staff Software Engineer, High-Performance Onboard Algorithms
Toronto, ON · On-site +1
CA$148K - CA$260K/yr
... parallel computing architectures (e.g., CPU, GPU, specialized accelerators) and low-level system programming. - Collaborate with Waabi's autonomy and hardware teams to ensure the efficiency and ...
Senior / Staff Software Engineer, High-Performance Onboard Algorithms
Toronto, ON · On-site +1
CA$148K - CA$260K/yr
... parallel computing architectures (e.g., CPU, GPU, specialized accelerators) and low-level system programming. - Collaborate with Waabi's autonomy and hardware teams to ensure the efficiency and ...
Full Stack Developer
Mississauga, ON · On-site
Role We are looking for a Full Stack Developer who can build production software across the ... Run independent investigations or implementation tasks in parallel * Give each agent the right ...
Quick apply
Full Stack Developer
Mississauga, ON · On-site
Role We are looking for a Full Stack Developer who can build production software across the ... Run independent investigations or implementation tasks in parallel * Give each agent the right ...
Full Stack Developer
Mississauga, ON · Remote
Role We are looking for a Full Stack Developer who can build production software across the ... Run independent investigations or implementation tasks in parallel * Give each agent the right ...
Full Stack Developer
Mississauga, ON · Remote
Role We are looking for a Full Stack Developer who can build production software across the ... Run independent investigations or implementation tasks in parallel * Give each agent the right ...
Data Engineer
Toronto, ON · Remote
CA$35 - CA$55/hr
Demonstrated work experience in the following with Big Data and distributed programming models and ... Active development of ETL processes using Spark or other highly parallel technologies, and ...
Quick apply
Data Engineer
Toronto, ON · Remote
CA$35 - CA$55/hr
Demonstrated work experience in the following with Big Data and distributed programming models and ... Active development of ETL processes using Spark or other highly parallel technologies, and ...
Senior Software Developer
Toronto, ON · Remote
As a Senior Software Developer, you will be responsible for designing, developing and managing the ... To be successful, you will have to be able to juggle responsibilities in parallel, prioritize ...
Quick apply
Senior Software Developer
Toronto, ON · Remote
As a Senior Software Developer, you will be responsible for designing, developing and managing the ... To be successful, you will have to be able to juggle responsibilities in parallel, prioritize ...
As a Senior Software Developer, you will be responsible for designing, developing and managing the ... To be successful, you will have to be able to juggle responsibilities in parallel, prioritize ...
As a Senior Software Developer, you will be responsible for designing, developing and managing the ... To be successful, you will have to be able to juggle responsibilities in parallel, prioritize ...
Infrastructure Engineer
Toronto, ON · Remote
CA$140K - CA$190K/yr
In parallel, this individual will help create the foundation for AI-enabled product capabilities by ensuring the underlying systems are dependable, observable, secure, and easy for engineers to use.
Infrastructure Engineer
Toronto, ON · Remote
CA$140K - CA$190K/yr
In parallel, this individual will help create the foundation for AI-enabled product capabilities by ensuring the underlying systems are dependable, observable, secure, and easy for engineers to use.
Parallel Programming information
What is parallel programming?
A Parallel Programming job involves developing software that can execute multiple tasks or computations simultaneously to improve performance and efficiency. Professionals in this field work with multi-core processors, distributed systems, and GPU computing to optimize software for speed and scalability. They typically use programming models like MPI, OpenMP, or CUDA to implement parallelism. Industries such as high-performance computing, data science, and machine learning heavily rely on parallel programming to handle large-scale computations.
What are some typical challenges encountered in a parallel programming role?
Professionals in parallel programming often face challenges such as identifying code sections that can be effectively parallelized, managing data dependencies, and handling synchronization between parallel tasks. Debugging and optimizing performance in multi-threaded or distributed environments can also be complex, requiring patience and attention to detail. Collaboration with data scientists, hardware engineers, and other software developers is common, as projects frequently involve cross-functional teamwork. Overcoming these challenges is a rewarding part of the job, leading to faster, more efficient software solutions that can have a significant impact in fields like scientific computing, finance, and machine learning.
What are the key skills and qualifications needed to thrive in parallel programming, and why are they important?
To excel in Parallel Programming, you need a solid background in computer science, strong proficiency in languages such as C/C++, Python, or Java, and experience with parallel computing frameworks. Familiarity with tools like OpenMP, MPI, CUDA, or parallel processing libraries, as well as relevant certifications or coursework, is highly valuable. Analytical thinking, collaboration, and effective problem-solving are essential soft skills for success in this role. These competencies enable professionals to efficiently develop, debug, and optimize scalable applications in high-performance computing environments.
What are the most commonly searched types of Parallel Programming jobs in Toronto, ON?
The most popular types of Parallel Programming jobs in Toronto, ON are:
What are popular job titles related to Parallel Programming jobs in Toronto, ON?
For Parallel Programming jobs in Toronto, ON, the most frequently searched job titles are:
What job categories do people searching Parallel Programming jobs in Toronto, ON look for?
The top searched job categories for Parallel Programming jobs in Toronto, ON are:

Senior Software Developer - Numerical
Toronto, ON
Full-time
Re-posted 2 days ago
Job description
The Role
Reporting to the Director, Software Development (or delegate), we are seeking an experienced Senior Software Developer - Numerical to join our geoscience software development team. This role is based in Toronto, ON, operating under a hybrid work model.
This position focuses on transforming early-stage research prototypes into high-quality, production-ready numerical software. You will design, implement, and optimize high-performance numerical libraries and compute kernels using C++, Python, and CUDA, ensuring scalability, robustness, and performance.
Working closely with researchers and domain experts, this role bridges scientific research and software engineering, requiring strong numerical expertise, performance-focused thinking, and effective cross-functional collaboration.
In this role, you will have the opportunity to
Numerical Software Development
- Develop and optimize high-performance numerical software in C++, Python, and CUDA.
- Re-engineer research prototypes into scalable, production-ready solutions.
- Implement parallel programming techniques including multi-threading, vectorization, and GPU acceleration.
- Ensure solutions are portable across Linux (primary) and Windows environments.
Performance & Quality
- Profile, benchmark, and optimize numerical workflows using tools such as Nsight and VTune.
- Improve runtime efficiency, memory usage, and algorithmic scalability.
- Design automated testing and verification frameworks to ensure numerical correctness and reliability.
Collaboration & Engineering Excellence
- Work closely with researchers, engineers, and product teams to translate research concepts into stable implementations.
- Participate in design reviews, technical planning, and peer code reviews.
- Produce clear technical documentation and apply modern engineering practices, including CI/CD (GitHub Actions) and version control.
Essential Knowledge, Skills, and Experience
- Bachelor's degree in Computer Science, Applied Mathematics, Physics, or a related STEM field.
- 7+ years of experience in software development or engineering roles.
- Strong experience in numerical computing with C++ and Python.
- Hands-on experience with CUDA, GPU programming, and parallel computing.
- Knowledge of numerical libraries such as Eigen or BLAS.
- Experience developing on Linux and supporting cross-platform environments.
- Familiarity with performance profiling tools and CI/CD pipelines.
Assets
- Experience with OpenMP, Rust, Fortran, cloud computing (GCP), containerization, or distributed systems.
#LI-KV2