The best decision of my career.. Quiting my regular job.

I quit my regular job and started working as a freelancer for a while.

The main purpose of this act was saving more time for my self education, while i am working.

I hope it’ll help some of you for finding your own ways.

There are tons of ways for education. I’ve chosen coursera & udemy for my own path.

Below, i am sharing my own experience on that road.

Math supposed to be your first goal; especially discrete math. Logic, discrete calculus, set theory, number theory, graph theory, and so…

Computer Science is built on top of these (and more). So you need to learn these first.

Please just give up trying to learn new languages unless you are doing it with the correct order.

Otherwise you’ll become a modern carpenter who knows how to use tools, instead of an architect.

You need to learn what’s happening under the hood.

You need to learn approaches instead of using libraries or frameworks.

This is the lesson i took very lately.

Please take your lessons you need; and the more important part is “take them in the correct order”.

Here is the order of the lessons i took when i realized the facts above. In scope of software development.

Discrete Math -> Algorithms -> C -> Data Structures -> C++ or Java -> Now YOU CAN FLY :D

Learn python, go, rust, ruby, javascript, whatever you want.

Be an expert of sth, but be sure that you need to learn at least one language for each programming approach. Procedural, Object-oriented, Multi-paradigm, and subsets..

Of course there are a lot more lessons to take such as operating systems, database designs, statistics and more. You need to take them too. But as i am sharing my own experience as a software developer. I tried to explain very basics.

Please learn these before you hit a barrier which separates a programmer and an engineer.

After all you’ll become more productive & can make +$100K/Year :)

This is my two cents about being a software developer.