Piyush Chauhan

Piyush Chauhan @frorning

About: Senior Software Engineer @ Agoda | 8+ Years in Frontend Technologies | Node.js, React.js, Next.js Expert | AWS & GCP Certifications | Agile Practitioner | DevOps Advocate

Location:
Bangkok, Thailand
Joined:
Sep 27, 2017

Piyush Chauhan
articles - 32 total

Backtracking Unveiled: Mastering Depth-First Search and Pruning Techniques

Backtracking is a systematic way to iterate through all possible configurations of a problem. It is...

Learn More 1 0Feb 22

A* Search Algorithm and Iterative Deepening A* in JavaScript

1. Introduction Search algorithms play a crucial role in solving problems across computer...

Learn More 2 0Feb 8

How I Use AI, Sticky Notes, and Pomodoro to Stay Productive as a Software Engineer

As a software engineer juggling frontend and backend tasks, I’ve found that staying organized and...

Learn More 0 0Jan 24

Introduction to WebAssembly (WASM)

WebAssembly (WASM) is a binary instruction format for a stack-based virtual machine, designed as a...

Learn More 33 1Jan 10

Functional Programming in Go with IBM fp-go: Error Handling Made Explicit

Functional programming (FP) principles are gaining popularity in modern software development due to...

Learn More 3 0Dec 27 '24

Mastering Trampolining: A Deep Dive into Recursive Optimization

Mastering Trampolining: A Deep Dive into Recursive Optimization In the world of...

Learn More 3 0Dec 25 '24

Mastering Quick Sort: A Fundamental Algorithm in Computer Science

Introduction to Quick Sort In the vast world of algorithms and data structures, Quick Sort...

Learn More 0 1Dec 25 '24

Functional Programming with fp-ts in Node.js

Introduction Functional programming (FP) has gained popularity for its composability,...

Learn More 0 0Dec 22 '24

Building a Basic Testing Framework in Bash 🐚

In the world of software development, testing is crucial for ensuring that your code behaves as...

Learn More 0 0Dec 21 '24

🚀 Unlocking Sprint Success with Jira Versions: A Strategic Guide

Jira versions are powerful tools that help teams organize and track project milestones more...

Learn More 0 0Dec 21 '24

Precise Allocations with Big.js: Handling Rounding and Leftover Redistribution

When dealing with fractional allocations of large amounts, rounding errors and leftover...

Learn More 0 0Dec 21 '24

Embedding vs. Referencing - A Strategic Choice!

🔍 MongoDB Data Modeling: Embedding vs. Referencing - A...

Learn More 0 0Dec 21 '24

🔍 MongoDB Data Modeling: Embedding vs. Referencing - A Strategic Choice!

When designing MongoDB schemas, it's crucial to balance performance and flexibility. Here's a quick...

Learn More 0 0Dec 21 '24

A Robust Database Migration and Release Process for Web Applications

In this article, we’ll explore a database migration and release process optimized for forward-only...

Learn More 1 0Dec 20 '24

Streamlined Release Process for a Web Application: Trunk-Based Development with Feature Flags

In this article, we will outline a robust and efficient release process for web applications, built...

Learn More 0 0Dec 20 '24

Understanding Data Partitioning vs. Sharding: Key Concepts for Effective Data Management

The terms data partitioning and data sharding are often used interchangeably, but they have distinct...

Learn More 0 0Dec 18 '24

Handling Sharded Data in Distributed Systems: A Deep Dive into Joins, Broadcasts, and Query Optimization

In modern distributed databases, the need for scaling data horizontally has led to the widespread...

Learn More 0 0Dec 18 '24

Schema Design Patterns For MongoDB

1. Polymorphic Pattern: Concept: Stores documents with different structures within the same...

Learn More 1 0Dec 17 '24

Algorithmic Concepts in MongoDB Design

1. Sliding Window Concept Application in MongoDB // Sliding Window for...

Learn More 0 0Dec 17 '24

Database Design Trade-offs

1. Indexing vs Write Performance Pros of Indexing Faster read operations Quick...

Learn More 0 0Dec 17 '24

Big Decimal Arithmetic Across Programming Languages: Bridging the Gap

Handling high-precision arithmetic is essential in domains like finance, cryptography, and scientific...

Learn More 7 0Dec 15 '24

Multiplying Large Decimal Numbers Using Fast Fourier Transform (FFT)

Introduction Multiplying large decimal numbers can be computationally challenging,...

Learn More 0 0Dec 14 '24

Converting Recursion to Iteration Using a Stack: A Practical Guide

Recursion is a powerful technique in computer science, often used for tasks like tree traversal,...

Learn More 0 0Dec 14 '24

Converting Loops into Recursion: Templates and Tail Recursion Explained

Recursion and loops are both fundamental tools for implementing repetitive tasks in programming....

Learn More 0 1Dec 14 '24

Understanding Dijkstra's Algorithm: From Theory to Implementation

Dijkstra's algorithm is a classic pathfinding algorithm used in graph theory to find the shortest...

Learn More 0 0Dec 13 '24

Mastering Strong and Weak Induction in Mathematics and Programming

Introduction Mathematical induction is a powerful proof technique that allows us to...

Learn More 1 0Dec 12 '24

Understanding and Implementing the Karatsuba Multiplication Algorithm for Large Numbers

In computational mathematics, efficiently multiplying large numbers is a cornerstone of various...

Learn More 0 0Dec 11 '24

JavaScript Interview Cheat Sheet - Part 2

Common LeetCode Patterns // Two Pointers - In-place array modification const...

Learn More 0 0Dec 11 '24

JavaScript Interview Cheat Sheet - Part 1

Array Operations // Initialize const arr = []; const arr = new Array(size).fill(0); //...

Learn More 0 0Dec 11 '24

Benchmarking in Node.js vs Deno: A Comprehensive Comparison

In the ever-evolving landscape of JavaScript runtime environments, Node.js and Deno stand out as...

Learn More 0 0Dec 11 '24