Software/Sr. Software Engineer
Emerson · Pune, Maharashtra, India
Emerson · Pune, Maharashtra, India
**Job Summary:** We are seeking a skilled Senior Software Engineer with 4 to 8 years of experience in C++ desktop application development. The ideal candidate will have strong expertise in C++, MFC, STL, Multithreading, and COM technologies, along with a solid understanding of software development best practices, debugging, performance optimization, and Agile methodologies. Experience with C#, NUnit, and Network Protocol Debugging will be an added advantage. **Role & responsibilities** - Develop and maintain desktop applications using C++ and MFC (Microsoft Foundation Classes). - Utilize STL for implementing efficient data structures and algorithms. - Design and implement multithreaded solutions to improve application performance and responsiveness. - Work with COM (Component Object Model) for software component integration. - Debug, troubleshoot, and optimize applications for performance, scalability, and reliability. - Collaborate with cross-functional teams to design, develop, and deliver software solutions. - Follow coding standards, maintain technical documentation, and ensure software quality. - Contribute to Agile development processes and participate in code reviews. - Support additional development tasks involving C#, NUnit testing framework, and Network Protocol Debugging when required. **Preferred candidate profile** - B.E/ B.Tech/ M.Tech/ MCA in Computer Science , Information Technology/ Electronics and Communications / Telecommunication / Electrical / Instrumentation or a related Engineering discipline. - 4 to 7 years of experience in software development. - Strong proficiency in C++ programming. • Hands-on experience with MFC for Windows desktop application development. - Good understanding of STL and object-oriented programming principles. - Expertise in multithreading and synchronization techniques. - Experience with COM-based development and integration. - Familiarity with debugging tools and performance optimization techniques. - Knowledge of Software Development Lifecycle (SDLC) and development best practices. - Experience with version control systems such as Git and SVN. - Experience working in an Agile development environment. **Preferred Qualifications that Set You Apart:** - Experience with C# application development. - Exposure to AI-assisted development tools - Knowledge of NUnit testing framework. - Experience in Network Protocol Debugging and analysis. - Exposure to software testing, automation, and continuous integration practices. - Strong communication and stakeholder collaboration skills.