Charles Tech Notes

🫵 5 achievable side hustles for developers💰

However, you may not be in a position yet to secure a job ( aka you are still studying), or you began working, but you are looking at ways to make some extra cash. In this article, we will learn…

Managing Deprecated Kubernetes APIs: Best Practices and Tools ☸️

As new features and functionality are added, older APIs are deprecated and eventually removed. While this is a necessary part of the evolution of Kubernetes, it can create challenges for…

Frontend Masters: Solid Principles in React / React Native

SOLID is a group of five important rules in software design. These rules help make the code understandable, flexible, and maintainable. We can stick to the Single Responsibility Principle (SRP) in…

Node.js: The commonly used NPM packages — Part 1

Find about the 10 most commonly used NPM packages that every developer should be aware of

Tekton CI/CD review

Reviewing Tekton as one of the latest CI/CD tools

Exploring Open Source Alternatives to Terraform Enterprise/Cloud

In the dynamic landscape of cloud infrastructure management, the role of Infrastructure as Code (IaC) has become pivotal in ensuring seamless, scalable, and automated provisioning. Terraform, with…

Developing Scalable Frontends with Feature-Sliced Design (FSD)

Build scalable and maintainable frontend applications using Feature Sliced Design and Bit

Advanced End-to-End DevSecOps Kubernetes Three-Tier Project using AWS EKS, ArgoCD, Prometheus…

Welcome to the End-to-End DevSecOps Kubernetes Project guide! In this comprehensive project, we will walk through the process of setting up a robust Three-Tier architecture on AWS using Kubernetes…

Build your own ChatGPT using Google Gemini API

While the AI landscape has been dominated by the likes of OpenAI and Microsoft collaborations, Gemini emerges as a formidable force, boasting increased size and versatility. It is designed to…

