Ask HN: Resources to move from intermediate to advanced programmer?
Today you can find a lot of information about how to start programming and tutorials for beginners. I find myself in the situation that I have 7 years of experience behind me and want to continue learning in a didactic way. I am a faithful reader of technical books where I learn a lot, but objectively, the way I have learned best has been following some online courses where teachers taught in a practical way and from the real world concepts such as hexagonal architecture, ddd, SOLID and a great repertoire of concepts that I consider important to be a good software professional.
That is why I ask you, what resource (book, course, youtube channel...) has been the most useful for you in your career?
Translated with www.DeepL.com/Translator (free version)
6 comments
[ 3.4 ms ] story [ 23.3 ms ] threadThere are also variations in titles, both real differences and just differences between what companies call you. Are you really a programmer? It sound like you might be a software developer since you are learning concepts and architecture.
So to get to that next level, you can either do it from your perspective or the company's. Use the company's guidelines and get promoted. Or, improve areas you see as an opportunity to improve.
My company sees me as an intermediate developer, but I have often been mistaken as a senior developer or tech lead (not currently as I switched roles/tech stack). So perspective is everything.
A major issue that most of the developers like me and you within this demographic face is that of most beginner-focused content not being fast enough to learn with. This along with the fact that time is often a big issue for us. I've had numerous times where I had to learn a new framework within a 1-2 week time span in order to plug some work gap or speed up a project, and found no legitimate resources that could allow an intermediate developer like me to learn faster.
This is why I am currently creating content targeted specifically at intermediate to advanced developers and teaching new languages and frameworks (using the 'constructivist' method) in a way that makes the process of learning them much more efficient. In short, faster.
It's a little rough around the edges but you can check out the blog where I share my current tutorials here: https://fromtoschool.com.
To gain a better understanding of why the method of teaching that I've described is more efficient than others for the intermediate developer, check out this post: https://fromtoschool.com/why-most-programming-tutorials-are-...
"Java concurrency in practice" - will give you deep insights into the "how" and the "why", on this subject which is very important if you wanna call yourself "advanced"