One of the perks of being a software consultant is that no two days or projects are the same, and I’m regularly challenged to learn a new tech stack or skill. While this was daunting at the beginning of my career, I’ve learned to use side projects to practice and make sure my skills are up to date.
Below are some of the different projects I keep and how I use them.
Code Katas
A kata is a small coding exercise designed for learning and practicing. I typically use katas when I’m looking to tackle some of a new language or tech stack’s basic syntax and patterns. These projects rarely see the light of day, but they help me get up to speed in a new language, formulate better questions, or understand how to accomplish one specific thing in that tech stack.
Small Applications
With this category, my strategy is to find some task that I always do in my daily life, and write a small, fully functioning app to help me with that task, for example, a meal planning app. These projects help me build deeper understanding on a topic, experiment without a deadline, and exercise my creativity. These projects help me go into a client project with a deeper understanding of a tech stack and let me try new approaches to software problems I’ve already encountered.
Networking
Finally, I’ve found that contributing to open source software has been a great way to reach outside my network and get involved with a new community. By contributing to open source software, I’ve learned how other people approach different software problems, received feedback from people who I don’t work with every day, and had the opportunity to work on projects that are focused on the software development community.
Comments