Join Danfoss Drives and be part of a team driving impact in energy efficiency and electrification- As a global leader in power conversion solutions, we prioritize sustainability, quality, and fostering inclusivity- Our technology powers industries worldwide, supporting global decarbonization efforts- Engineer a better future with Danfoss, where meaningful change starts with you
We re looking for a seasoned Senior Software Engineer with a strong foundation in C++ design and development to join our dynamic Research Development team-
Job Responsibilities Responsibilities for this position include, but are not limited to, the following-
In this role the individual will be working in the Product Development department of Danfoss Drives Business, in the New Product development activity-
Work with the Product Owners/Technical Product Owners to create and elaborate the requirements for the implementation of the Communication Protocol drivers for the Danfoss Variable Frequency Drive product-
Build the Fieldbus Communication Protocol Driver software and other Connectivity Protocol software (Wi-Fi, Zigbee, Bluetooth, MQTT) for the Danfoss Variable Frequency Drive product, using C++ programming language-
Prepare the high-level design (HLD), low-level design (LLD), detailed design (DD) for the Communication Protocol Driver software-
Perform static code analysis (using tools) and fix the identified errors and warnings-
Perform code reviews-
Write the Unit Test cases, Engineering Test Cases and develop, execute the Unit Test scripts-
Continuous improvement of the processes, work procedures and tools used in the execution of the work, through innovative/creative thoughts-
Fix the identified defects to improve the quality of the deliverables-
Follow the processes, work procedures, quality standards for achieving high quality of the deliverables-
Ensure that the software delivered is compliant with the external certification standards-
Collaborate with the Test Engineers in the same project activity, engineers from the other teams/departments (local/abroad) for the successful completion of the project activities-
Collaborate with the stakeholders (local/abroad) for the successful completion of the project activities-
Contribute to the technology roadmap and innovation to improve the processes and products-
Mentor and coach the other engineers and trainees in the team on the technical aspects-
Must have competencies:
- 5-10 years of experience in software development using C++ programming language-
- Experience in preparing software architecture, design for the development of software products-
- Ability to create and/or read and interpret, the architecture and design diagrams-
- Experience in Software Development using Agile Scrum methodology-
- Excellent debugging skills-
- Excellent analytical skills and ability to apply the knowledge to solve practical problems-
- Excellent problem-solving skills-
- Ability to mentor and coach the others on the technical aspects-
- Experience in the tools Visual Studio, Google Test, Gi
Good to have competencies:
- Experience in communication protocol software development PROFINET, EtherNET/IP, EtherCAT, BACnet/IP, MODBUS TCP, POWERLINK, PROFIBUS DP, DeviceNet, CANopen, BACnet MS/TP, Modbus RTU, Metasys N2, LonWorks, AK-LonWorks, ASi Bus, Interbus, PROFISAFE, OPC DA, OPC UA, IEC101, IEC103, IEC104, IEC61850, DNP3-
- Experience in using the Lauterbach debuggers-
- Experience in using the protocol testing/analyzer tools for testing protocols (Wireshark, Modscan, Modbus Conformance Tool, Profibus Analyzer )-
- Experience in developing embedded software for various micro controllers-
- Experience in various Real Time Operating Systems (RTOS)-
- Expertise in embedded kernels, bootloaders, system software libraries and device drivers-
- Experience in real-time software design, software hardware interaction with real time operating systems, multithreading, and event driven architectures-
- Experience in using the debuggers to trouble shoot the embedded software on the target-