My self-taught developer saga: the dos and don’ts you need to know

TechChatter
4 min readMay 19, 2023

--

In my earlier post on pursuing a self-taught developer path in Germany, I comited to share the valuable insights I’ve gathered along the way, to help you navigate this journey without stumbling upon the same pitfalls. In this article, you’ll find a compilation of lessons learned to assist you on your quest.

Photo by Dallas Reedy on Unsplash

Do

1. Master the Fundamentals 🏅

The first step is to master the fundamentals of programming and computer science. This includes concepts like variables, classes, functions, conditionals, loops etc. Although not mandatory, it also helps to learn the basics of algorithms, compilers, computer networks, and the physical components of computers.

“Which programming language to choose?” Ah, the eternal question! Even I found myself pondering, until one day, a coworker told me:

“Just start with anything!”

His words carried wisdom. Not only did they echo the famous Shia LaBeouf motivational speech, ‘Just do it!’, but they also reminded me that it’s more important to begin the journey than to be paralyzed by the inability of making a choice. After all, it’s the concepts that matter, and they are universal. Another way to think about it: you may find yourself having to use various languages along the way, so why worry over the first one?

You may still be thinking: “But how can I be sure it’s the ‘smart choice’?” Here are some guiding points:

  • Consider the area of programming you aspire to specialize in — pick a language that is for that field
  • Explore the popularity of different technologies → e. g. stackoverflow survey
  • Peek into local job postings to see which languages might pave a smoother path to future employment

2. Embrace the Power of Mentors and Buddies 🤝

Programming is tricky and can sometimes leave you scratching your head, facing elusive problems or confusing concepts. In such moments, having a mentor can be a game-changer. I was lucky to have the unwavering support of my brother, a software developer. If you lack such a connection within your personal network, there are platforms designed specifically for this purpose. In fact, when I landed my first job as a developer, I hired a professional tech mentor through MentorCruise.com who helped me immensely. Here, you can find experts from renowned companies like Airbnb, Google, Netflix, Amazon, and more!

Even finding a coding companion on social platforms can work wonders. By joining forces, you could bounce ideas off each other and crack problems together. Some platforms where you can find your coding buddy include slack, discord, and various subbredits. Remember, programming is not a solo adventure — it’s a team sport!

3. Devise a plan 🎯

What to do with so many programming resources out there?! Picking the ‘right’ ones can quickly leave one in a whirlwind of anxiety. In one of my upcoming posts, I’ll reveal the resources I used on my path to becoming a professional software developer. However, the first step is to narrow down your options, decide on the resources you want to use, and set a timeline. Whether you’re aiming for front-end, full-stack, or mobile development, research the most recommended learning materials for that field, and set your plan in motion. With a well-defined path, you can focus on your journey without being distracted by endless possibilities.

Don’t

1. Loose yourself in the Framework Maze 😵‍💫

In my early days, I ventured into Android native mobile development without first honing my Java skills. Oh, the struggles I faced with concepts like EventListener and RecyclerView! I didn’t know much about writing my own classes/ interfaces yet, let alone using the ones provided by Google in the official Android API references. The same holds true for web development. Imagine plunging headfirst into React.js without a solid grasp of JavaScript. Trust me on this one. It will save you some sweat.

2. Just copy existing projects 🖨

Online courses are a fantastic way to learn coding, and it’s tempting to stick to the projects provided. I saw people asking: ‘Should I code along or watch a video and then do the coding?’ I would say, both are fine, but here’s the secret: don’t just code what is offered by the course. So, after you’ve mastered the course material, challenge yourself to create something entirely new. What I used to do was come up with ways to enhance the projects offered by the courses, e. g. I’d add an extra feature here and there, or rewrite an existing vanilla js frontend with a framework I just learned. Coding along is FINE, but coding something new is even FINER!

3. Be too hard on yourself 🤦‍♀️

Maybe the most important lesson there is, and something I still, after two years into my professional career as a developer, have to remind myself. Rome wasn’t built in a day, and neither are coding skills. Embrace the sweat, blood, and tears (figuratively, of course) that come with the territory. So, if you’re feeling stuck, don’t beat yourself up about it. Don’t expect to become a programming prodigy overnight or after a weekend crash course. Progress takes time, consistent effort and a lot of caffeinated beverages. Remember, even the greatest programmers started with simple ‘Hello, World!’ programs. So take a deep breath, channel your inner code ninja, and keep on slaying those bugs. You’ve got this!” 💪

Until next post, happy coding and may your code always compile flawlessly!

--

--

TechChatter

Discover how I turned my passion for coding into a career by following my notes on tech, psychology, and my journey of becoming a self-taught software developer