03 Nov
|
Applied Materials
|
India
03 Nov
Applied Materials
India
Job Summary
We are seeking a highly motivated C++ Linux Software Engineer to design, develop, and maintain high-performance software applications on Linux platforms. The ideal candidate should have strong expertise in modern C++, Linux system programming, multithreading, and debugging complex applications.
Key Responsibilities
- Design, develop, test, and maintain software applications using C++ on Linux environments.
- Develop scalable, reliable, and high-performance system software.
- Work on multithreaded and concurrent applications.
- Perform code reviews and ensure adherence to coding standards and best practices.
- Investigate and resolve production issues through debugging and root cause analysis.
- Collaborate with cross-functional teams including Product Management, QA, Dev Ops, and Architecture teams.
- Optimize application performance, memory utilization, and system resources.
- Participate in software design discussions and technical decision-making.
- Create and maintain technical documentation.
Required Qualifications
- Bachelor's or Master's degree in Computer Science, Electronics, Information Technology, or related discipline.
- 6
- + years of software development experience in C++.
- Strong proficiency in C++11/14/17 standards.
- Hands-on experience with Linux operating systems.
- Strong understanding of data structures, algorithms, and object-oriented design.
- Experience with multithreading, synchronization, and concurrency concepts.
- Experience with Linux system programming, IPC, sockets, and networking fundamentals.
- Proficiency with debugging tools such as GDB, Valgrind, and memory analyzers.
- Experience with Git version control and CI/CD workflows.
Preferred Qualifications
- Experience with distributed systems and microservices architecture.
- Knowledge of TCP/IP, HTTP, REST APIs, and network protocols.
- Familiarity with Docker, Kubernetes, and cloud platforms (Azure, AWS, or GCP).
- Experience with unit testing frameworks such as Google Test.
- Knowledge of build systems such as CMake, Makefiles, or Bazel.
- Exposure to performance tuning and system profiling tools.
Desired Skills
- Linux Kernel fundamentals.
- STL, Boost libraries.
- Design patterns and software architecture principles.
- Strong analytical and problem-solving skills.
- Excellent communication and stakeholder management skills.
- Ability to work in a rapid-paced agile development environment.
Nice to Have
- Experience in networking products, cybersecurity, storage systems, telecom, or embedded systems.
- Knowledge of Python or Shell scripting for automation.
- Experience working with large-scale enterprise software products.
Interview Focus Areas
- C++ Programming (OOP, STL, Templates, Memory Management)
- Data Structures & Algorithms
- Linux Internals & System Programming
- Multithreading & Concurrency
- Networking Fundamentals
- System Design
- Debugging & Troubleshooting Scenarios
- Coding Assessment
Additional Information
Time Type:
Full time
Employee Type:
Assignee / Regular
Travel:
Relocation Eligible:
No
📌 C++ Engineer 6 - 10 yrs Software Engineer (India)
🏢 Applied Materials
📍 India