Railway engineering is a multi-faceted engineering discipline dealing with the design, construction and operation of all types of rail transport systems. It encompasses a wide range of engineering disciplines, including civil engineering, computer engineering, electrical engineering, mechanical engineering, industrial engineering and production engineering. A great many other engineering sub-disciplines are also called upon.