These days mostly server. Previously mostly UI (application and browser). Started out reading/writing UDP packets directly to the raw network interface.
If I have to state a preference, it's for using as few layers of intermediation as possible.