HamburgerMenu
hirist

Application Lead - C++/Java

Posted on: 16/10/2025

Job Description

Job Description :


Key Responsibilities :


- Design, develop, and maintain software applications in C++ and Java across Linux environments.


- Participate in the migration of existing Solaris-based systems to Linux, ensuring smooth transition and performance optimization.


- Implement data processing and in-memory data handling techniques to optimize system throughput.


- Utilize Object-Oriented Programming (OOP) principles for designing scalable and maintainable software solutions.


- Employ the Standard Template Library (STL) including containers, algorithms, and iterators to streamline application logic.


- Manage memory efficiently using smart pointers, new/delete, and other advanced memory management techniques.


- Work extensively with Linux system calls (open, read, write, fork, exec, etc.) and signal handling mechanisms.


- Develop and manage multi-threaded applications using C++ threads, synchronization primitives (mutexes, condition variables), and concurrency libraries.


- Debug and troubleshoot issues using GDB or other Linux-based debugging tools.


- Use profiling and performance analysis tools to identify and resolve performance bottlenecks.


- Collaborate with cross-functional teams (architecture, QA, DevOps) to ensure efficient code integration and deployment.


- Follow coding standards, perform code reviews, and contribute to continuous improvement initiatives.


Technical Skills Required :


Core Competencies (C++ / Linux) :


- Strong knowledge of C++11/14/17, STL, and OOP principles.


- Proficiency in Linux-based development compiling, linking, debugging, and performance tuning.


- Experience with Linux system programming system calls, file handling, inter-process communication (IPC), and signal handling.


- Hands-on experience with memory management and profiling tools (e.g., Valgrind, perf, gprof).


- Strong understanding of multi-threading, synchronization, and concurrency models in C++.


- Experience with shell scripting and build systems (e.g., CMake, Makefile).


- Familiarity with version control systems like Git


- Strong hands-on experience in Java development, including core Java concepts such as collections, multithreading, and exception handling.


- Experience working on backend services or utilities in Java.


- Familiarity with Java build and dependency management tools (Maven/Gradle).


Additional Preferred Skills :


- Exposure to migration projects (Solaris to Linux or similar).


- Knowledge of network programming, socket communication, and IPC mechanisms.


- Experience with Agile development methodologies.


- Understanding of CI/CD pipelines and automated build/test processes

info-icon

Did you find something suspicious?