I need a .schema.yml file when I create a new custom field?
To make sure configuration and default values are using the correct types, there can be tricky bugs related to float/int for example.

If you have interface strings in your settings, you can also use the config schema definitions to make them translatable.

And it can be used to validate configuration.

Config schema is not enforced by default, see https://www.drupal.org/node/2625212. But it enforced by default in tests, so try to write a test that creates a field of your type and it will complain and tell you what schema is missing.