Job Openings C++ Developer (Lead)

About the job C++ Developer (Lead)

Lead C++ Developer to lead small team to develop customer-specific solutions using C++ for a multinational energy conglomerate

Full-time, permanent

Montreal (Hybid)

The client is accelerating and leading the industry with its digital offerings to utility customers. As a lead software developer, you will be responsible for developing C++ code and customer-specific solutions based on our Substation Automation family of products. In this role, you will play a leading role in our software development team and contribute to the execution of customer-paid development projects. We strive to deliver dependable, simplified, and best-in-class solutions to help utilities leverage their assets and manage a smarter grid.

Responsibilities:

  • Designs, implements, and maintains efficient, reliable, and reusable code.
  • Analyzes technical specifications and proposes innovative solutions.
  • Writes unit tests and automated integration tests, performs manual testing, reviews peer-written code and writes reports.
  • Participates in the investigation of problems by gathering enough information to find the root causes and fix them.
  • Lead system architectures and designs.
  • Has the ability to lead small projects with the assistance of a few other developers.
  • Help transforming customer requirements in generic features that will be integrated in our family of product and that will be reusable by other customers.
  • Provide input to project planning by estimates of development activities.
  • Contribute to the growth of the team, with technical coaching of junior developers and supervision of contractors that help dealing with variations on the workload.

Must Have:

  • 7+ years of experience in software development.
  • 2+ years of recent experience developing C++ applications.
  • 1+ year of experience leading and coaching new and experienced software developers.
  • Fluency in English and French (working proficiency).

Prefered

  • Bachelors degree in Computer Science, Computer Engineering, etc.
  • Understanding of object-oriented design and programming skills, including the use of design patterns.
  • Experience developing software for embedded devices, creating APIs and desktop applications.
  • Experience ensuring cybersecurity practices in embedded software
  • Experience designing real-time control systems.
  • Comprehensive knowledge of IP networking protocols (TCP/UDP/IP).
  • Experience with Industrial IP protocols: Modbus TCP, DNP3, OPC-UA
  • Experience working in the electric utility market and/or power systems.
  • Experience with Agile using Scrum