The design and optimization of
integrated circuits (ICs)
are essential to the production of new semiconductor chips. Modern chip design has become so complex that it is largely performed by specialized software, which is frequently updated to reflect improvements in semiconductor technologies and increasing design complexities. A
of this software needs a high-level understanding of the implemented algorithms. On the other hand, a
of this software must have a strong computerscience background, including a keen understanding of how various algorithms operate and interact, and what their performance bottlenecks are.