What is the difference between a miner and a full node? I have trouble finding the difference between a full node and a miner. It looks like these two names are used interchangeably which I think is not entirely correct. Miners do process blocks and full nodes verify if transactions which has been packed in the block by miners are all valid. Some can run a full node without running the mining software.

I know a lot of people who think that miners and full nodes are one and the same. 

Thank you for your help.
A 'full node' is a participant on the network that has independently validated the complete copy of the blockchain, and thus has verified all transactions since the beginning.  This requires about 350GB of drive space (currently).
A pruning node is one that has verified all prior transactions; however, it has deleted all blocks below a certain space requirement, but still has a copy of the UXTO set.  It's less useful to the community, but is useful to the node's owner, and takes less resources on the computer (can be under 1GB of drive space).
A miner on the other hand creates blocks in the blockchain which the nodes keep.  Basically, the miner adds transactions to a block, with the goal of creating a new block with a valid hash that will be accepted by the network.    Miners spend about 10 minutes working on a problem, but nodes keep that result forever after in the database and verify it with others.  Miners don't need to know about prior blocks (except for the prior one) with very few exceptions.
So, a miner is completely different than a full node.  It's not comparing the same like things.  Full vs Light is comparing two like things - fruit (apple and orange).  Miner vs FullNode is comparing two totally different things (apple and fence).