Contribution (and getting developer status) in the OpenSER project works somewhat similar to other Open Source projects.
You could start with task like patch review, smaller cleanups, documentation improvements and fixing of some bugs that were reported on the user list or the IRC channel. You should also participate in the discussion at the devel list.
Most people wrotes then after some time a own module or a big enchancement of the core, and get the developer status this way. If you have ideas for improvement of the server, just present your plans on the devel list. Normally a consensus is quickly found, and you can start to implement them.
We don't have formal coding standards that need to be followed, but you should try to fit your style to the existing code. Module and core features must also be documented, and the code should also have some (doxygen) comments describing the structure and function.
If you write a new module, prefix your functions (e.g. with the module name) and use 'static' as much as possible to keep the C namespace clean. Standard save coding practises for C (e.g. use snprintf instead of sprintf, do input parameter checking) applies of course also. You should try to use existing APIs of the core instead of implementing your own copy of them. Contributed code should use the GPL 2 or later licence like the existing code.