basically it means that you should load all (or rather most) of your js after the page dom is rendered.
In Magento2 there are still some problems with the js merging and bundling (we had the problem, that all js files were merged into the cached file instead of only those that are needed on the page).
Until this is fixed (I'm not 100% sure if it has been fixed in 2.1.2), I would recommend enabling the js minify but disabling bundling and merging.
Then the files will be loaded through require js asynchronously after the page dom is rendered and make the page speed tools more happy. The site itself will load faster but you may have some sideeffects (like jumping elements) when some elements are loaded rather late.
To optimize that you want to load all js and css that is responsible for those elements, a customer is seeing directly after the page is loaded (without scrolling) pretty early (e.g. in the header)
Just btw, we had a similar problem in Magento 1 recently where it can be quite tricky to get the js in the footer. We found a module that worked really well for our project: https://github.com/bobbyshaw/magento-footer-js