Backend with Fastify — Part 5 (Fastify Concepts, Project Structure, Custom Plugins, Login Route…

Now that we have our database set up and seeded in part 4, it’s crucial to grasp some key concepts of Fastify before diving into application development. Fastify operates on two main lifecycles: one…

Persistent Storage for Stateful Kubernetes Workloads

Discussions of Kubernetes workloads often revolve around microservices that can quickly be scaled up and down without regard for application state. However, organizations also rely on stateful…

How to design clean API interfaces

This is going to be a tough read. This contains too much code to read and no pictures. It’s not for people with faint hearts. So read if you are ready to get bored and learn something new. When…

Sveltos: Argo CD and Flux CD are not the only GitOps Tools for Kubernetes

As shown in Figure-1, we will only be looking at Argo CD and Sveltos, not Flux CD. The reason for this will be explained shortly. This blog assumes that you are familiar with the GitOps concept as…

Backstage: Infrastructure Automation Using Templates and Terraform

As I was grasping Backstage for the first time last year, one notable application pattern stood out: the focus on simplifying initial application setup. Whether configuring an HTTP Server or a Docker…

Design a Kubernetes Cluster: Kubernetes

In Windows, Installing minikube is a good option to start a cluster. It relies on Virtualization software like Oracle VirtualBox, Podman, Docker Desktop to create VM that run the kubernetes cluster…

BASH/Linux Interview Question for DevOps Engineers

1. System-generated variables — As the name suggests these are the variables generated by the operating system. These variables are viewed by invoking the Set command. 2. User-defined variables —…

Platform Engineering in action: Deploy the Online Boutique sample apps with Score and Humanitec

Lately, with KubeCon Paris 2024 and Google Cloud Next 2024, I have been preparing and delivering quite a good amount of demos about Score and Humanitec. One of these demos is with the Online Boutique…

The Absolute Best Free Tools for Web Developers in 2024 | JavaScript in Plain English

Boost Your Web Development Workflow with Free Tools: Discover 10 powerful, free tools to improve your coding skills, simplify development...

Advanced Load Balancing Techniques with AWS ELB

Elastic Load Balancing (ELB) is a service provided by Amazon Web Services (AWS) to distribute incoming traffic across multiple EC2 instances. By balancing application requests across multiple…

The Way We Are Building Event-Driven Applications is Misguided. This is Why I Created Infinitic.

I believe that the way the industry is often building asynchronous event-driven applications is misguided and can be greatly improved. Online businesses (online food ordering and delivery…

Webhooks suck, but here are alternatives

Webhooks are a foundational part of the web’s infrastructure. Coined in a blog post in 2007, webhooks were suggested as a simple way to consume asynchronous feeds with a protocol all web developers…

Multi-region HA in Google Cloud

Google Cloud is one of the remarkable cloud “hyperscalers”. Hyperscalers are designed for massive capacity. They possess immense data center networks spread globally, allowing them to handle the…

No Restarts, No Disruptions: Seamless Pod Resource updates with In-Place Resizing

Optimizing resource utilization while maintaining application performance is a never-ending challenge in Kubernetes. Figuring out how much resources your app needs at the start is complex,and the…

Open-source Tools for detecting drift in Terraform-managed Infrastructure.

As infrastructure-as-code IaC becomes the standard approach for managing cloud resources, it’s important to ensure that the deployed infrastructure matches the defined configuration. However, changes…

Configuring Internal Ingress GKE

Introduction: In the world of container orchestration and microservices, Google Kubernetes Engine (GKE) stands out as a leading platform for managing and scaling containerized applications. An…

How to Be a Better Software Engineering Leader

The first-level managers — Tech Leaders, Engineering Managers, Product Managers, or Team Leaders — hold the most crucial roles in the company. This statement underpins the entire Practical…

How to Organize All Your Routes in a Single Layer in Node.js

Ever get lost in the dozens of routes defined by your Express server? When the project grows big, it is common to lose track of the endpoints exposed by your backend. The reason is that the endpoint…

Terraform Hacks for Infrastructure Automation With Examples

Terraform is a free and open-source infrastructure as code (IAC) that can help to automate the deployment, configuration, and management of remote servers. Terraform can manage both existing service…

How I Handle Code Reviews in React: Code Review Checklist

React is a popular tool for building websites and web apps. It’s known for its flexibility and efficiency. But with so many ways to write code in React, it’s important to keep our code clean and easy…

Using TypeScript Decorators in Practise

TypeScript Decorators are a design pattern widely used in programming to wrap something to change its behavior. Learn how to use TypeScript decorators in practise

AWS — From 1 to 1000s of VPCs, easy peasy!

When it comes to expand its AWS network, some mistake can lead to security vulnerabilities or routing issues. You’ll find below best practices and network architecture example. Rule #1 : 1 VPC = 1…

Design your Landing Zone — Design Considerations Part 2 — Kubernetes and GKE (Google Cloud…

Welcome to Part 2 of Landing Zone Design Considerations. This is part of the Google Cloud Adoption and Migration: From Strategy to Operation series. As I’ve said previously in this series, containers…

Design your Landing Zone — Design Considerations Part 2 — Kubernetes and GKE (Google Cloud…

Welcome to Part 2 of Landing Zone Design Considerations. This is part of the Google Cloud Adoption and Migration: From Strategy to Operation series. As I’ve said previously in this series, containers…

GitOps-Powered Kubernetes Testing Machine: ArgoCD + Testkube

One of the major trends in contemporary cloud native application development is the adoption of GitOps; managing the state of your Kubernetes cluster(s) in Git — with all the bells and whistles…

GitHub Actions: Terraform deployments with a review of planned changes

In the GitHub Actions: deploying Dev/Prod environments with Terraform blog I’ve already described how we can implement CI/CD for Terraform with GitHub Actions, but there is one significant drawback…

Make Your Own API Gateway with NGINX and Proper Auth Validation

Microservices are a common trend in our software industry right now. Whenever the topic of “scalability” arises, microservices come to mind first. We, as developers, prefer to build software in a…

13 Docker Tricks You Didn’t Know

Docker has become an indispensable tool in the development, testing, and deployment pipelines of modern applications. While many Docker users are familiar with its basic commands and operations…

5 Fun Projects to learn AWS

Embarking on the journey to learn Amazon Web Services (AWS) is an exciting and rewarding endeavor, offering numerous possibilities for those eager to enhance their cloud computing skills. To make the…

Kubernetes Garbage Collection: A Practical Guide

In Kubernetes, efficient management of resources is crucial for maintaining the performance and stability of applications. One of the key mechanisms to ensure this efficiency is garbage collection…

Automating Dependency Updates in Kubernetes

staying on top of dependency updates is critical for maintaining secure, efficient applications. However, the manual process of updating dependencies is fraught with potential for oversight and…

Advanced End-to-End DevSecOps Kubernetes Three-Tier Project using Azure AKS, fluxCD, Prometheus…

Kindly join the below Group and drop your query over there. I will connect with you and solve your issues as soon as possible. In today’s rapidly evolving technological landscape, the deployment and…

Alternatives to Auth0 we are most excited about in 2024

Auth0 and its parent company, Okta, are what developers think of when managing user authentication and authorisation. Both do, in general, a great job at implementing secure access for our favourite…

Is AWS CDK better than Terraform?

In this article, I am going to explain the advantages of using AWS CDK over Terraform for maintaining your cloud infrastructure along with code snippets for better understanding. I work as an AWS…

Google Cloud Platform Technology Nuggets — March 16–31, 2024 Edition

We are less than 10 days away from the biggest Google Cloud Event of the year and the excitement is building up. This year, the event is expected to have a large number of technical sessions, based…

Kubernetes: look mum, no Load Balancer

When running Kubernetes either in the cloud or on-premises you often will need two important components: a storage provider and a load balancer. Cloud providers will give you both (for a fee…

Pack: Dockerfile-less deployment to Kubernetes with Cloud Native Buildpacks

In the ecosystem of containerization, Docker has long been the de facto standard for building and deploying applications. However, the rise of open standards such as the Open Container Initiative…

Technical Guide: End-to-End CI/CD DevOps with Jenkins, Docker, Kubernetes, ArgoCD, Github Actions …

DevOps automation is the addition of technology that performs tasks with reduced human assistance to processes that facilitate feedback loops between operations and development teams so that…

How we built Text-to-SQL at Pinterest

Adam Obeng | Data Scientist, Data Platform Science; J.C. Zhong | Tech Lead, Analytics Platform; Charlie Gu | Sr. Manager, Engineering Writing queries to solve analytical problems is the core task for…

How do we manage k8s applications deployed in multiple k8s clusters using argoCD & Helm?

Argo CD is a Kubernetes-native continuous deployment (CD) tool. Unlike external CD tools that only enable push-based deployments, Argo CD can pull updated code from Git repositories and deploy it…

Poor architecture decisions when migrating to the cloud

When organizations are designing their first workload migrations to the cloud, they tend to mistakenly look at the public cloud as the promised land that will solve all their IT challenges (from…