My two cents as a self-taught developer

Mazen Emam
6 min readJun 15, 2021
Photo by Hello I’m Nik on Unsplash

Hello, again!

It’s been a long time since my last post 😅 I’ll try to be more consistent 😂🙏

I’m just not used to writing, talking, or sharing my thoughts. To be honest, I’m all in for quality over quantity when it comes to talking, that’s why I’m usually that silent guy at gatherings and reunions 🤣

Anyway, today I felt like sharing my brief story as a self-taught developer and how can you avoid the mistakes I did through my journey.

First, a little background, I was not lucky enough to get introduced to coding at a young age. No one I knew used to code, I didn’t even know I’d end up coding when I signed up for the Management Information System department back in college (I was 20 then).

I was going for Statistics or Business when I thought of giving it a shot; I enjoyed it, so I stuck around and ended up graduating, and that’s how I got introduced to coding.

Little did I know that in college you’re only learning the alphabet (should have realized that sooner when most of my course titles were an introduction to …. 🤦)

After college came a one and half year of military service where I ended up forgetting everything I’ve learned through college 😞

On the bright side, most of what I learned in college were introduction courses and academics, so it all worked out in the end as I didn’t need most of it. And as a developer, you have to learn how to teach yourself new stuff.

My First Mistake: Guidance

Through my 2 years in college, I never had my eyes set on a specific something that I felt like “This is the ONE!”

I had 12 courses throughout the two years. They were all okay-ish, and whenever I asked a professor what career should I pursue, they would tell me things like “You can find a job in any of these fields easily.” or the famous “Pursue what you love.”

Both of these pieces of advice turned out to be horrible, you can’t find a job easily in any of these fields, for God’s sake, I couldn’t find a job ad asking for an Android developer for 6 months 😂

On the other hand, I was swamped with ads for web developers, so I decided to jump ships and ditch what I love. Looking back, it was a good call, it’s been 3 years and I still rarely see job ads for mobile developers.

This could have been easily avoided if I’d had my eyes set on the market back in college or if I’d had some sort of guidance/mentor back then to tell me what’s hot, so I should pursue it and what is cold, so I can avoid it.

Also, geography plays a role. You probably have a better chance of getting a job in Data Science or AI in Cairo than in Alexandria, so unless you’re willing/capable of moving to Cairo, you shouldn’t waste your time.

If you’re still in college, do yourself a favor and check the jobs section on LinkedIn. Congrats, you’ve saved yourself the 2 years I’ve wasted in college

My Second Mistake: Resources

There are many resources out there, I know 😫 I’ve been through them all 😓

This is a common mistake beginner fall into, there’s no definitive resource that will teach you everything you’re ever going to need to know about a subject. Accept that! I kept jumping between courses and websites from YouTube to Udacity to Udemy to freeCodeCamp and back again to Udemy.

Education is a continuous process, unfortunately, our poor educational system raised us to believe that education ends with college, but this is not the truth, especially when it comes to tech, there’s no end line!

Also, it’s a shame that it took me a whole year to get to know that fact, any of the sources above would have been sufficient, but I never knew/had no one to tell me that for a fact 🙁

For the second time, a mentor or any form of guidance would have saved me a ton of time and effort. If you’ve read this far, congrats, you’ve saved yourself another year I’ve wasted.

My Third Mistake: Isolation & Consistency

I know it; you know it; he knows it; she knows it. The sad fact is, this is a lonely career. You stay by yourself, in your room, smashing your head against the keyboard and the walls, in front of the blue screen for four? six? Maybe even eight hours each day! This is, the least to say, Hard.
What is even harder is having others lessen from how hard it is. If you’ve anyone around you that’s been doing that to you, cut them, no regrets!

Seriously, it’s hard enough learning new stuff every day, it’s not always “Fun” or “Exciting” most of the time it’s a struggle.

The famous “Oh, that’s why” when you finally understand what’s wrong with your code

Instructors in Udemy understand this struggle well, that’s why they created discord servers encouraging students to connect. It’s a good way to break the silence when you’re studying. Having someone else encouraging you, motivating you, struggling with you, and assessing you. It makes all the difference.

It could be hard finding a study buddy for different reasons, mainly time-zone and schedules, but I can tell you with full confidence that the pros overweight the cons.

Another pitfall related to isolation is studying every day for long hours. I understand the motivation, especially if you’re a fresh graduate who is looking for a job, but this will only backfire, and you’ll burn out. No one can deny the importance of consistency when you’re learning to code, but be smart when you’re consistent.

Talking from experience, nothing is worse than burnout, you end up losing a lot of time (weeks, sometime it could be a whole month) and forget most of what you’ve studied then, you’d have to rerun over everything you’ve *supposedly* studied once more as if you’ve never studied it.

What can you do? Aim for moderation, find your limit, and don’t push further. Having breaks! Get a day off and go out with your friends, it won’t kill you (wear your mask!).

Remember, it’s not a race, it’s a marathon.

If you’ve read this far, congrats, you’ve saved yourself several months/burnouts, and you’ve made a couple of new friends along the way.

My Fourth Mistake: Faith

No, this is not religion-related. This mistake results from the 3 above.

Another problem with this field is that you can’t show off for a non-techie, If you’re talking to someone who has a technical background, they would understand your work and how much effort you’ve poured into it but a non-techie needs something more physical.

The closest thing you can do is a 9–5 job, but when you take three years, and you still can’t lay down an offer, you doubt yourself, and your faith gets shaken.

Yes, this situation was ultimately avoidable, and I would have had 2–3 extra years if I knew then what I know now, but nothing in this world is for free. I’ve learned it all the hard way.

So, what am I up to these days? I’m restoring my faith in myself by learning all about React framework, and working toward my goals, one step at a time. The way I see it is, that I need to feel that I’m moving forward, so I wrote this post as a milestone to see how much I progress from here, hopefully, it will all work out. *fingers crossed*

--

--