Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Developer Career Masterplan

You're reading from  Developer Career Masterplan

Product type Book
Published in Sep 2023
Publisher Packt
ISBN-13 9781801818704
Pages 310 pages
Edition 1st Edition
Languages
Authors (2):
Heather VanCura Heather VanCura
Profile icon Heather VanCura
Bruno Souza Bruno Souza
Profile icon Bruno Souza
View More author details

Table of Contents (21) Chapters

Preface 1. Part 1 The Basics: Learn and Practice the Technical Skills
2. Chapter 1: The Secret to Learning about Technology Quickly and Continuously 3. Chapter 2: Choose Your Best Path for Learning, Training, and Certifications 4. Chapter 3: Optimize Your Support Network for Growth 5. Chapter 4: Acquire the Right Skills Deliberately 6. Chapter 5: Stepping Outside Your Comfort Zone 7. Part 2 Get Involved: Participate in the Community
8. Chapter 6: Become a Team Player by Embracing Communities 9. Chapter 7: Focus Your Growth by Giving and Receiving Mentoring 10. Chapter 8: Be Part of a Larger Group – Meeting People at User Groups and Meetups 11. Chapter 9: Grow Your Network through Social Media 12. Chapter 10: Build Lasting Relationships 13. Part 3 Create Impact: Share and Lead
14. Chapter 11: Build Trust and Solve Problems with Open Source Projects 15. Chapter 12: Scaling Trust through Public Engagement: Speaking and Blogs 16. Chapter 13: Be a Leader: Manage Up, Down, and Across Your Organization 17. Chapter 14: Stepping Up Your Technology Game – Defining Technology Instead of Merely Using It 18. Chapter 15: Build Your Personal Brand and Become a Trusted Advisor 19. Index 20. Other Books You May Enjoy

Knowledge versus skills

Developers around the world ask us a quite common question: How can we keep up with current, ever-changing technology? Developers spend many hours every week trying to do exactly that: learn about technologies, frameworks, APIs, languages, and tools that pop up all the time, hoping that this will amount to keeping up to date with technology.

The problems with this approach are multiple:

  • There are too many things happening at the same time, and it is impossible to know which ones are the most important
  • Trying to learn many things at once is confusing and you end up feeling tired and overwhelmed by the number of things that need to be done
  • Forcing yourself to spend many hours a day doing something that seems never-ending is a recipe for frustration

But there is one thing that gets the crown for being the most frustrating:

  • Learning many things that you will not apply right now is not only superficial but the knowledge will neither last nor will it be useful for long

When you learn a new skill, think about how you will apply that skill. Actively search for a way to incorporate your new skill into your day-to-day coding projects. Using the skills you gain right away will help you to build the muscle memory for the new skill and assimilate it into your library of knowledge.

Have you ever spent hours learning something that you are not using in a project right now, and a few months later, when you need it, you remember next to nothing, and have to refresh it? And does that refreshing feel like almost having to relearn everything? There is a reason for that feeling and it is the difference between knowledge and skills.

An effective way to think about knowledge is that it is a collection of memories that are disconnected from each other. Because they are disconnected, it takes some time for you to remember those things when you need them. And once you recover one memory, it does not help you recover other memories. This is like learning about the history of bicycles and how they were invented. Although you may love bikes, it is hard to remember the names and dates and who did what. There is a better way.

Have you ever heard the popular saying that goes like this: once you learn how to ride a bicycle, you never forget? This is because riding a bicycle is not knowledge; it’s a skill. An effective way to think about skills is that they are collections of memories that are connected to each other. Once you recover one of those memories, they all come together and are accessed in a much faster way by your brain.

That is why, once you acquire the skill, you just sit on the bicycle and go. You do not need to remember each fact about riding a bike. It just comes to you, without effort. The most important thing about skills for you to keep in mind is that although you can acquire knowledge by reading or listening, you can only develop skills by doing. There is no amount of reading, listening, watching videos, or following amazing tutorials that will ever get you to ride a bicycle. The only way is to go down to the park and try, fall, try again, and eventually, do it.

