Search jobs > Cambridge, ON > Software developer ii

Software Developer Level II - Industrial Machine Vision

ATS Automation
Cambridge, CA
$125K-$135K a year (estimated)
Full-time

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 :

QUALIFICATIONS : Education :

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

30+ days ago
Related jobs
ATS Automation
Cambridge, Ontario

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 ...

Promoted
Ripple Labs
Guelph, Ontario

Minimum of 7 years of experience in software engineering, with a focus on full-stack development. Are you a highly skilled and motivated individual with a passion for Engineering? Look no further! Ripple is seeking a Senior Software Engineer to join our exceptional team and contribute to the develop...

Promoted
THE VAPE FATHER LTD
Canada

At Loblaw Companies Limited, we succeed through collaboration and commitment and set a high bar for ourselves and those around us.Whether you are just starting your career, re-entering the workforce, or looking for a new job, this is where you belong.Build and maintain batch and real-time data pipel...

Company 19 - John Hancock Life Insurance Company (U.S.A.)
Waterloo, Ontario

We are seeking a talented and experienced Senior Full Stack Software Engineer to join our growing team. Bachelor's degree in Computer Science, Software Engineering, or a related field (or equivalent experience). Minimum of 5+ years of experience as a Full Stack Software Engineer. In this role, you w...

C. G. Consulting Group Inc.
Wfh, WFH, Canada
Remote

Python Software Engineer (Python, JS, AWS, Snowflake, Airflow, Unix). Python: Boto3, Multiprocessing, Classes. ...

Jay Analytix
Canada

We are seeking a strong Python Developer with experience in commodity trading to join our team. ...

Mappedin
Waterloo, Ontario

The Core Services team, part of Foundations, owns or helps develop many of the back end services the other developers at Mappedin rely on. ...

Parent Organization
Canada

We are seeking a highly skilled <b>Senior</b> <b>Backend Developer</b> with expertise in <b>Java</b> and <b>Kotlin</b> to join a dynamic team working on an exciting project for a Fortune 500 company. Design and develop RESTful APIs using Microservi...

Litens Automotive Group
Canada

Join the Litens Engineering team as a Software Reqirements Developer. Collaborate with System Engineer & Software Architect in the development of the requirements with focus on SW. Support the Software Architect in the development of the functional safety concept. Maintain upstream/downstream tr...

Miovision
Kitchener, Ontario

Come help us solve traffic problems together, and have fun while doing so!   Key Accountabilities Lead the implementation of new front end library components to configure computer vision algorithms. Discuss, recommend, and implement architecture and code structure considerations with the team P...