We are looking for an experienced Software Developer with expertise in developing industrial communication and embedded software applications. The ideal candidate should have solid hands-on experience in C++ development, industrial communication protocols, network programming, and system integration. Experience in industrial automation, embedded systems, and Agile development is highly preferred.
Key Responsibilities
- Design, develop, and maintain high-quality software applications using C++.
- Develop and enhance industrial communication modules and protocol stacks.
- Implement and integrate communication interfaces for industrial devices and software applications.
- Analyze system requirements and translate them into scalable software solutions.
- Develop, debug, and optimize software for performance, reliability, and maintainability.
- Integrate communication protocols and ensure seamless interoperability between systems.
- Perform unit testing, code reviews, debugging, and root cause analysis.
- Collaborate with QA, Product Management,
and cross-functional engineering teams throughout the software development lifecycle.
- Participate in Agile/Scrum ceremonies, sprint planning, estimation, and technical discussions.
- Contribute to continuous integration, software quality improvements, and technical documentation.
Mandatory Skills
- C++ Development
- Object-Oriented Programming (OOP)
- Industrial Communication Protocols:
- DNP3
- IEC 61850
- Modbus
- SNMP
- Communication & File Transfer Protocols:
- FTP
- FTPS
- SFTP
- TFTP
- HTTP
- ASCII-based Protocols
- XMODEM / YMODEM
- Network Programming
- Socket Programming
- Docker
- ODBC/Database Connectivity
- Git Version Control
- Linux Environment
- Agile/Scrum Methodology
Good-to-Have Skills
- TypeScript / JavaScript
- CI/CD Tools
- Embedded Software Development
- SCADA Systems
- Industrial Automation
- Power Systems Domain
- Embedded Communication Software
- Performance Optimization
- Linux Shell Scripting