This is the same for every developer skill that you want to master. To really learn something, you must do things, instead of simply studying to acquire the knowledge.

When you write your CV or resume or prepare your LinkedIn profile, do you list in it all the books you read and YouTube videos you watched? Do you list all the knowledge you have? Or do you put more focus on the projects you worked on and the experiences you acquired?

Even when just starting, you will clearly be better off including everything you did, even if they were just personal and volunteer projects, because, at the end of the day, it is your experience and skills that really matter.

We started this chapter by talking about how developers spend a lot of time trying to keep up to date, so does the discussion around skills just make it worse? We must spend time keeping up to date, but the outcome we desire is to gain more skills. As we gain skills, we must still do our day-to-day things, so it will take more time, not less!

Sometimes, in order to do things, you need to develop a strategy for doing so. This reminds us of a developer we know named Maryna Savchenko. She is a software engineer, based in Germany, and a true believer in software craftsmanship, clean code, and TDD. She finds intellectual fulfillment in accomplishing hard tasks and is passionate about acquiring and improving skills. When we asked her to share a story with us about learning continuously and shaping her career, she shared that what really helped her in her learning journey is a book entitled A Mind for Numbers, by Barbara Oakley. By reading this book, she figured out her own “learning framework.” Understanding how she learns best helped her to avoid frustration and keep being motivated during learning complex topics. Understanding the best way to learn new skills and gain experience by doing is a crucial step as you continue your path for learning. Let’s hear some more from Mayrna.

After leaving Kharkiv National University of Radio Electronics with a bachelor’s degree in computer engineering, I did not work as a software engineer. I was told that “I do not have it.” And I strongly believed that for some time. When I was offered a job in application support at a software development company, I was glad. I worked hard. I learned accounting by myself (to understand enterprise resource planning systems better) and passed four certifications, only to realize that I was learning the wrong thing. I learned the hard way how focusing on the right thing matters! Why was it wrong? Well, that technology (1C Enterprise) was limited to a number of countries (Ukraine, Russia, Belarus, and Kazakhstan). I could not reuse my knowledge, and working for a company with headquarters in Russia was not right after Russian-Ukrainian War started in 2014. In addition to that, I was making less and less money every day because of inflation. I was paying full price for my wrong decision and for listening too much to other people. At this point in time, I did the first analysis of the Java ecosystem and thought that it may be a good way forward. In the meantime, my husband and I decided to move to Poland from Ukraine. I realized at this time that I needed to think hard about what to do and what to learn next. After one more analysis of the market and technologies, I was sure that Java was a good choice and decided to become a Java programmer. Finding a job abroad without relevant experience is not an easy task. You need to be better than local candidates and prove it. In my case, I needed to prove it to myself also. So, I needed to learn a lot of things, such as the language itself, frameworks, build tools, testing frameworks, databases, design patterns, and so on. In the beginning, I was very slow, ineffective, and overwhelmed. So, I googled how other people learn. Many said they “just learn” and that is it. After some searching, I found Barbara Oakley’s book and it was full of the advice I needed. I also discovered a rich and diverse software engineering community (including Java champions, Microsoft MVP people, experienced software engineers, techno bloggers, and tech educators). It gave me an understanding of what I was doing wrong, and I started to believe in my plan. But looking for a software developer job in Poland was not successful for me. I had only one technical interview. When I tried to send my CV to Germany, I realized how geography matters! From sending 13 CVs, I got 6 responses, 2 onsite interviews, and 1 job offer. And we were on our way to a new country. In Germany, I still needed to learn a lot to level up, as well as the German language. Having a learning framework gave me the right tools and confidence to proceed. Last year, I got promoted to mid-level and started blogging (https://savchenko.tech/). Now, I am living in Munich and on my way to improving my career.

As Mayrna’s story illustrates, sometimes you have to find your inspiration and curiosity to continuously learn. Next, we will discuss how to find focus and priorities to help us identify the skills we need to keep up to date.

You have been reading a chapter from
Developer Career Masterplan
Published in: Sep 2023 Publisher: Packt ISBN-13: 9781801818704
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at AU $19.99/month. Cancel anytime}