Principal FPGA Software Engineer – EDA
Achronix Semiconductor Corporation is a fabless semiconductor corporation based in Santa Clara, California, offering high-performance FPGA solutions. Achronix is the only supplier to have both high-performance and high-density standalone FPGAs and embedded FPGA (eFPGA) solutions in high-volume production. Achronix’s FPGA and eFPGA IP offerings are further enhanced by ready-to-use PCIe accelerator cards targeting AI, ML, networking and data center applications. All of Achronix’s products are supported by best-in-class EDA software tools.
Our engineers research, invent, and implement robust software solutions for placement, routing and timing optimization of Speedster7t large standalone FPGAs and Speedcore embedded FPGAs (eFPGAs), while leveraging unique features of the Achronix FPGA technology. You will utilize your knowledge of EDA algorithms and data structures, in the context of a high-performance timing-driven FPGA placement and routing application, to make significant contributions to the ACE software tool chain.
Required Skills
- Excellent programming and debugging skills, and expertise in the C++ programming language
- Expert understanding of EDA software data structures and algorithms, specially VLSI circuit placement, routing, and design optimization in the context of FPGAs
- Knowledge of scripting languages, especially Tcl and Python
- At least four years of industrial software development experience in R&D of EDA software with a history of increasing responsibilities.
- Ability and willingness to try novel approaches to solve difficult software engineering problems
- Strong analytical skills to understand cause and effect in large software code base.
- A proven track record of R&D contribution in commercial EDA Software products that is directly responsible for customer success.
- Expertise with Linux and Microsoft Windows operating systems, compilers, and IDEs
- Familiarity with the Verilog and/or VHDL HDLs
- Familiarity with software multi-threading techniques
- Excellent understanding of digital circuits
- Knowledge and prior experience in developing and optimizing FPGA architectures is a plus
Education and Experience
- MS in Engineering (Computer Science, Electrical/Computer, or other related/applied engineering) from a top research university with at least ten (10) years of industrial experience in EDA software development using C++
- Ph.D. with original dissertation in EDA software R&D from a top research university, and a portfolio of high-impact peer-reviewed publications, is preferred
Flynn Was Right: How a 2003 Warning Foretold Today’s Architectural Pivot