In developing an application, must I run a node for my app to be online ie using goal?
No you can always use an api service like PureStake. https://developer.algorand.org/docs/build-apps/setup/#1-use-a-third-party-service
Yes I got that. I use Purestake but certain function I need to use is the key management daemon(KMD) which requires to use goal and just as Fabrice had said, I have to try out some links. Thanks for help.