Usually a junior dev does not have a lot of experience with the first programming language he or she knows (or the main language, if they know more than 1). Normally, it is an experience of 1 to 2 years.
Any junior dev is trying to improve, usually making some mistakes that any mid-level dev or senior dev consider a silly mistake. And this fact adds with the misunderstanding of some tools or technologies.
They usually do not know how to estimate the work in a project. They are starting to have a good notion of their own productivity.
Usually, it is recommended that any junior dev should be followed by more experienced developers with frequent reviews.
They should start to think about learning foreign languages, but usually they do not have fluency in any foreign language.