
Software Engineer II
Responsibilities
Qualifications & Requirements
Experience Level: Mid Level
Full Job Description
Cadence, a recognized leader in electronic design with over three decades of computational software expertise, is seeking a Software Engineer II for its Noida, India operations. We are looking for innovators who are passionate about making a significant impact in the world of technology. This role involves contributing to the design, development, and maintenance of advanced low-power design and verification tools for custom mixed-signal IP designs, specifically within our VPM R&D team.
You will apply your strong software development skills, including data structures and algorithms, in C++ and Tcl programming languages. Familiarity with the Linux operating system, shell scripting, and make-file concepts is essential. The position requires creating and reviewing functional specifications and developing robust unit and feature tests to ensure software quality and efficiency. Experience with low-power circuit design and verification concepts is crucial.
Key Responsibilities:
- Design, develop, and troubleshoot sophisticated software programs using C/C++/Tcl in a Linux environment.
- Apply expertise in data structures, algorithms, and low-power circuit design principles.
- Create and review functional specifications for new product features.
- Develop and maintain comprehensive unit and feature tests.
- Enhance software stability and debugging capabilities.
- Optimize solutions for performance, memory usage, and scalability.
- Collaborate effectively with team members, sharing knowledge and contributing to a positive team dynamic.
- Engage with customers to understand needs and provide creative solutions.
Qualifications:
- Bachelor's or Master's degree in Computer Science Engineering, Electrical Engineering, or Electronics Engineering.
- 2-4 years of experience in complex software development and maintenance using C/C++.
- Strong foundation in software data structures and algorithms.
- Excellent debugging skills and the ability to prioritize issues effectively.
- Proficiency in a UNIX/Linux development environment, including shell scripting, GNU compilers, linkers, and make-file concepts.
- Experience with debugging tools (e.g., GDB), memory/runtime profiling tools (e.g., Valgrind), and static analysis tools (e.g., ASAN).
- Familiarity with Microsoft Office Suite.
Desirable Skills (Big Plus):
- Experience in Custom Analog Design and Verification.
- Expertise in Low power design and Verification for custom mixed-signal designs.
- Knowledge of Low Power Specification formats (e.g., IEEE1801 (UPF), Liberty, CPF).
- Familiarity with Digital Implementation flows on advanced nodes.
- Experience in EDA tool development.
- Knowledge of QT, GUI, and Tcl development.
- Proficiency in scripting languages and flow development.
Behavioral Attributes:
- Strong written, verbal, and presentation skills.
- Ability to build collaborative relationships with peers and management.
- A proactive and creative approach to problem-solving.
- Effective cross-functional and cross-geographical collaboration.
- A commitment to integrity and continuous improvement. We are offering a permanent position in Noida, India, for individuals passionate about pushing the boundaries of technology and solving challenging problems.
Company
Cadence
Cadence is a leading health technology company dedicated to empowering patient-centric health systems across India. We leverage cutting-edge technology and clinical expertise to deliver proactive, rem...