30-year programmer here. Knowing an industry and understanding how to build tools that support that industry are the two most important things, so find an industry you'd like to work in for the rest of your life, and start focusing from there. LEARN EVERYTHING YOU CAN about that industry. Finance, manufacturing, healthcare, gaming are all different and require different mindsets and capabilities. While the basic tools may be the same (algorithms, data structures, flow control, etc.) what will really set you apart is your knowledge of the industry itself. I work in healthcare, and to be a solid programmer in healthcare you have to learn and master a staggering amount of medical knowledge; you have to know your nephron from your glomerulus and why they are important.
Even within healthcare, the programming and required industry knowledge will be different depending on whether you're developing clinical tools, financial tools, performance monitoring programs, HR, engineering support applications, etc. etc. Pick a path and become an expert that can program effectively to support that operation.
When I hire junior programmers I look for four things: the ability to think analytically, an in-depth understand of clinical care delivery, basic programming skills, and the ability to learn anything they need to learn BY THEMSELVES. Analytical thinking and self learning are most important.
And one more thing: I don't give a flying crap about degree programs or certs. They are essentially meaningless in the real world. School taught you how to use saws and nailguns, it didn't teach you how to build houses. Now you have to learn how to build a house. The tools will come in handy.
So, my advice would be to stop thinking of yourself as a programmer and start becoming an expert in some industry. An expert that can program to support that industry's operations.
30-year programmer here. Knowing an industry and understanding how to build tools that support that industry are the two most important things, so find an industry you'd like to work in for the rest of your life, and start focusing from there. LEARN EVERYTHING YOU CAN about that industry. Finance, manufacturing, healthcare, gaming are all different and require different mindsets and capabilities. While the basic tools may be the same (algorithms, data structures, flow control, etc.) what will really set you apart is your knowledge of the industry itself. I work in healthcare, and to be a solid programmer in healthcare you have to learn and master a staggering amount of medical knowledge; you have to know your nephron from your glomerulus and why they are important.
Even within healthcare, the programming and required industry knowledge will be different depending on whether you're developing clinical tools, financial tools, performance monitoring programs, HR, engineering support applications, etc. etc. Pick a path and become an expert that can program effectively to support that operation.
When I hire junior programmers I look for four things: the ability to think analytically, an in-depth understand of clinical care delivery, basic programming skills, and the ability to learn anything they need to learn BY THEMSELVES. Analytical thinking and self learning are most important.
And one more thing: I don't give a flying crap about degree programs or certs. They are essentially meaningless in the real world. School taught you how to use saws and nailguns, it didn't teach you how to build houses. Now you have to learn how to build a house. The tools will come in handy.
So, my advice would be to stop thinking of yourself as a programmer and start becoming an expert in some industry. An expert that can program to support that industry's operations.