I’m sorry, but I disagree with that statements. In my experience (#ymmv) in three years as a professional developer, I think I have only twice had to deal with what I would call a “hard algorithm”, and even those weren’t particularly difficult. There are a lot of little algorithm things, but they were so trivial that most people don’t even recognize them as algorithms.
Algorithms are one aspect of programming. Some of the best developers with whom I’ve had the pleasure of working weren’t particularly great at algorithms. If I had to chose between a developer who “mastered” algorithms but nothing else and one who “mastered” everything else, I will choose the second person, every time, without hesitation.
the thing is that every day they rise new technologies,
Which is why it’s even more important to try to keep current, or even a few years behind. Algorithms are constant so you can just work on them as you go, but technologies are slowly evolving.
There is a principle in business that benchmarks that can be easily measured are given more disproportionate weight over things that are difficult to measure. Algorithms are really easy to test people on and to measure their success, so people think that that makes them very important. They are important, but they are far from the most important.
It reminds me of a job interview I had where they pounded me on algorithms. I did OK and when we talked after that portion of the interview, I asked them what kind of work I would be doing. They listed a lot of stuff. I commented that the coding part of the interview was entirely algorithms of trees (a kind of data structure). I asked if they did a lot of that stuff. He laughed and said, “God no, I can’t remember ever having to do a tree, here or anywhere else.” People put a disproportionate weight on them because they are easy to measure and because they think they are supposed to.
And I have met plenty of junior devs who were terrible at algorithms. I worked with a guy who had no idea what recursion was, even after I explained the concept. Another guy had never heard of a factorial. On a PR review someone was using a JS find to find a value in an enormous array. I suggested a binary search - he had no idea what I meant. When I coded it out for him in a few lines, he thought I was a magician - I had to keep explaining it to him. That is a very simply algorithms, one of the first ones I learned, one that some might not even think of as an algorithm because it is so simple (It’s basically what we do when we look for a name in the phone book.)
Work on them, but think of them as a long term project and realize that learning techs, building things, etc. - are much more important in the long run.