Generally speaking, yes, it's possible. All a developer has to do is to carefully implement the protocol specification in her programming language of choice.
However, a formal monero protocol specification does not exist at the time of writing. It means hard times for 3rd party client implementations as they would have to have deep knowledge of the existing monero client and protocol.
Finally, I'd like to mention that btcd is not the only full node implementation for Bitcoin, apart from bitcoin-core there is also libbitcoin, another full node implementation. And to compare, other blockchain platforms also offer different full clients, e.g., Ethereum has seven different implementations as far as I am aware of. All you need is a well-written protocol specification.