23 Sep
|
Applied Materials
|
Mumbai
23 Sep
Applied Materials
Mumbai
Job Summary
We are seeking an experienced Senior Software Engineer with robust expertise in C++ development to design, develop, and maintain high-performance software applications.
The ideal candidate should have a solid foundation in software engineering principles, object-oriented design, multithreaded programming, and system-level development.
The role requires close collaboration with cross-functional teams to deliver scalable, reliable, and maintainable software solutions.
Key Responsibilities
- Design, develop, test, and maintain complex, high-quality software for semiconductor CAD applications using modern C++.
- Analyze business and system requirements and translate them into scalable software architecture, detailed design specifications, and implementation plans.
- Develop and optimize algorithms for layout data processing, geometry operations on large hierarchical design databases.
- Develop efficient, reusable, and reliable code following established coding standards and best practices.
- Own software features throughout the development lifecycle design, implementation, unit testing, integration testing, deployment, and post-release support.
- Troubleshoot, perform root-cause analysis, and resolve complex software defects and performance bottlenecks in data- and compute-intensive workflows.
- Define and execute software verification and validation strategies, including test plans and automated regression testing for CAD workflows.
- Lead and participate in code reviews, design reviews, and architectural discussions to ensure software quality, reliability, and scalability.
- Lead small to medium-sized technical projects and drive deliverables to completion with minimal supervision.
- Mentor junior engineers and provide technical guidance on software design, development practices, and problem-solving methodologies.
- Collaborate with cross-functional teams including product management, QA, and customer support, and communicate effectively with internal and external customers.
- Contribute to continuous improvement initiatives by identifying opportunities for productivity enhancements and software modernization.
Required Skills Technical Skills
- Robust proficiency in modern C++ (C++14/17/20 preferred) with 815 years of software development experience.
- Thorough understanding of Object-Oriented Programming (OOP) concepts and design patterns.
- Strong knowledge of STL, templates, smart pointers, memory management, and modern C++ design practices.
- Strong understanding of data structures, algorithms, and computational geometry.
- Proven experience developing multi-threaded and concurrent applications.
- Solid understanding of software architecture principles and system integration.
- Understanding of Operating Systems (Windows/Linux) and performance-critical, memory-efficient application development.
- Experience with source control systems such as Git.
- Strong debugging, profiling, and performance optimization skills.
Preferred Skills
- Experience with microservices architecture.
- Experience with gRPC and REST APIs.
- Experience with Docker and Kubernetes.
- Experience with CI/CD pipelines and automated testing frameworks.
- Experience working with large-scale data processing systems.
Desired Candidate Profile
- Strong analytical and problem-solving skills.
- Excellent verbal and written communication skills.
- Demonstrated leadership skills, with experience mentoring engineers and coordinating cross-functional teams.
- Ability to work effectively in a collaborative, Agile development workplace.
- Self-motivated and capable of driving tasks to completion with minimal supervision.
- Strong ownership, accountability, and customer focus.
- Passion for technology, innovation, and continuous learning.
Education
Bachelor's or Master's degree in Computer Science, Software Engineering, Computer Engineering, Information Technology, Electronics, Electrical Engineering, or a related technical field.
Additional Information
- Time Type: Full time
- Employee Type: Assignee / Regular
- Travel: Yes, 10% of the Time
- Relocation Eligible: Yes
- Location: Mumbai, IND
📌 C++ Developer (Mumbai)
🏢 Applied Materials
📍 Mumbai