EDA Staff Software Development Engineer (C++, PNR/Synthesis)
Lattice SemiconductorJob Title
EDA Staff Software Development Engineer (C++, PNR/Synthesis)
Role Summary
Lead development of FPGA EDA software components focused on placement-and-routing (PNR) and synthesis, delivering tools and infrastructure for Lattice's FPGA products. This is a full-time, onsite engineering role based in Pune, India.
Work includes new feature development, maintenance of existing tools, specification and planning, and cross-team collaboration. Right to work in India is required.
Experience Level
Senior - requires 12+ years of large-scale software development experience, preferably in FPGA/ASIC EDA domains.
Responsibilities
Deliver and maintain high-quality FPGA design tools and related infrastructure; contribute to specifications and development processes.
- Develop and maintain FPGA software for PNR, synthesis, and tool infrastructure across small to large FPGA products.
- Design and implement capabilities for next-generation FPGA products.
- Develop advanced security and configuration flows (isolation design flow, partial reconfiguration).
- Support and maintain existing FPGA design tools and workflows.
- Write functional specifications, unit-test plans, and participate in planning and reviews.
- Improve development methodologies, tooling, and processes.
- Drive projects, lead technical discussions, and collaborate with product, QA, and cross-functional teams.
Requirements
Key qualifications and skills. Education requirements are listed separately below.
- Must-have: 12+ years in large-scale software development for engineering applications; strong proficiency in C++ and modern software engineering practices.
- Must-have: Strong foundation in object-oriented design, data structures, algorithms, and graph theory.
- Must-have: Experience developing and testing software on Linux and Windows platforms.
- Nice-to-have: Experience with partial reconfiguration flows and familiarity with commercial FPGA software tools or FPGA logic design.
- Nice-to-have: Experience with shell, TCL, or Python scripting; modern C++ proficiency is a plus.
- Detail-oriented, independent problem-solver with strong written and verbal communication and ability to lead cross-functional work.
Education Requirements
BS, MS, or PhD in Electrical Engineering, Computer Science, or a related technical field (explicitly listed in the source). Advanced degree or equivalent technical experience is expected for a senior role.
About the Company
Company: Lattice Semiconductor
Headquarters: Portland, Oregon, USA
Lattice Semiconductor specializes in low power, small-form-factor programmable logic devices and solutions. The company is known for its innovative technology that enables a wide range of applications, including communication, consumer, and industrial markets.
