DEV Community

Discussion on: I've Trained Programming Interns For 6+ Years, Ask Me Anything!

Collapse
 
haseebshout profile image
Haseeb Munir

Hello Jason,

I just read your post and I thought that I should connect with you as I am seeking advice regarding the career switch I want to make. I am a Mechanical Engineer and most of my life I have lived in Middle East, hence most of my 12 years experience is on Oil & Gas Industry projects. I was more towards Projects Control department.
I moved to USA 3 years ago, and now I have my work permit here. I have been working on different contractual jobs but I always wanted to make a switch to IT industry as I don't enjoy Oil & Gas anymore.
Obviously I had to do some research about what I want exactly and it seems that I am gravitating more towards Data and AI.
After digging in deeper I found out that any coding language is something that I must know in order to move forward.
I would like to ask you what exactly is the path in your opinion that I should follow in order to learn the basics quickly and then later land a job.
I am 36 now, Someone recommended me Udacity Nanodegree but I am not sure if 6 to 8 months course can help me find a job.
I know that the first step is learning a coding language but I would like to learn by working on a project. I know about many online institutes and recruiting agencies that would offer a crash course worth hundreds of dollars or even free and would promise that they would place the candidate and land a job. But what happens actually is that after the course, they would prepare a Resume that would have 5+ years of fake experience and the candidate would be told to prepare for the interview accordingly.
To be honest, as mentioned above, I would like to find a way where I could learn the language by working on a project, polish my skills and even start on a basic level job.
What are your suggestions.
Thanks in advance,
Muhammad Haseeb Munir.

Collapse
 
codemouse92 profile image
Jason C. McDonald • Edited

Hi Muhammad,

Thankfully, formal education is not always a necessity! It played such a minor part in my own professional journey.

Here's what I recommend:

  1. Start learning a language. Given your interest area, start with Python. Automate the Boring Stuff with Python by Al Sweigart is an excellent place to start. After that, check out my own Dead Simple Python series to dig deeper. While learning any language, focus on strengthening the fundamentals.

  2. Plug into developer communities. The #python channel on Freenode IRC is an excellent community to join! That was the crowd that first broke me in as a greenhorn, and I continue to learn so much from them. Make yourself a part of the communities you're in. Ask questions. Answer questions, or at least try to. Write articles here on DEV, especially #devjournal posts initially, documenting what you learn. Communication in all forms is essential to success in programming, and it also builds your skills in English and whatever other language(s) you use.

  3. Find an open source project to contribute to. One possibility is Mycroft.ai, a fairly mature open source personal voice assistant project, developed in Python. You can start by writing simple skills, and working your way up to the tough stuff. Challenge yourself!

  4. When you encounter a problem that seems too tough, learn what you need to solve it. Talk to people in your programming communities. Experiment. Break things, and then fix them! You learn more from these moments of being "stuck" than you could from any book or course.

Lather, rinse, repeat. If you dedicate yourself to this process, soon enough, you'll have gained enough provable knowledge through your open source participation to earn a spot in an entry level position. Bonus, the friends you make over time in the communities you're in may even be willing to recommend you, once they've gotten to know you, of course.

Collapse
 
haseebshout profile image
Haseeb Munir

Hello Jason,

Thanks for the swift reply. I will start following the steps and might again ask you for your help if I need some help.

Thanks once again