Hello Martin,
it's hard to tell you, how your job names should look like. You will need to sit down (with colleagues) and think, what you need.
Here is what we do: ['...' means *our* naming convention for things]
We separate our job names in 'slots'; 'slots' are separated by '-' (because we got names from outside, which use '_' in what could be a content for a slot). We use '.' to separate items in one "slot', if we should need it.
We have the following slots: (you'll see that you need to get your own ;-)
# System component ("Jenkins" for CI-internal stuff)
# duplexMode("FDD"/"TDD")
# HW
# deployment
# branch
# specialBranch
# purpose (build/test/publish/...)
#
variant
#
discriminator (if we need several jobs of the same type; e.g. for different users)
a: PHY_TX-TDD-HWx-L1-FB2003--test-MIMO-dynamic
If a slot is unused, just the '-' remains, e.g.
b: PHY_TX------ciScriptsUpdate
(and this should have been named JENKINS-... - we have our slips...)
We have a "'jobNameParser' which picks apart these things, and is used so the jobs do what their name says they should do.
(For special jobs, 'b' above, we don't use that; only for more generic like 'a')
The order you choose, should e.g. give a reasonable sorting.
Now you need to find a structure fitting your needs. (*)
Have the appropriate amount of fun
Martin
(*) We had literally discussions on and off over weeks, years ago, before we settled for our current structure.