Hi @Sourabh Sethi !

The LinkedIn page is nice! 

But I can advise for InterSystems Developer along with videos one of the best ways to highlight the skills for large audience is DC page with a set of articles with InterSystems experience (e.g. this one or that one) and OpenExchange page with a set of projects and solutions on InterSystems technologies like this, that or another one.

@Sourabh Sethi gives you reasonable advice.  You have a code which displays something on a terminal.

If display is done with "write" command (but not with some device-specific video-memory related commands) you can switch the device before calling the "program" and it will direct all the "writes" into the file. 

But maybe "your program" changes the device to terminal intentionally in the code - so I think you cannot go with USE device approach in this case - better change the code. You say "you cannot compile the program" - but do you have the source code to see what it really does? If yes you can easily answer yourself what it does and operate accordingly. 

Maybe another idea is to change the device "terminal" in your system - maybe you can log everything from the device to a file. I don't remember if we have this feature for device settings.

Where have you seen such a global?

Keys in global are unique. If you set the value of a global for the same key you'll override the value for the key.

Like @Eduard Lebedyuk wrote if you run 3 commands:

Set ^Data("Athens") = "5"
 Set ^Data("Athens") = "6"
 Set ^Data("Athens") = "7"

You'll first have 5, then override it with 6 and end up with value 7 for the key "Athens".