Job Overview
Role: Software Engineer Location: Pune Experience: 2+ Years Qualification: B.E/B.Tech Key Skills: C++, Communication Protocols, Connectivity, Agile Scrum, Unit Testing
Job Description
Are you an experienced software developer looking for an opportunity to work on C++, communication protocols, connectivity software, and new product development? Danfoss is hiring for a Software Engineer position in Pune. Candidates with a B.E/B.Tech qualification and at least 2 years of software development experience can apply for this opportunity. This role is part of the Danfoss Drives Product Development organization and focuses on developing communication protocol drivers and connectivity software for Danfoss Variable Frequency Drive products. The position is strongly focused on C++ development and involves designing, implementing, testing, debugging, reviewing, and maintaining software related to communication protocols. Candidates will work with technologies and protocols including Wi-Fi, Zigbee, Bluetooth, MQTT, and Fieldbus communication. The role also includes software design, static code analysis, code reviews, unit testing, engineering testing, and Agile Scrum development. This is not an entry-level/fresher position. The supplied job description explicitly requires at least 2+ years of software development experience using C++.
Roles and Responsibilities
- Requirements Analysis: Work with Product Owners and Technical Product Owners to understand and elaborate software requirements.
- Software Development: Develop communication protocol drivers for Danfoss Variable Frequency Drive products. Develop connectivity software using C++. Work with Fieldbus communication protocols. Develop software supporting connectivity technologies such as Wi-Fi, Zigbee, Bluetooth, and MQTT. Implement software using C++.
- Design: Prepare High-Level Design (HLD) documents. Prepare Low-Level Design (LLD) documents. Create detailed software designs before implementation.
- Quality Assurance: Perform static code analysis. Investigate and fix errors and warnings identified by analysis tools. Participate in code reviews. Write unit test cases. Develop and execute unit test scripts. Prepare and execute engineering test cases. Debug software and resolve defects.
- Methodology: Work within an Agile Scrum development environment.
- Collaboration: Collaborate with other engineers and product stakeholders throughout development.
Skills and Eligibility Criteria
Educational Background: B.E/B.Tech qualification.
Experience: Minimum 2+ years of experience in software development.
Mandatory Technical Skills:
- Strong hands-on experience with C++.
- Experience developing production software and solving practical engineering problems.
- Strong debugging and troubleshooting skills.
- Experience with unit testing and engineering test cases.
- Experience with Visual Studio, Google Test, and Git.
- Knowledge of communication protocols.
- Exposure to Wi-Fi, Zigbee, Bluetooth, MQTT, or similar technologies.
- Ability to work with HLD, LLD, and detailed software design.
- Familiarity with static code analysis and code reviews.
Competencies:
- Experience working with Agile Scrum teams.
- Strong written and verbal communication skills.
- Ability to collaborate effectively with cross-functional teams.