C++ Software Engineer
Job Description
We are seeking a skilled C++ Software Engineer with strong experience in high-level application development using C+/17. In this role, you will contribute to the design, implementation, and optimization of software that powers advanced robotics automation systems. You will collaborate closely with cross-functional engineering teams to develop reliable, scalable, and high-performance applications that interact with real-world robotic hardware.
Key Responsibilities
- Design, develop, and maintain high-level C+/17 applications for robotics automation systems.
- Implement software components that interface with hardware drivers, motion-control modules, and automation frameworks.
- Optimize code for performance, reliability, and real-time responsiveness where needed.
- Work closely with robotics, electrical, and mechanical engineering teams to define requirements and system interfaces.
- Develop robust APIs, libraries, and application-level tools that streamline robotic workflows.
- Perform troubleshooting, debugging, and root-cause analysis across the full robotics software stack.
- Contribute to design reviews, code reviews, and continuous integration/continuous deployment pipelines.
- Ensure code quality through unit testing, documentation, and adherence to software development best practices.
Required Qualifications
- Bachelor's degree in Computer Science, Robotics, Electrical Engineering, or a related field (or equivalent experience).
- Strong proficiency in modern C++ (C+/17), STL, templates, and object-oriented programming.
- Experience developing high-level applications or libraries, preferably in robotics, automation, or distributed systems.
- Solid understanding of multi-threaded programming, concurrency, and memory management.
- Familiarity with Linux development environments, build systems (CMake, Make), and version control (Git).
- Strong problem-solving skills and ability to debug complex software systems.
Preferred Qualifications
- Experience with robotics frameworks or middleware (e.g., ROS/ROS2, real-time frameworks).
- Background working with embedded systems or hardware communication protocols (CAN, UART, SPI, Ethernet).
- Experience with simulation tools or real-time control systems.
- Knowledge of Python or scripting languages for automation and tooling.
- Familiarity with Agile development methodologies.
How to Apply
Ready to start your career as a C++ Software Engineer at Insight Global?
- Click the "Apply Now" button below.
- Review the safety warning in the modal.
- You will be redirected to the employer's official portal to complete your application.
- Ensure your resume and cover letter are tailored to the job description using our AI tools.
Frequently Asked Questions
Who is hiring?▼
This role is with Insight Global in Oakville.
Is this a remote position?▼
This appears to be an on-site role in Oakville.
What is the hiring process?▼
After you click "Apply Now", you will be redirected to the employer's official site to submit your resume. You can typically expect to hear back within 1-2 weeks if shortlisted.
How can I improve my application?▼
Tailor your resume to the specific job description. You can use our free Resume Analyzer to see how well you match the requirements.
What skills are needed?▼
Refer to the "Job Description" section above for a detailed list of required and preferred qualifications.