Scia Engineer Optimizer is an example of a new generation of software for the design of civil engineering structures. It is software which calculates internal forces, checks the compliance to the code, and on top of that, this software is able to “find” the final optimal structural design. Up to now, the term “structural optimization” is understood mostly as an automatic search for the most economical beam profiles or plate thicknesses. However, the structural design is much more. The criteria defined by modern standards and codes are very complex, they are much more than just fulfilling of bearing capacity of beams or slabs. There are many constraints for dimensions with respect to the serviceability of the structure and its safety and there exist also limitations and constraints coming from the construction process. To reach really optimal structural design, it is necessary to consider all relevant aspects and demands. These are rather general and complex and, therefore, the software tool supposed to cope with them must be also very general and flexible.