Software Developer Level II - Industrial Machine Vision
Cambridge, ON, CA, N3H 4R7
ATS Corporation
ATS Corporation's industrial automation systems provide the perfect synergy of experience, automation technology & scale. Advance your factory automation today.Job Description
MAJOR DUTIES:
As key contributor within the innovation group, you will be working on software development projects that are technically innovative solutions for image processing, machine vision, data collection, analysis, control and reporting solutions.
Duties involve creating and evolving a world class machine vision software development environment, providing design direction, code reviews for software developers, technical development of the software team, manage the creation, supporting customers and maintenance of on-boarding material for new developers.
The candidate will work closely with the project managers, product owners, UI UX developers, testers, control systems integrators and end users to develop a strong product. In this role you will work individually and as part of a team.
SPECIFIC RESPONSIBILITIES:
General Experience
• Experience at developing clean code that is efficient, elegant, robust and maintainable.
• Ability to take a systematic approach to root cause customer problems and deliver innovative software that solves them
• Team player able to contribute in agile meetings, perform code reviews, brainstorm hard problems and step in and contribute when a challenge needs all hands-on deck
• Seeks to be involved in complex software development technical challenges and demonstrate leadership to mentor management, customers, and peers.
• Assist the project team to identify critical path and dependencies between project activities.
• You are passionate about continually evolving whenever it presents an opportunity to become more efficient.
Software Development
• Perform software development as part of a team including gathering user requirements, software design, programming, testing, and release.
• Contribute to major software release plans that align with the technology roadmap.
• Collaborate with mechatronics designers, hardware designers and operations personnel to define and understand the problems and User Requirements Spec documents.
• Develop and execute tests to verify behavior and performance with a good understanding of Test Driven Development.
• Assist with the generation of software related product documentation.
• Developing awareness of software technologies, established coding principles and all Software Developer competencies
• Developing awareness and interest in application of 2D and 3D image processing and ML/AI in the industrial space
• Contribute to weekly agile meetings reviewing last week’s progress and plan upcoming work.
• Seeks mentorship from other developers, and offers mentorship/suggestions to help team improve
• Observe reviews of concepts, code and team designs and provide constructive feedback
• Contribute to software design standards and overall software quality
• Contribute to the technology stack for assigned software products.
Additional Responsibilities as Software Developer Level II
• Demonstrates ownership through concept, design, coding, testing and tier 3 support.
• General supervision, training, and guidance of all team members that are part of his/her team.
• You can influence and communicate solutions effectively internally and externally.
• You are showing the ability to own and deliver projects on time the meet requirements
• You have a clear understanding of the standard practices/processes within the department and demonstrate a constant improvement mindset.
• Consistently writes functions that are easily testable, easily understood by other developers, and accounts for edge cases and errors.
• Demonstrated understanding of SOLID principles for software development.
• Before beginning work, ensures that tasks are appropriately sized for continuous integration and incremental delivery with help from teammates and Team Lead.
• Understands the organization's engineering strategy.
• Usually handles risk, change, and uncertainty within their personal scope of work effectively.
QUALIFICATIONS:
QUALIFICATIONS:
Education:
• A post-secondary engineering or computer science degree, diploma or equivalent with emphasis on software design and development.
Desired Experience:
• Coding, optimizing and accelerating image processing and computer vision algorithms
• C/C++, C#, VB.Net, XML, Powershell, Python, multithreaded programming and building Windows GUIs using Visual Studio tools
• Implementation of SIMD, Multicore, and/or GPU accelerations of image algorithms.
• Knowledge of both traditional industrial machine vision algorithms and machine learning based algorithms
• Ethernet network programming, ideally with industrial ethernet protocols (Ethernet/IP, Profinet and others)
• You have used image processing frameworks such as OpenCV, Matrox Imaging Library, Halcon and more.
• Diagnosing and resolving Windows OS performance, hardware, device driver and behavioral issues
• Familiarity with Linux, OS virtualization, and disk management/cloning
• Familiarity with IoT Enterprise versions of Windows, including building and mass deploying OS images.
• Deployment of Vision systems and Industrial PC’s in industrial environments
• Choosing and connecting cameras (area and line scan if possible), lights, optics, and related electronics
• Interfacing with GigEVision, USB, and other industrial cameras at the Genicam and API level.
• Debugging system level problems in vision systems
• Familiar with issue-tracking and revision-control systems.
• Ability to communicate effectively, both orally and in writing.
• Experience in using Agile development practices.
• Software development within a team of your peers
In addition, the following is considered not necessary but beneficial:
• Experience with real time controls and/or PLCs is an asset.
• SQL Database interfacing and programming
• Internal knowledge of image formats
• AIA CVP Advanced designation desirable
• Programming Language Compiler and Interpreter internals knowledge
Join our Innovation Center at ATS Corporation - a place to create differentiators with the future in mind. Our Innovation Center is focused on R&D advancing existing technologies, filling gaps in existing automation products, technologies and processes to give ATS a competitive advantage
* Salary range is an estimate based on our AI, ML, Data Science Salary Index 💰
Tags: Agile APIs Computer Science Computer Vision Engineering GPU Industrial Linux Machine Learning .NET OpenCV Python R R&D SIMD SQL Testing UX XML
Perks/benefits: Career development Team events
More jobs like this
Explore more AI, ML, Data Science career opportunities
Find even more open roles in Artificial Intelligence (AI), Machine Learning (ML), Natural Language Processing (NLP), Computer Vision (CV), Data Engineering, Data Analytics, Big Data, and Data Science in general - ordered by popularity of job title or skills, toolset and products used - below.
- Open Data Science Manager jobs
- Open Research Scientist jobs
- Open Data Engineer II jobs
- Open Principal Data Scientist jobs
- Open Business Data Analyst jobs
- Open BI Analyst jobs
- Open Data Scientist II jobs
- Open Sr Data Engineer jobs
- Open Business Intelligence Engineer jobs
- Open Lead Data Analyst jobs
- Open Sr. Data Scientist jobs
- Open Data Science Intern jobs
- Open Senior Business Intelligence Analyst jobs
- Open Software Engineer, Machine Learning jobs
- Open Junior Data Scientist jobs
- Open Azure Data Engineer jobs
- Open MLOps Engineer jobs
- Open Manager, Data Engineering jobs
- Open Data Analytics Engineer jobs
- Open Marketing Data Analyst jobs
- Open Data Engineer III jobs
- Open Junior Data Engineer jobs
- Open Data Analyst II jobs
- Open Data Engineering Manager jobs
- Open ETL Developer jobs
- Open Data quality-related jobs
- Open Tableau-related jobs
- Open Privacy-related jobs
- Open Excel-related jobs
- Open ML models-related jobs
- Open Data pipelines-related jobs
- Open APIs-related jobs
- Open PhD-related jobs
- Open PyTorch-related jobs
- Open Finance-related jobs
- Open Data visualization-related jobs
- Open LLMs-related jobs
- Open Consulting-related jobs
- Open TensorFlow-related jobs
- Open Deep Learning-related jobs
- Open Business Intelligence-related jobs
- Open Generative AI-related jobs
- Open CI/CD-related jobs
- Open NLP-related jobs
- Open Data governance-related jobs
- Open DevOps-related jobs
- Open Kubernetes-related jobs
- Open Git-related jobs
- Open Hadoop-related jobs
- Open Docker-related jobs