Having done this in a minor way, my advice is:
1) do some reading on the field, hopefully something written for the non-Ph.D. student; you will never be able to keep up with the pros but it will help you to understand what you are being asked to do
2) no one cares about your software's internals but you, probably, which has two major consequences: no one is interested in the great thing you did to the internals, and no one will keep you from getting lost in a rats nest of unmaintainable code.
3) you will need to do a bit of "code for you", stuff like unit tests and refactoring for better readability and maintainability, but no one wants to wait on you doing before you do the thing they want done. So, just allocate something like 25% of every task or project to that kind of thing, as just administrative overhead. Don't bother telling anyone else about that, except at a very high level if they ask. It's like a chauffeur getting the limo an oil change or other maintenance: the boss just wants to say "get me from A to B", and you have to make sure that the stuff to keep the car running in good order gets done without him having to tell you to do it.
4) you will not be able (or allowed) to do as much of (3) as you want, just do what you can