We are looking for an experienced C/C++ Developer with 2–4 years of hands-on experience in C/C++ programming, Qt, and Linux-based development. The candidate will be responsible for developing, debugging, optimizing, and maintaining software applications and system-level components in a Linux environment, including Qt-based applications and GUI components.
Employment Type: Full Time
Work Location: Vizag
Department: Engineering / Software Development
Note: Willingness to travel as required for project, client, or business needs.
-
Design, develop, test, and maintain software applications using C and C++.
-
Develop and maintain applications/components on Linux/Unix-based systems.
-
Develop and maintain Qt-based applications, GUI components, and software modules.
-
Write clean, efficient, scalable, and maintainable code.
-
Debug and troubleshoot software issues using appropriate debugging tools.
-
Analyze existing code and implement enhancements, fixes, and performance improvements.
-
Work with Linux system calls, processes, threads, IPC, sockets, and memory management.
-
Develop and integrate APIs and software modules as required.
-
Perform unit testing, integration testing, and debugging.
-
Identify and resolve memory leaks, performance issues, and application crashes.
-
Collaborate with cross-functional teams including software, QA, hardware, and product teams.
-
Participate in code reviews and follow coding standards and development best practices.
-
Prepare technical documentation related to software design, implementation, and testing.
-
Troubleshoot issues reported from testing or production environments.
-
2–4 years of professional experience in C/C++ development.
-
Strong programming knowledge in C and C++.
-
Hands-on experience with Linux/Unix environments.
-
Hands-on experience with Qt / Qt Framework and Qt-based application development.
-
Good understanding of Object-Oriented Programming (OOP) concepts.
-
Knowledge of TCP/IP, UDP, Socket Programming.
-
Experience with Wireshark for packet capture, network analysis, and troubleshooting.
-
Experience with multithreading and concurrency.
-
Good knowledge of Linux processes, threads, IPC, and memory management.
-
Experience with GDB or similar debugging tools.
-
Good understanding of Git/version control systems.
-
Strong debugging and problem-solving skills.
-
Good understanding of software development lifecycle.
-
Experience with Linux system programming.
-
Experience with CMake/Makefiles.
-
Exposure to Embedded Systems / Firmware development.
-
Experience with Qt Widgets / Qt GUI development
-
Knowledge of Qt Signals & Slots, Qt Model/View architecture, and event-driven programming.
-
Knowledge of STL, Boost, or modern C++ standards (C++11/14/17).
-
Exposure to CI/CD tools and automated testing.
-
Experience working in Agile/Scrum development environments.
-
Bachelor's or Master's degree in Computer Science, Information Technology
The ideal candidate should have strong hands-on programming skills in C/C++ and Qt, practical experience working on Linux, and the ability to independently troubleshoot and resolve complex software issues.
Good analytical, communication, and problem-solving skills are essential.