Principal Software Engineer
Cadence Design Systems
- Noida, Uttar Pradesh
- Permanent
- Full-time
- The opportunity to work on cutting-edge technology in an environment that encourages you to be creative, innovative, and to make an impact.
- Cadence’s employee-friendly policies focus on the physical and mental well-being of employees, career development, providing opportunities for learning, and celebrating success in recognition of specific needs of the employees.
- The unique “One Cadence – One Team” culture promotes collaboration within and across teams to ensure customer success
- Multiple avenues of learning and development available for employees to explore as per their specific requirement and interests
- You get to work with a diverse team of passionate, dedicated, and talented individuals who go above and beyond for our customers, our communities, and each other—every day.
- Responsible for the design and development of start-of-the-art software programs.
- Evaluating complex problems, considering relative value of several alternative solutions, and offer recommendations for a solution of choice for implementation. In addition to functional needs, ensure that the implementation builds-in design for scalability, software performance, stability, and debuggability.
- Produce clear design and functional specifications as required, communicate complex ideas, and play a lead, mentor and reviewer role – as required, for less-experienced team members and colleagues.
- Be able to work independently and efficiently, engaging with technical leaders and cross-functional team as needed.
- Writing code to specifications - analyzing software design specifications, determining architecture, programming, and integrating activities based on requirements and knowledge of overall product architecture.
- Continuously scale solutions (runtime, memory, capacity) to take care of next-generation larger designs.
- BE/BTech/ME/MS/MTech in Computer Science or Electrical/Electronic Engineering
- Excellent knowledge of C/C++ (C++11 and C++14 knowledge is added advantage).
- 8-12 years of experience on design and development of complex software projects.
- Strong background on Data Structures, Algorithms, and Design Patterns.
- Excellent problem solving and debugging skills.
- Willingness to explore new technology areas, formulate problem statements and independently work on solutions.
- Familiarity with Qt (Quick Time). Knowledge and experience with EDA flows and applications would be a significant plus.
- Strong verbal, written and presentation skills.
- Capable of generating and delivering project/technical presentations and reviews.
- Ability to establish a collaborative working relationship with peers and management.
- Comfortable expressing opinions, defending ideas, and actively engaging in discussions on technical issues.
- Work effectively across functions and geographies.