Cover photo

Discovering Your Path as a Developer: Friendly Tips and Resources

As a developer, I've found that using Obsidian to jot down my thoughts and discoveries has been incredibly helpful. Recently, I stumbled upon some notes from my learning journey that I believe could be valuable for fellow developers, especially those who are just starting out. In this blog post, I'll share some of my favourite resources, tips, and tricks to help you find your way in the tech world.

Practice Makes Perfect: Coding Exercises

To sharpen your coding abilities, consider trying these coding challenge websites:

  1. LeetCode

  2. Project Euler

  3. Exercism

  4. HackerRank

  5. CodeSignal

  6. Codewars

  7. CodeChef

  8. Topcoder

Dive into Programming Languages and Frameworks

For those interested in various programming languages and frameworks, consider these learning resources:

  1. Rust: Interactive Version of The Book

  2. JavaScript: Codecademy or the Eloquent JavaScript book

  3. Python: Python.org or Real Python

  4. React: React Official Docs or Fullstack React

  5. Angular: Angular Official Docs or Angular University

  6. Vue.js: Vue.js Official Docs or Vue Mastery

Web Development Resources

To enhance your web development skills, explore these resources that cover a range of topics:

  1. HTML & CSS: Mozilla Developer Network or HTML Dog

  2. Responsive Design: A List Apart or CSS-Tricks

  3. Frontend Libraries and Frameworks: Bootstrap, Foundation, Tailwind CSS

  4. Backend Development: Node.js, Django, Ruby on Rails, Express.js

  5. Databases: SQLBolt, MongoDB University, Redis Labs

Version Control and Collaboration

To learn about version control and collaboration tools, consider these resources:

  1. Git: Pro Git Book or Atlassian Git Tutorials

  2. GitHub: GitHub Guides or GitHub Learning Lab

  3. GitLab: GitLab Basics or GitLab Tutorials

Interview Preparation: Resources to Help You Succeed

To better prepare for interviews, give these tools a try:

  1. Interviewing.io

  2. Grokking the Behavioral Interview Course

  3. Pramp

  4. LeetCode Interview Questions

  5. Cracking the Coding Interview Book

Understanding Systems Design: Resources for Learning

To deepen your understanding of systems design, check out these helpful resources:

  1. The System Design Primer

  2. Grokking the System Design Interview Course

  3. High Scalability Blog

Personal Tips for Continuous Improvement

As a parting piece of advice, I'd like to share two personal tips I've found useful in my day-to-day work:

  1. Use ChatGPT to learn and improve your code.

  2. If you can afford it, take advantage of GitHub Copilot to assist you in your coding projects.

Lastly, always remember that it's okay not to know everything. Instead, focus on the topics that interest you and are most relevant to you and your goals. Embrace the journey, and enjoy the process of growing – we're all in this together!