VENEZ TRAVAILLER AVEC NOUS
OPPORTUNITÉ DE CARRIÈRE
HARD-LINE est un chef de file mondial dans l’automatisation des mines, la connectivité de l’épine dorsale du réseau et l’optimisation de la production minière. Notre vision est de révolutionner l’industrie.
SOFTWARE DEVELOPER (C++)
Software Development
Sudbury, ON
Reporting to the Software Development Manager, the Software Developer (C++) is responsible for designing fully functioning, debugged code with required documentation that meets Hard-Line’s development goals as well as coordinating with the development team working on different layers of the infrastructure. The Software Developer will have expertise in one or more of the following areas:
• Desktop Application Development
• Embedded Software Development
Ce que vous ferez
- Design, implement and test major software features in collaboration with multi-disciplinary teams to develop new software for a variety of HLS products
- Define, design, and implement multi-tiered object-oriented distributed software applications
- Integrate new and existing software into new and existing machinery
- Maintain and modify existing applications
- Perform custom programming as assigned
- Debug and test software implementations
The above statements are intended to describe the general nature and level of work being performed by people assigned to this classification. They are not to be construed as an exhaustive list of all responsibilities, duties, and skills required of personnel so classified. All personnel may be required to perform duties outside of their normal responsibilities from time to time, as needed and instructed by management.
Ce que nous recherchons
Qualifications
- Degree in Computer Science, Computer Engineering or Software Engineering or equivalent experience is required
- Master’s degree would be considered an asset
- Minimum 3 years industry experience as a Software Developer is required
- Experience working in an ISO 9001 environment would be considered an asset
Core Technical Skills
- Experience designing and developing desktop, web, and/or embedded software, particularly in distributed, industrial systems
- Strong proficiency in C++, with fair knowledge of the language specification
- Strong understanding of object-oriented (OO) software development practices
- Understanding of functional programming and design patterns
- Experience with source control management, especially git
- Development experience with scripting languages (Python, shell scripting)
- Experience with Unix-based operating systems, esp. experience with Real-Time Linux
- Thorough knowledge of the standard library, STL containers, and algorithms
- Good understanding of memory management in non-garbage collected environments
- Experience with build automation and packaging software, especially Cmake
Additional Technical Competencies that would be Considered an Asset:
- Knowledge of the C++ core Guidelines support Library
- Experience with well-known C++ open-source library
- Experience with automated testing platforms and unit, integration, and regression tests
- Experience with CI/CD tools
- Knowledge of optimisation practice and tools
- Familiarity with open-source multimedia framework
- Familiarity with computer vision and math C++ library
- Experience with GPU and parallel programing libraries
- Familiarity with JSON, Protobuff, and other serialization technics
- Familiarity with embedded systems design, low-level hardware interactions
- Familiarity with arm processors and cross compile toolchains
- Working knowledge of CAN Bus, serial and ethernet protocols
- Working knowledge of real-time systems or control systems
- Familiarity with Agile software development practices, including Agile project management tools, particularly Jira
- Adequate knowledge of reading schematics and data sheets for components
- Experience in robotics and machine automation
Core General Competencies
- Strong technical skills
- Communications skills both technically and non-technically (verbally and in writing)
- Experience in software product development
- Ability to work in a collaborative software development environment
- Ability to document the processes
- Multitasking and shifting priorities
- Adaptability
- Decision making skills and analytical skills
- Ability to prioritize and manage time effectively
Working Conditions & Physical Demands
- Sitting for extended periods using office equipment
- Office environment
- Some travel may be required
Intéressé? APPLIQUEZ MAINTENANT.
HARD-LINE est un employeur de l’égalité des chances qui offre un excellent ensemble d’avantages sociaux, un programme de jumeler reER et un fort accent sur la formation continue et le perfectionnement.
HARD-LINE accueille et encourage les demandes des personnes handicapées. Les hébergements sont disponibles sur demande pour les candidats participant à tous les aspects du processus de sélection.