1. Correct, when you create a job definition the code is written there, so any later modifications to the program in Studio would not carry over to the job. One way around this would be to use the filesrvc access method to %include the program you are making changes to.
FILESRVC Access Method
https://go.documentation.sas.com/doc/en/pgmsascdc/9.4_3.5/lestmtsglobal/p0qapul7pyz9hmn0zfoefj0c278a...2. The WORK library is specific to a SAS session, so each job would have it's own WORK. You would need to use a library other than WORK if you want it to persist between sessions. You could create a job to create such a library at the beginning of your flow execution and another to delete any tables in it at the end.
3. Depending on the Viya release you could do this in your compute context definition or an autoexec if you want it to apply to all sessions. If you want it just for this flow and it's just one libname statement, you would just add it to the code for each job.
--
Greg Wootton | Principal Systems Technical Support Engineer