Understanding Blockchain client implementation details
The source code of Bitcoin's reference client, Bitcoin Core, is a good place to learn how the Bitcoin developers solved these problems. You can find Doxygen documentation for the source code here.