Tech Roadmap: 2021
Fri Jan 29 2021
Here we are already a month into the new year and I'm just now getting to this post on my goals for learning in 2021! Nonetheless, it helps to write these goals down for accountability and to help stay on target through the year. Let us not waste any time, and jump into my learning path and goals for 2021!
1. New Tech
This year I plan to learn 2 major technologies and get familiar with a new language. Learning new tech is part of life as a software engineer. However, I think it is important to stay consistent and focused on what you should/need to learn. New technology is released daily it seems in this industry. We need a healthy mindset toward learning new tech, we are not and will not learn it all. I feel it is very important to be focused when it comes to learning new tech. Why are you learning this technology? Is it part of the stack used at your dream company? Does it solve a specific problem you need to solve that can't be done performantly with what you know? These are good reasons to learn a new technology. Don't learn something just because it is new and at the forefront of tech.
I've already started to use and know the extreme basics of Django. However, I want to fully learn it this year. There are a few reasons for this.
- It will help my python skills.
- It is a well known backend framework and stable.
- It is in a lot of job requirements and company tech stacks that interest me.
- Allow me to increase my backend programming skills.
I love python and feel confident in the basics of the language and look forward to fully learning Django and seeing its real power being put to use!
VueJS --> Nuxt
I have yet to learn a frontend framework. As I continue to learn and grow my web development skills I am now seeing the true power and use cases for frontend frameworks. I decided to go with Vue.js for a few reasons. First, and technically not a real reason but I was more drawn to it over React. I think part of that, which is a genuine reason, was because of its community and the fact that it is not corporately owned/funded. Second, I love that it is a PROGRESSIVE frontend framework. This was a big deal to me. I don't want to have to commit to fully use the framework everywhere. I want to use it where it is needed and Vue allows that. Thirdly, and probably the main reason was I like its syntax and approach over React. The overall function and templating of Vue just seems like a more enjoyable workflow for me and my work.
I'm not learning a frontend framework because I want a job as a frontend engineer. I'm learning Vue because I see where it solves problems that I come across. I'm more interested in backend development than the front! It was nice not having a job/career motive in picking the frontend framework I wanted to learn. I feel most people say just learn React it has the most jobs etc. But to be honest, Frontend frameworks are interchangeable in my mind beyond learning the syntax and approaches of each. In general, they are there to accomplish the same goals and objectives.
Now I said VueJS leading to Nuxt because of 2 main reasons. First, I think Nuxt does a great job at solving some of the problems that exist with Vue in general. And secondly, Nuxt is a frontend framework for Vue as well as a static site generator! If you've read any of my posts you know that SSG's are a big part of my workflow and tech stack that I like to use. All this said I want to make sure fully understand the core concepts of Vue before progressing into Nuxt! Either way, I'm super excited to start my journey into frontend frameworks.
New Programming Language: GO
As seen in some of my other posts I've already started to look at Go. But this year I want to get rather more familiar with Go as a programming language. I feel this is a great language for me to learn, again because I'm more drawn to the backend than the front. I see it a lot in job requirements and it is being adopted into many company tech stacks regularly it seems. This year I want to get used to all the syntax differences coming from python.
2. Skills to Improve
This year is a big year for me in terms of improving my skills for furthering my career. That being said I have two main focuses: Python and SQL. I'm looking to supercharge my python development skills learning and applying the more advanced topics and concepts. I deal with databases as well in my current position and want to feel more confident in my querying abilities. In terms of Python, there are some concepts I haven't used or dealt with and some that I have brushed upon and want to learn more deeply.
New Python Advanced Topics
- Lambda Functions
The above topics are things that I have heard of but do not know. I want to understand these concepts fully - when to use them, their performance capabilities, specific design patterns, etc. One of the reasons I want to grasp the concept of concurrency is to help in my journey to master Go. There are a few other python topics that I want to comprehend more fully, though I've used them or have an extremely basic understanding of. Those topics would be:
- Comprehensions (List, Dict, and Set)
- Custom Context Managers
My main goal here is to fill in any gaps of knowledge on these topics as well as know the pythonic design patterns used in python software development for the above topics.
Lastly, is a little bonus. Currently, my company is in the process of migrating from Python2 to Python3 and I want to fully study and comprehend the difference in how encodings are handled differently between python2 and python3.
3. Delisle Domain Goals
Finally, I have two goals that deal with this blog site and Delisle Domain as a whole. This is a short goal list - but will require a good amount of work! This year I want to...
- Write and publish 40 blog posts on Delisle Domain
- Start the Delisle Domain YouTube and post a video per month
Though I have a lot more goals and objectives for all these areas, I feel it is better to have fewer goals for me. I'm the type of person who is always adding things to a list, and then that list of new ideas, tech, or goals grows to an unsustainable and unrealistic list and then nothing gets completed as I'm jumping around from objective to objective. It is better for me to a few goals to stay consistent with through the year.
That said I'm super excited for this new year and can't wait to see what comes of it!
What is your top priority goal this year? Let me know here