A couple of generations ago the expectation was that you can get an education, develop a given skill-set and then stay in the same job for many years at a time. For some jobs that is still true, but for an increasing number of jobs, this has not been true for a very long time.
For instance if you want to become a programmer.
If you want to become a decent programmer you will have to be prepared to learn new things every year for the rest of your career. The most important skill you will have to develop is the skill of acquiring new knowledge. Preferably on your own. You need to learn new programming languages, new methodologies, new tools, new frameworks.
If I look back at the software engineering classes I had at the university 20 years ago, almost all of it is either irrelevant, outdated or seen as incredibly naive today.
If you teach software engineering, you have to find some way to prepare your pupils for a life of learning new things. And for those who are not able to learn new things easily, you should probably advise them that software engineering is not for them.
If you are a software engineer: try to anticipate what skills will be needed a couple of years from now and start thinking about how you should acquire these skills. If you expect to just coast on the skillset you have right now, some kid fresh out of school is going to take your job.