Software Development Technologies I’m Learning in 2023

Htoo Pyae Lwin
5 min readJan 1, 2023
Photo by Brett Jordan on Unsplash

As we approach the end of 2022 and start to look towards 2023, it’s a great time to reflect on the software development technologies that we’ve been using and to consider what new technologies we might want to learn in the coming year.

First of all, let me review the techs that I’ve been using personally and at work for the past year

Programming Language:

  • TypeScript — it’s been a few years since I fully switched to TypeScript and I’m not going back to JavaScript.

Frameworks

  • Nest.js — it’s a really powerful framework for building scalable server-side applications and it has everything you need. I use it for both work and personal projects.
  • Next.js — I used NextJS for most of the projects, version 13 has just come out in 2022 and it has many cool features. Although it’s a full-stack framework, I’m still not using it for building backends and APIs.
  • Vite — for small and playground projects, as it’s very fast to set up and runs.

Front-end Techs

  • React — of course, I’m using React for every front-ends I’m building.
  • TailwindCSS — I love tailwind, I’ve used styled-components and emotion before, but using Tailwind is much more productive.
  • Scss — I still have to use scss at work. Before, we were using stylus but currently transitioning to scss .

State Management

  • Redux — unfortunately, we still use Redux at my current job, so I’m still having to use it.
  • Recoil — I used Recoil for the projects that I’ve built from scratch.

Working with APIs

  • React Query — Mostly, I used this for dealing with the APIs whether it’s REST or GraphQL.
  • ApolloGraphQL — I’m using it for building the GraphQL APIs in the backend at work.

Code Editor

  • Vim — I mainly use Vim as my primary editor for programming. I really love it as it makes me a lot more productive than using any other editors.

Monorepo Tools

  • Nx — Nx is my favorite tool for managing monorepos. It can scaffold things really quickly and I personally use it for most projects that I build from scratch.
  • Turborepo — we have multiple micro-services at work and we use Turborepo to manage them. Personally, I usually choose Nx over Turborepo.

Cloud Techs

  • Docker — we use it to containerize the services.
  • Kubernetes — I’m not really versatile in Kubernetes and can only deal with simple workflows.
  • AWS — we build every infrastructure on top of AWS at work but for me, I mainly deal with S3 and EC2.

CI/CD Tools

  • FluxCD — we mainly have been using it for our CI/CD at work but are currently in the process of transitioning to argoCD and github actions.

Databases

  • MongoDB — it’s a very popular NoSQL database that we’ve been using for the database.
  • ElasticSearch — we use it mainly for searching data and also for analytic queries. At the moment, I know the basic theories behind it, and right now, can only deal with simple queries and aggregations.

So that pretty much covers everything. There are many granular things that I’ve left out as they might not be that interesting.

Let’s talk about the techs that I’m gonna be learning in 2023. Some of them will be a continual learning process from 2022 as there’s no such thing as fully learned and skilled, so

In 2023 …

Rust

I’ve been learning Rust for the past couple of months and will be continuing in the future as well. The main motivation behind learning is that first of all, it’s a very different language from TypeScript, which I’m most familiar with. I wanna have a different state of mind for programming and using a language that is very different from the one I’m familiar with, it helps me solidify many principles of programming.

Moreover, it’s a very popular and powerful language that has great potential in the future. I’ve been loving the learning process so far and will continue doing so.

TypeScript

I love it and I’ll be learning to become more fluent in it as it’s my primary language and I’m using it professionally.

Frontend Techs

SolidJS — which is a new declarative JavaScript framework for building UIs with a focus on reactivity. Actually, I did try a few frameworks (e.g Astro) in 2022 other than React. For me, the reason was to try new things other than React, not to move away from it and it still holds.

Qwik — which is also a new JavaScript framework that is very different from the existing ones. It introduces a new concept called Resumability which eliminates the need for hydration like the current existing meta frameworks do. I’m interested in this new concept and would like to see how much difference it makes in building real-world apps compared to using the existing popular frameworks.

State Management

X-State — I’ve actually used X-State before for a personal playground project but never continued with it. The reason was that I felt a bit too complicated as I was too familiar with normal state management concepts. I’d like to review state machines and would actually like to use X-State in a real-world app that I build.

Cloud Techs

I’d like to be more versatile in cloud technologies such as Kubernetes, Docker, and CI/CD tools like Github actions.

NeoVim and Lua

Actually, I’ve migrated my existing configs for Vim to NeoVim but I haven’t actually made it nicely yet. Lua is mainly used for configuration in NeoVim and I’m gonna be setting up my own configs with it. I’m currently using my custom Vim and LunarVim back and forth.

Godot

This is just for fun. Making games has been one of the fun things that I do outside of work. I’ve made a bunch of JavaScript games in the past and also tried Unity a few times. But Godot seems like a better choice as it’s easier to use and Unity is a bit overwhelming to me. Performance-wise and customization-wise, I don’t think it has any downsides, so I decided to go with Godot.

So yeah, these are the techs I wanna continue learning in 2023. Let me know what techs you guys are learning as well.

--

--