Code contributions are always welcome.
Whatever code you contribute, it should initially take the form of either a description of the change you'd like to make in the issue queue, or if you already have some code, patch or a sandbox.
Patches are reviewed in the issue queue and may be committed to core or a contributed project.
Sandboxes can be promoted to full contributed projects, or sometimes pulled into existing projects.
The most important thing to remember when starting to contribute code to Drupal, is that with several hundred contributors to Drupal core releases, and several thousand contributors with access to the contributed git repository, there is always a good chance that the bug or feature you're interested in already has some existing work done somewhere.
Contributed projects can be found in the download section.
In-progress work for Drupal core and all contributed projects can be found in the issue queue.