Of course behind the basics of data modellingoffered scripting within qlikview more then only loading several tables behind one another and doing (frequently) the same things again and again. Instead of this you could use various control-structures with different kinds of loops, if-then-else statements, Variables and in sub-endsub statements or in include-variables outsourced code. Such structures makes a script clearer, easier to maintain and often they perform better. To be able to reuse code could save a lot of time.
Further very helpful is it to track what's going on while the script-execution, especially if something not worked as expected. For this you could enable script-logging, trace loop-counter or Variables and use the different options of the error-mode.
Are the amounts of data relative small we need not to think much about the script-runtime, but do we need to handle bigger-datasets or needs to query some loadings quite frequently, we should consider incremental loadings to make sure that only new or changed data will be loaded.
There is some content-overlapping within the above used links but I think the complement to eachother is useful and of course you will find many more interesting postings here within the qlik community to these topic - the notes here are a good starting point to go further.