Posted 5 months ago
Only considering candidates eligible to work in Canada ⚠️
Company description:
We think big!
A true pioneer in the global smart cities and connected products market, Dimonoff aims to create a connected, intelligent, sustainable and safe world by building a versatile, generic IoT ecosystem.
With more than 575 successful projects in over 11 countries, Dimonoff draws its expertise from control and analytics technologies in smart cities, energy efficiency, mobility, utilities efficiency, public safety, and more.
As a company holding the Concilivi seal, we strive to offer our employees a culture of individual and professional growth in a continuous learning and team collaboration environment, where work–life balance is a priority. Working at Dimonoff means pushing your limits and making a significant contribution to high‑value technological team projects.
For more about Dimonoff: https://www.dimonoff.com/fr/
Position description:
Are you passionate about development? Interested in a local job with a global impact? We have the perfect position for you!
We are looking for a Senior Full-Stack Software Designer - Technical Lead. Your expertise will be a strength within our team.
Role summary:
As a Senior Full-Stack Software Designer - Technical Lead, you will be responsible for critical technical projects. You will coordinate the technical aspects of the project(s) to lead the team toward project objectives. You will act as the official technical spokesperson of the project team with internal and external stakeholders. Your responsibilities include closely collaborating with other teams to define requirements, mentoring junior developers, and fostering a culture of excellence and innovation.
Responsibilities:
Project initiation:
- Lead requirements analysis for internal and/or external clients
- Lead evaluation of different scenarios considering technological, financial, and time constraints
- Propose innovative technical alternatives that add value to the offering
- Write solution architecture plans in the context of the system
- Establish the construction logic of the software solution in the context of delivering a complete solution (task breakdown, construction logic and constraints)
- Produce functional diagrams and interfaces that make up the software solution
- Write requirements and specifications for the system’s various components
- Estimate analysis, development, integration, and deployment costs (hours or $)
Project execution:
- Manage all technical requirements of assigned projects
- Establish and maintain communication with the client and act as liaison between client and internal teams (technical aspects)
- Establish and maintain communication links between the project’s various engineering stakeholders
- Write necessary documentation (internal and/or external) to ensure sustainability and meet client requirements
- Establish the test plan (unit and functional) for the software solution in the context of the complete solution
- Design software code in the language appropriate to the solution
- Perform validations required for the correct functioning of the solution
- Integrate the different components of the software solution into the system
- Deploy software solutions into their operational context
- Automate operations according to client requirements and sustainability
Support and maintenance:
- Fix defects in existing solutions
- Analyze existing code
- Propose realistic and viable solutions for maintaining existing solutions
- Stay aware of the use of products you have contributed to
Communication:
- Maintain communication with the client and act as liaison between client and internal teams (technical aspects)
- Maintain communication between the project’s various engineering stakeholders
- Be able to simplify technical aspects and adapt language to the audience
- Ensure audience understanding
- Document work according to existing practices
- Document internal and external client requests while listening for misalignments and change requests
- Promptly communicate risks and changes to relevant stakeholders
- Attend meetings and respect agendas
Management:
- Plan short-, medium- and long-term actions and keep a dashboard of daily actions according to practices in place
- Propose and respect priorities
- Participate in project follow-ups (actual and planned costs, schedule, deliverables, risks, open items, others if applicable)
- Monitor commitments (financial, technical, time) and be proactive with stakeholders when changes occur, regardless of origin
- Personally commit to project success
- Structure work to avoid errors and repetitive operations
Technology watch and innovation:
- Stay up to date on the latest software technologies
- Experiment with new languages and frameworks
- Monitor trends and innovations in software
- Keep up with standards and open organizations covering your field of expertise
An asset:
- Stay informed about technologies and innovations in domains related to software, such as mechanical, electronics, cloud, etc.
