How to Become a Software Developer: A Beginner-Friendly Roadmap