Trying to shift career to software engineering at age of 30. Any advice?
After browsed many pages of questions i barely found q&as about career shift. I would like to throw one.
I am a environmental engineer worked for 5 years with a master degree. In recent two years i started feeling more and more interested to the computer science and coding, especially in machine learning. I started taught myself coding in python with online algorithm classes and textbook. I tried school 42's intence c programming and quite enjoyed it. I also glanced over very basic fullstack skills with django and flask. As the biggest investment, I spend a ton of time on math, statistics, probabilities, machine learning, and deep learning. I am now fairly comfortable replicating kaggle kernels, with good understanding and intuition behind common algorithms like xgb, cnn and vanilla rnn.
After two years of learning, i now am thinking of landing a data-oriented job in tech field. What kind of positions in industry is a good shot for me, their levels, functions, etc? What should my resume be like for those positions, what projects, education, experience? I am open to any tech roles.
#technology #engineering #careershift Thanks in advance!
4 answers
G. Mark’s Answer
First off, as an engineer, you have a tremendous leg up on moving into Software Engineering. As an aside, in my opinion (and I may get a lot of heat on this), engineers make good programmers more than programmers make good engineers. But whether that's actually true or not, if you have already studied programming and enjoyed it, you're mostly already there. Be prepared to start at the bottom of a programming job, but it will mature quickly when you "show your mettle", as it were. You've already dipped into popular and in-demand programming languages. Also try getting your feet wet in others. The one thing employers will look for is your experience in a high-demand project in programming. I spent most of my development time as a realtime programmer for a communications system with a high reliability demand. This served me in good stead. As an engineer, you will likely progress quickly, but I would counsel you to branch out into more languages and operating systems. As for the latter, there are various "Unices" -- Unix and Linux of various distributions. For languages, C++ and several other that are very easily accessed over the net. See what you prefer. A few years or less of experience in a software development organization will be great. It will also give you a chance to see if you really want to get into that area. Best of luck! You'll likely enjoy this!
Spruce’s Answer
Congratulations on your progress so far. I’ve been told that age 30 to 35 should be your last change, so you’re good. With Bachelor’s and Masters degrees in most engineering disciplines, and with five years or so solid experience in that field, then you’re mostly there already. I am a retired ME and don’t know what your software terms mean, in fact “django and flask” sounds like a drunk 18th-century pirate with his fancy curved sword.
But what I think computer science (and software engineering?) firms would like to see is the following: (1) a resume that jumps out of a stack of resumes from degreed computer scientists who also have five years’ experience, (2) one or two environmental engineering projects you were involved with from start to finish at reasonable but increasing levels of responsibility, (3) any software related accomplishments (and their significance) at your current job, (4) your computer science education (in lieu of a degree) bundled up into some measurable groups that a computer science firm could understand and evaluate against resumes from other applicants for that job.
As for the type of job you want, that should be driven primarily by what you want to do in the computer science realm rather than what you or others think you’re qualified for given your “informal” education. Your options could be many and I can’t help from here, but do remember that you’ll be negotiating from a position of strength because you already have a job. You need to be realistic, but if you sell yourself short, you may not respect yourself in the morning. All the best.
Satyabh’s Answer
Learn to Code. Join Coding Boot Camps. Use lot of useful Online Courses and Projects.
Read Text Books but always write code and see how it works. Be passionate about it.
Satyabh recommends the following next steps:
Dhairya’s Answer
Hi Hanfu,
Happy to help provide resume advice and share my experiences. I work as a Data Scientist doing machine learning and nlp research and engineering. Like you, I transitioned into this field from different background. Normally, CV doesn't allow sharing of contact information. But you can find me on LinkedIN (my full name is in my profile).
Good luck!