What do you need to be a great QA Analyst?
There is a lot of answers to this portion of the question. The main things I think would be:
Know your limitations and strengths. I am weak with UIs so whenever I am tasked with a piece that uses UIs, I typically will ask for assistance and get a 2nd party to verify that I did not miss anything. My strength is on the technical and code end, so I am constantly verifying code, reviewing code and checking for potential issues in code.
Asking questions is the primary duty of QA in my eyes. The who, what, when, where and hows are what we need to be able to do our job well. Often times just asking those questions will find the issues. Asking others about what they are expecting from the system and asking yourself those questions for every change in the system is how you create the testing scenarios.
If you could tell me one thing that you would consider necessary for me to know, what would it be?
Know your strengths and weaknesses, what the company expects from you and the software and what you plan to accomplish. A lot of the information you will gain from just time on the job, others you will naturally have. As for 1 silver bullet to QA, there is none. QA is designed to be multiple mindsets viewing the project from different angles in order to accomplish the goals. Without this ultimately multiple things will be missed.
If you want to be more valuable to your company, find your niche, the task that no one on your team seems to either want to do or is actually doing and master it. This can be something as simple as documentation, organizing and managing data or creating extensive tools and utilities for the team.
If you could suggest programs that could help with testing and potentially make this journey easier, please comment as well.
For tools check out this answer. It gives a rather comprehensive list of utilities and tools.