- Learn Python (3 please)
- Do a lot of Codewars up to where lvl 6 problems are very easy to solve and lvl 5 problems are solvable but requires a bit of thinking.
- Learn Git
- Create a GitHub account
- Make some projects and put them in your Github
- Read about data structures and algorithms, time and space complexity
- Create a leetcode repository and keep your solutions to leetcode problems in that repository, working on 1-2 problems a day is enough (easy-medium problems, sometimes hard if you can) + try to understand what is the time/space complexity of your problems
- Learn what are servers/clients, HTTP, REST.
- More projects (HTTP servers), keep doing (7) 3 times a week
- Learn about tests. Unit tests, integration tests, mocks, etc. Now go back and create tests for all (7, 9)
- Learn Docker
- Include Docker in all your (9).
- You are more than ready
Throughout all of this. Never copy/paste a line of code. Always write everything yourself. Understand, I mean deeply understand what you are doing. You'll encounter bugs, solve them and understand the underlying cause. Also, read Clean Code after step 2.