I work in a IT company that is deeply specialized in projects made with old and outdated technologies.
The biggest projects are usually a mix of Cobol (the oldest versions, not the most modern) and Java 4 (at least 60 projects on this stack), but we also have projects in Java 2 (less than 5), Java 3 (a dozen), Java 4 alone (at least 30) and Java 5 and 6 (usually translation without any refactor on architecture or logics of projects in older Java versions). We usually don’t use any Java frameworks (such as Spring, Hibernate, etc.), mainly because when the projects begun these frameworks did not exist. We also have assembly, assembly - Cobol, assembly - Cobol - Java (usually Java 4), C, C++, Fortran, Visual Basic projects (and probably a few other languages). Our software projects often don’t have any graphical interface; when one exists is in Cobol or in JSP displaying tables (CSS is barely used and there are only a bunch of projects that use vanilla Javascript). Our projects usually last from 3 to 5 years, but we also have projects that have lasted for 20+ years (as far as I know this is very very uncommon in the IT world).
We CANNOT change the stack of the projects and the language used because these are choices of the clients. We work with multinational/worldwide banking and insurance groups that widely use these languages. For example: a worldwide bank and finance group has all its internal systems (not only batch, but also the ones used by operators in branches) in Cobol on mainframes. The only part of the system not in Cobol is the home banking site, that in fact is not ours.
People working in my company, according to HR statistics, remain on average about 6 and a half years (another thing that in IT is very uncommon), but we have colleagues working here for 20 or 25+ years (maybe on the same project or on the same kinds of projects). Our salary is well above average (HR statistics, speaking with friends in other companies and simply comparing our job listings with those of others), for a senior could be up to the double of competitors.
In the last 5 years (and even more from last 2 years) we are facing enormous difficulties in hiring new developers, especially juniors to mid level ones. A lot of our job listings for those positions receive a ridiculously low number of applications and even less are the people that show themselves interested in our outdated projects after the first interview. How can we reverse this trend?