CiviCRM is developer friendly. Our extension system, hooksand APIs are designed to allow you to extend CiviCRM without touching core files. If you (or your developer) has added functionality to CiviCRM, then please contribute it back as a published extension. Sharing your code means others can benefit from it - and improve it - on your behalf.
And if you have improvements for our core distribution, we'd love to hear from you. Individual patches and longer term commitments to improve the code are most welcome. Most of our planning happens on the Wiki. Development and bugs are managed on our issue tracker. Read our developer resources to get started.