Wow, these are very general questions, and there are so many resources on many things that you could refer to ...
Saying this, perhaps a good starting point is a general book (I personally like the books that I start to start, because I often find that a good book tends to flow logically and goes through the topic - where are web resources better when you are more experienced and know exactly what you want to find in a very narrow field of knowledge).
I really like Andrew Hunt and David Thomas's Pragmatic Programmer: Journeyman to Master. Posted by Addison Wesley. Although you may not agree with this, he has plenty of food for thought.
Although you are already a built-in programmer, and you already know some of this book in your own way, she has a lot of wisdom to become a good programmer (or to determine that you will never become good!).
In addition, you may want to look at some Design Pattern books, particularly on the languages ββand platforms you are interested in, to give you good code examples (and hopefully help to understand).
Another book, interesting from the point of view of "Practitioner", is "Facts and Errors in Software Development" by Robert L. Glass. Published by Addison-Wesley.
Take a look at some of the articles on the Joel on Software website; they are also often thought-provoking and appropriate.
Hope this is a good start.
source share