I'm curious about why you're asking this question. I worry that terms like "junior" or "newbie" set up a hierarchy that doesn't need to exist. It can lead to "vertical" thinking - "I'm new at this, so I'm underneath or less than the people who aren't new at this."
In reality as I experience it, everybody is a newbie at something, and folks who aren't consistently placing themselves in a newbie position are stagnating.
Any project has different aspects that will apply to folks of all experience levels - design, problem-solving, documentation, support, etc. A well-orchestrated project will apply folks to relevant problems according to their experience, without placing a judgement on which experience is better. In most cases, it's better to have a variety of experience levels on a team, so that people can have problems to solve that they aren't yet jaded about, or bored of solving, or can't yet get their minds around. It's not that your "worthiness" increases as you gain experience, it's that you are a natural fit for different sorts of problems.
Why do you think these terms shall not exist? There are people who have more experience on a subject while other people trying to learn it. I think its a natural proccess, but I admit that calling someone a newbie is a bit harsh.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.