Facebooktwitterlinkedinmail

Answer by Ramdas Mozhikunnath:

It is hard to give a recommendation without understanding your background in the last 5 years as a Verification engineer (For eg: what kind of ASIC and which domain was your area or work, what methodologies did you learn/use etc) as  well as what areas in software interests you.
I am assuming that you are not looking for a drastic move from ASIC verification to  web technologies or data base management or other application level software development.
A general trend in chip design is  digital designs becoming more and more SOC (System on Chip ) designs with embedded microprocessors and system components. Design complexities are also on a continual rise. A Verification job is demanding more software skills with industry widely adopting languages like SystemVerilog and methodologies like UVM which are built on top of object oriented programming concepts.
There are also several related areas in Chip Verification or Validation if you have more interest in software.  Most of these need strong understanding of software and programming skills along with  fundamentals of hardware design.
1) EDA tools development : There is lot of innovations happening in EDA tool development – in terms of new simulators with better efficiency, portable and graph based stimulus for use across different levels of verification/validation,  enhancing debug and automation and many more.
2) HW/SW  Co-Verification : A lot of design verification now has more emphasis on software development and testing along with  Hardware development.  A trend is to have  early models of designs ported to emulators or FPGAs to enable early software development.  This  combined HW&SW Co-verification  utilizes software test patterns or real applications to be simulated on Hardware design models in emulator,  and helps in identifying  system level issues and performance bottlenecks earlier.
3) System Level Modelling and Architectural exploration:  A lot of chip designs  needs high level abstract modelling before the design implementation starts to help understand how it fits to the application/system designed and the different possibilities of architecture that will give  the right  power/performance specifications. Most of this work happens in high level languages like C++ or System C and needs good software skills
4) Firmware development for SOC designs:  Most of the chips with embedded processors  needs firmware to be developed for programming the chip and enabling different kinds of testing in the lab and eventually at a customer site.  This is also a software job but needs a lot of understanding about  hardware design internals.
Hope this helps and will be happy to help if you have any other specific questions !

As a chip-design verification engineer, what the best way to move to software engineer?

As a chip-design verification engineer, what the best way to move to software engineer?