If you use a SPV wallet (a wallet in which you don't need to download the full blockchain), the server you connect to has the ability to link your addresses with each other and to your IP address.
If you want more privacy, you must use bitcoin core and run your own full node.
This is true. Even if the developers do not know about the addresses and can not track the coins, the owner of the central server that SPV wallets are connecting to, to sychronize with the blockchain can link the addresses to the same wallet and also linking the IP address. But due to the inconveniences or data needed to run full node, some people can prefer SPV wallets.
But just in case someone is using SPV wallet, it is still possible to make use of several wallets (like having two, three or more Electrum wallet) and Tor connection to mask central server to track you. For example, having just a single address per wallet and having several wallet, making use of Tor while connecting, rerouting the connection while connecting to another wallet. People can make use of SPV wallet this way which will make central server not to be able to link addresses together. But this can be inconvenient and humans are subjected to errors.
Running full node while using Tor is the best way to having privacy, Bitcoin Core is greatly recommended, but you can also run your own Electrum server or making use of full client wallets like Armory.