Strategies to Enhance Your Skills as a Developer
Written on
Introduction to My Developer Improvement Plan
If you're unfamiliar with my journey to becoming a better developer, particularly through the project that secured my first role as a Backend Developer, I recommend checking my previous article first.
The Road to Becoming a Better Developer
In this piece, I’ll unveil my two-step strategy for enhancing my development skills in 2022. This plan was instrumental in helping me land my current position.
As mentioned in my earlier article, I'm currently implementing a carefully crafted strategy aimed at elevating my profile as a developer. This plan emerged after facing setbacks in two technical interviews while pursuing my initial role as a Software Engineer. My experience has shown me that this plan is effective and genuinely aids in skill enhancement.
In response to a request from a reader for more detailed articles about each aspect of my plan, I’m excited to share the practical phase, which is the second part of my strategy.
Ready to Level Up as a Software Developer?
Phase Two: Mastering Code
After reflecting on the challenges I faced during my interviews, I came to a realization: I lacked knowledge in essential coding concepts. I was unfamiliar with critical topics like design patterns, testing methodologies, and best practices for optimizing code. These are crucial elements within the software development landscape.
While I could have searched online for these concepts, mastering them required hands-on practice. This meant reading and writing substantial amounts of code. Recognizing that my time was limited, I devised a structured action plan to maximize my efforts. My goal was not only to enhance my developer profile but to do so efficiently and effectively.
Missed the first phase of my plan? Be sure to check out my previous article:
My Developer Improvement Plan — Part One: Theoretical Insights
Crafting an Action Plan
I didn’t dive into coding frantically from the outset. To optimize my time, I divided my action plan into two essential steps:
- Creating a Learning Objectives List
I needed to practice many concepts I was learning theoretically, alongside numerous independent practical skills I aimed to acquire. There were various technologies in demand by companies that I wanted to master, and countless ideas I wished to develop. So, I compiled a comprehensive list.
I set up a Notion page where I documented all the courses I wanted to take, the platforms for practical exercises, and the projects I aimed to develop.
Author's Notion page for learning goals.
- Engage in Consistent Practice
With my list established, it was time to start coding. Whenever I had free time, I worked on my current project or studied for the certification I aimed to achieve. On days with less time, I dedicated at least an hour to solve coding challenges on various platforms.
If you're curious about what I’ve learned from tackling coding challenges, you can read this article:
3 Valuable Lessons from Solving LeetCode Challenges
I’ll provide you with three straightforward tips that can accelerate your learning process.
Time Commitment for Practice
When considering mastering any skill, it’s common to think that it requires a significant time investment. This notion aligns with the well-known 10,000-hour rule. While 10,000 hours may seem daunting, it's manageable when broken down into one hour each day over 10,000 days.
Following the #100DaysOfCode initiative, I’ve committed to coding for at least one hour daily. There have been days where I’ve coded for up to five hours.
In total, I spend a minimum of seven hours weekly on this aspect of my plan, but often much more.
Photo by Luke Chesser on Unsplash.
Concluding Thoughts
As I wrap up my Computer Science degree while working full-time as a Backend Software Engineer, I reflect on starting this plan during the summer. There were challenging days, but with proper planning and a strong desire to improve, I made significant progress.
I’ve gained mastery over numerous software development concepts, applied various methodologies, and developed several projects to enrich my portfolio. Although there are days when adhering to this plan is tough, the rewards are undeniable. I've enhanced my logical thinking, learned about data structures, and discovered optimization techniques, all of which bolster my resume.
Are you practicing your coding skills daily? How do you prefer to engage in practical learning?
Final Notes
Thank you for taking the time to read this article! If you’re interested in technology and development, don’t forget to follow me. I’d love to hear your thoughts, so please feel free to leave a comment, and I’ll make sure to read it.
If this article has been helpful, consider giving it a clap and sharing it with your peers.
About the Author
Hello! I’m Jesús Lagares, a Backend Software Engineer currently finalizing my Computer Science degree at the University of Cadiz. My passions lie in technology and communication, and I strive to simplify complex concepts for broader audiences.
Let's Connect
? Instagram | ? LinkedIn | ? YouTube | ? Twitter
Thank you! ??
For more insightful content, visit PlainEnglish.io. Subscribe to our free weekly newsletter, and follow us on Twitter, LinkedIn, YouTube, and Discord. Interested in Growth Hacking? Explore Circuit.
Video Description: In this insightful video, the presenter shares their personal journey and strategies for learning to code effectively, providing tips for anyone starting their coding journey.
Video Description: This video showcases how the presenter successfully learned coding in just six months and secured a job offer, offering inspiration and guidance for self-taught programmers.