As a rule, legacy systems are older, often proprietary, systems that have been developed and enhanced in-house over years and decades. In many cases, they are still operated on mainframes. Nevertheless, over many years, it is these systems that have formed the backbone of company IT.
System development is often not well documented and maintenance limited to a few qualified employees. Typically, the development and operating infrastructures are outdated. New employees are hard to find here. The legacy development methods make the systems extremely complex and confusing to maintain and develop. This makes it almost impossible for firms to keep pace with new IT requirements.