I'm 27 and have a bachelor's degree in mechanical engineering. I currently work as a quality engineer in electronics manufacturing and assembly, but I've had a strong interest in coding for more than two years. I recently started learning Python from scratch, and after about a week I'm still genuinely excited to practice every day.
I'm considering spending the next year building a solid foundation in programming before applying for a master's degree in computer science or a related field. Given the current software job market and the rapid growth of AI, is this a sensible direction? I'm interested in programming itself, but I'd also like to know whether the investment could realistically lead to useful career opportunities.
Would it be better to pursue a full transition into software, or combine programming with my mechanical and manufacturing background through areas such as automation, CAD scripting, data analysis, or engineering tools?
5 Answers
Nobody can reliably predict what the software market will look like several years from now. Still, learning to program is worthwhile if you genuinely enjoy it, and the fact that you’re eager to open Python every day is a better signal than trying to follow a trend. Keep practicing and build small projects so you learn how real systems fit together, rather than getting stuck on AI-related headlines.
It’s worth separating your interest in coding from the promise of a particular job. Software can be a good career, but it isn’t a guaranteed route into highly competitive roles. Location, timing, experience, hiring demand, and luck all matter. If you consistently study and build useful projects, you’ll be in a much better position to take advantage of opportunities when they appear. Your existing engineering background can also make you stand out in technical areas where domain knowledge matters.
My interest has been there for over two years, so it isn’t only about earning potential. I agree that combining programming with my current engineering experience could be useful even if I don’t make a complete career switch.
You may not need to abandon mechanical engineering completely. Programming can be especially valuable in multidisciplinary work: CAD automation, macros, plugins, manufacturing data, testing systems, simulation, and process improvement are all areas where mechanical knowledge and software skills overlap. That combination could improve your current productivity and open doors without requiring an immediate leap into entry-level web development.
If you decide to pursue this, focus on fundamentals rather than rushing toward a job title. Read carefully, work through complete textbooks or courses, and practice solving problems line by line. Classes teach concepts, but becoming effective in a professional environment takes a few years of working with larger, messier systems. Build projects yourself before relying heavily on AI coding tools; copying generated solutions can prevent you from developing the reasoning skills you need.
A transition like this is definitely possible. One person with a science background and no programming experience spent several years taking online mathematics and computer science courses, then completed a master’s degree and moved into software engineering. A structured degree route can take longer than a short bootcamp, but it may give you stronger fundamentals and more flexibility in the long term. Starting with programming basics before applying is a sensible plan.

That makes sense. I’ve been thinking about this for a long time and finally decided to act on it. Even if it doesn’t immediately lead to a new job, programming should still be a valuable and creative skill.