Write code. Lots of it. Becoming a good programmer is the same as becoming a good anything: it is mainly a matter of practice. You need to get those hours in now.
You also need to choose a field that you are interested in, so that you will be able to maintain the effort required to succeed. But I would recommend weighting your choices towards fields which give you an advantage towards employment given your situation. Machine learning, for example, would be an opportune choice, given the similarity of subject matter (statistical analysis), and the fact that there are large H1-B employers with demand for Ph.D grads with machine learning experience (e.g. Google).
Pick a sub-field, and learn it inside and out. And code, code, code.
Source: I’m was undergraduate physics student that went on to write code at NASA and now does full-time bitcoin consulting.
Machine learning seems like an excellent thing for the OP to look at, yes. It’s (1) potentially useful for a career in software, (2) potentially useful for a career in quantitative finance, (3) potentially useful in scientific research. And also (4) currently trendy, which might be either a good or a bad thing.
Write code. Lots of it. Becoming a good programmer is the same as becoming a good anything: it is mainly a matter of practice. You need to get those hours in now.
You also need to choose a field that you are interested in, so that you will be able to maintain the effort required to succeed. But I would recommend weighting your choices towards fields which give you an advantage towards employment given your situation. Machine learning, for example, would be an opportune choice, given the similarity of subject matter (statistical analysis), and the fact that there are large H1-B employers with demand for Ph.D grads with machine learning experience (e.g. Google).
Pick a sub-field, and learn it inside and out. And code, code, code.
Source: I’m was undergraduate physics student that went on to write code at NASA and now does full-time bitcoin consulting.
Machine learning seems like an excellent thing for the OP to look at, yes. It’s (1) potentially useful for a career in software, (2) potentially useful for a career in quantitative finance, (3) potentially useful in scientific research. And also (4) currently trendy, which might be either a good or a bad thing.