I know there are a lot of guys who work as a professional Java developer more than 3 years and can possibly help me with next question.
But let me go back in time a bit firstly.
When I was working on my previous job (analyst position, 7 years experience), new guy in the office asked me next question: what development direction should he choose and what knowledge is valued today in a particular industry. I think it's the best question that anyone could ever ask at the new job. People, who work there for a long time definitely know actual tech stack and today's trends. Professionals can even sort it in a value (most valuable and best to start from) order without any difficulties. That's an impossible task for a newbie.
As I can see, there is some basis in Java:
1) Core: OOP, I/O, multithreading, exceptions handling and so forth..
2) Design Patterns 3) Algorithms
5) Some basic Сomputer Science
And aside from that there is something that is valued TODAY. Something that employers are looking for.
I'm a fan of the idea that any novice should be focused on main things. To find job is the first priority for me and then I can totally focuse on professional improvement.
So, now directly to the questions. I'm not a big fan of a frontend (I know it's a must have knowledge, but everything has it's time), so I'm asking as a potential backend Java developer. What do you think is a next step for a newbie who learnt basics and want to be "in demand" on today's market? If it's Spring, what exactly to start with? What's after Spring? Where would be the point for me to say to myself "stop now, you learnt something, try to get the job and be practicing what you learnt at the same time".
I read a lot of articles, but most of them are just a list of books to read one by one. I don't think it's a good practice. Without working experience it would be just a waste of time for 75% of information.
There is no objective or universally correct answer to your questions. One thing you could do is look around at companies in your region who are looking for back-end Java developers, and find out what exactly they are looking for.
In my opinion, the two most important technologies a Java back-end developer should know beyond the basics that you already mentioned yourself are Java EE and Spring. But both of these are huge areas, with many different parts. Don't expect to learn either Java EE or Spring in a matter of weeks; learning these will keep you busy for months or even years.