👾 Hi, there!
My name is Omar and I'm a Software Engineer.
I specialize on the frontend with React/Next.js with TypeScript, usually styling my projects with CSS3 or MUI; but I really enjoy exploring different styling libraries and options, like SCSS, Bootstrap, Tailwind CSS, Emotion, and styled-components.
I'm also experienced on backend tools. I used to work with Python & Flask/Django, but these past few years I've been running my servers mostly with Node.js & Express.js.
For storing and managing data I've used PostgreSQL, MySQL & MongoDB, usually with GraphQL to expose the data through the API backend, and with Redis to cache the data.
I like to use Docker Compose to easily set up and manage my projects and microservices.
My preferred hosting option for static websites is Netlify, but for more complex projects I like to set up an Ubuntu server on a Digital Ocean Droplet, managing it accordingly to the project. Which usually consists on securing the firewall, cloning the Git repo, installing common dependencies, set up Nginx, Apache, or Traefik, and set the environmental variables. I also use to set up the database in the same droplet, or use an external database.
If the project requires a public domain it should also have HTTPS to improve its security and user experience; for that, Let's Encrypt is the best way generate a free SSL certificate.
And that's just some of the stack and flow that I like to work with. I've also been implementing more tools for testing, automation and development, like Jest, Cypress, Storybook, Jenkins, Prettier, Eslint, Git, Docker, and some more.