A soft question but I believe important to help get maturity in maths.
Not until I got admitted to a graduate applied math program that I started to learn math. Before that, I was a life science undergraduate that only know some entry level calculus. The more I learn math, the more I started to find it is more than the formulas , but also perspectives that would help to shape a good mathematician. In Terence Tao's real analysis book, he said that a mathematician don't quite think concepts in a way of "object", that they more prefer to ask what a concept can be applied to, rather than what a concept is consisted of. I think that is inspiring and indeed helped me really started to think as a mathematician.
My question is, when you are observing other people or yourself do math, what do you find makes a good mathematician ? What kind of point of views you need to have in order to solve a particular problems in fields like linear algebra, topology, real analysis, statistics, etc? Or, while learning maths, what kind of things I can pay attention to, or I can ask myself about, that would help me to become more to think like a mathematician?
(A bit more about what I used to think before I started learn math: I was pretty good at physics, which is more like modeling by reduction work to me: apply relative few principles and you can start analyze stuff. When it got to maths problem, it doesn't work in that way. I found from equations to equations, though it is "equivalent" between two equations, but the information conveyed can be much different.
Also a lot of times problems are solved by a constructive way, which seems not nature to come up at first glance, but often it indeed make sense once you have a higher view. For example, if you have the idea that the rank and determinant is actually describing "how big" a matrix is, you can easily start to crack down the dimension problems in linear algebra one way or another. But there are more subtlety in writing the inversion of matrix in adj(.)/det(.) that it is not obvious for building up an intuition of adj operator, but it is as well powerful in different application. Nevertheless, not many textbooks would tell you why we should care about adj.)
I second the notion of Intuiton and Instincts, though in a different context. Many hard research problems are hard simply because there is no cookie cutter method for solving them. After trudging though core curriculum like Calculus, Algebra, Analysis, PDE's, etc, you acquire a vast array of problem solving techniques albeit for specific classes of problems. Especially nowadays it takes an even vaster array of knowledge to push forward new results and ideas. On that notion, I think Freeman Dyson does a decent job of summarizing Birds and Frogs as two classes of (good) mathematicians, though I think that he (unintentionally?) makes out Birds to sound much cooler than Frogs. Personally I would have called them Birds and Foxes.
The point though is that IF a problem is tractable by current methods (eg NOT the Riemann Hypothesis), then a good mathematician should be able to provide a sketch for how to start tackling the problem. For example, just like an assist in soccer or basketball, even a suggested reference or place to look can be worth as much as actually writing down a solution. In short, a good mathematician should be able to (statistically speaking) give the right guesses or references to a hard problem. Of course the hard work lies ahead but, where to start is half the battle.
Many problems have intuitively obvious quantities of interest in them. Many conjectures aren't just based on numerical evidence, but on some set of intuition which is consistant with current theory. For example, in probability theory you might be looking at some complicated stochastic process and a reasonable conjecture might be that after a long time the process is asymptotically uncorrelated with its initial conditions, even if its not a Markov chain. And, the first thing to do when tackling a difficult problem is to adhere to Polya's golden rule of "solve a simpler problem first." It's amazing that sometimes a problem has a very tractable simplification and then the whole problem gets solved by some modifications. It's as if adding complexity to a problem is very nonlinear and sometimes even has diminishing returns. So I would add here that a good mathematician should give great guesses for simpler problems to solve first that are related to the bigger one.
I also think that there's an element of luck involved. This part may be controversial to some people but i'll stand by it. People like Ramanujan and Erdos are very large deviations from the average mathematician and I think for this reason they are truly masters of their fields. They delved into very specific niches of mathematics and excelled there without equals. Even the most experienced mathematicians who worked their entire lives in these niches may not have been as prolific as these giants. Supposing you are already a semi talented mathematician, I really think in this case it's a bit of luck, being close to the right problem at the right time with the right intuition. With Ramanujan, he learned all his mathematics from an encyclopedia so at least to me it's not truly surprising that he had huge clairvoyance when it came to crazy series identities. On the other hand as far as i know from his biography (The Man Who Knew Infinity), he learned and struggled with complex analysis much much later in life. Erdos had an uncanny problem solving ability and somehow naturally fit into combinatorics and graph theory. So maybe I'll end this section by saying that a good mathematician, combined with a bit of luck knows his or her niches and has good abilities at spotting problems he or she can tackle.