The supply for engineering and CS is somewhat regulated by the following:
A. At many flagship-level universities, the departments are capacity-limited, so the number of engineering and CS graduates they can produce is limited.
B. At many less-selective universities, the rigor of the degree programs limits the number of students capable and willing to complete them.
C. Acquisition of comparable skills through self-education or experience is almost non-existent in engineering; in CS, it is more possible for motivated people to self-educate, but that is still rare compared to those who do the usual route of studying CS at a university.
D. H-1B work visas are less of an issue than commonly thought by people who blame foreigners first, due to most being taken by outsourcing companies doing lower-end IT work (of course, it is a bigger issue for those working in IT departments that can get outsourced).
However, the industries associated with various types of engineering and CS can have their ups and downs, and the general economy can also affect the job markets.