Skills and Expertise

I am still new in software development and there are so many things to learn and experience! Although there is certain benefits in specializing in one, I like to explore more tech and be the jack of all trades and (maybe?) master of some.

I believe in researching and finding the right tool for the job I am assigned, instead of doing something that suits my expertise.

I have experience in taking ownership of projects, actively taking part in design decisions and new feature requests. I also like to get my hands dirty on the pipeline side for the projects I work on.


Technologies used

The technologies I’m most familiar with are in bold.

Backend/server development

  • C#, F# (.NET)
  • Python
  • C++
  • Microsoft Orleans
  • Typescript (NodeJS)
  • Go

Front-end

  • React with Typescript
  • Tailwind

DevOps

  • Docker and Kubernetes
  • Linux (Ubuntu)
  • CI/CD (Azure DevOps)

Others

  • SQL Server
  • Git
  • REST API, GRPC
  • JWT
  • Shell
  • Vim

Working method

  • Simplicity matters.
  • Find the right tool for the job, not the right job for the tool. Btw, this parody is dope.
  • Although we engineers are often introvert, social skill matters as much as coding skill for big software projects.
  • I often have an urge to understand the whole thing and write the most perfect solution. But time is also a valuable resource. It is basically a trade-off we have to make.
  • Try to think out the logic first before hopping on to code.
  • Almost everyone can write happy path code. It is the edge cases and how we decide to handle them that is challenging.
  • Know your tools (OS, editor, version control, CI/CD) like you know your code.
  • It is okay to be stuck. Give some time first and if still stuck ‘Suit Up and Get Help!!’
  • Own the projects you work on.
  • Leave the code in a better state compared to when you started working on it.