Important things

302 http response with Location header for url redirection(GET and Head) - 307 for temporary redirection ,==> Spring Sleuth - tracing in microservices, ==> https://astikanand.github.io/techblogs/high-level-system-design/design-bookmyshow, https://www.hellointerview.com/learn/system-design/in-a-hurry/introduction

Saturday, 26 April 2025

Vector Database

 

Vector databases are specialized databases designed to store, manage, and search high-dimensional vectors—often used in machine learning, artificial intelligence, and especially in applications like:

  • Semantic search

  • Recommendation systems

  • Image, video, or audio similarity

  • Natural language processing (e.g., embeddings from models like BERT or OpenAI's models)

🧠 What is a "vector" in this context?

A vector is basically a list of numbers that represents data in a numerical format. For instance, a sentence can be turned into a vector using an embedding model, like OpenAI’s embedding models or word2vec.

Example vector:

[0.21, -0.53, 0.88, ..., 0.05]

These vectors are often hundreds or thousands of dimensions long.


⚙️ How vector databases work

They use Approximate Nearest Neighbor (ANN) algorithms to find similar vectors quickly. This is key when you're doing things like:

  • "Find the most similar document to this one"

  • "Which image looks closest to this?"

Popular ANN algorithms:

  • HNSW (Hierarchical Navigable Small World)

  • IVF (Inverted File Index)

  • PQ (Product Quantization)


🔥 Popular Vector Databases

  • Pinecone – Fully managed, scalable, simple to use

  • Weaviate – Open-source with built-in ML features

  • Milvus – High-performance and scalable, also open-source

  • FAISS (by Meta) – Library for similarity search (not a full database, but often used with others)

  • Qdrant – Open-source, supports filtering and metadata

  • Chroma – Lightweight and often used for LLM apps

Sunday, 2 March 2025

Multithreading and Concurrency details:

 Multithreading and Concurrency is one of the most important topic for Senior Engineering Interviews. I mostly work with these two languages, so here are some great articles/repos to help master concurrency and its nuinances.


𝐉𝐚𝐯𝐚 🚀
1. Concurrency Series By Baeldung: https://lnkd.in/gBtMG6Mk

2. Proving Concurrency Requirement: https://lnkd.in/gwvvBWxY

3. Concurrency Series by Jenkov: https://lnkd.in/gaWZUj3W


𝐆𝐨 🚀

1. Utlimate Concurreny Guide on Github: https://lnkd.in/gRU-Z-WS
2. Concurrency Patterns: https://lnkd.in/g6nq6ZRP

If you want to build real systems like Redis, Kafka, DNS and a SqlLite Database yourself checkout these best of a kind tutorials.

1. Build Your Own Redis: https://lnkd.in/gz92ygFH
2. Build Your Own Kafka: https://lnkd.in/gm58s8CX
3. Build Your Own Http Server: https://lnkd.in/g_VxvcUN
4. Build Your Own DNS Server: https://lnkd.in/g7iM2F69

Plus amazing tutorials for all languages like Go, Rust, Java and Python.

Bonus:
Lock Free Algorithms:
1. https://lnkd.in/gTwk6Cpk
2. https://lnkd.in/gYVSVska

Wednesday, 26 February 2025

System design cheatsheet and resources

 • 𝗦𝘆𝘀𝘁𝗲𝗺 𝗗𝗲𝘀𝗶𝗴𝗻 𝗙𝘂𝗻𝗱𝗮𝗺𝗲𝗻𝘁𝗮𝗹𝘀:

► SD Primer: https://lnkd.in/e-KTtPn5
► Fundamentals: https://lnkd.in/ehTg_AJh
► Revision Resources: https://lnkd.in/eVCEX5fG
► Patterns of Enterprise Application Architecture: https://lnkd.in/enqNi6NG
► Microservices Guide: https://lnkd.in/ebgT-jQv

• 𝗟𝗼𝘄 𝗟𝗲𝘃𝗲𝗹 𝗗𝗲𝘀𝗶𝗴𝗻:
► Java design patterns: https://lnkd.in/eYN_SzM8
► Low level design primer: https://lnkd.in/e2_Gm8Bd
► Design patterns: https://lnkd.in/eUUNvg9z
► Low level design coding: https://lldcoding.com/

• 𝗚𝗿𝗲𝗮𝘁 𝗬𝗼𝘂𝘁𝘂𝗯𝗲 𝗖𝗵𝗮𝗻𝗻𝗲𝗹𝘀:
https://lnkd.in/eV7nDUik
https://lnkd.in/eKhegwr9
https://www.codekarle.com/
https://lnkd.in/eByreFxK
https://lnkd.in/eG_g6vGP
https://lnkd.in/eGPQRBTc
https://lnkd.in/eqnsYUCg
https://lnkd.in/eTYr_b-b
https://lnkd.in/eDxKeFYp

• 𝗠𝘂𝘀𝘁 𝗞𝗻𝗼𝘄 𝗖𝗼𝗻𝗰𝗲𝗽𝘁𝘀:
https://lnkd.in/e-y-vYiR
https://lnkd.in/e7reQ4VF
https://lnkd.in/eZkyjptm
https://lnkd.in/eiMxhgkp
https://lnkd.in/eP2hik3h
https://lnkd.in/e4AHNSeT
https://lnkd.in/ez7Xn7Dq
https://uptime.is/
https://lnkd.in/eisE6YcX
https://lnkd.in/e5_wtjVj
https://lnkd.in/eeTtUPuj
https://lnkd.in/eWdwhGap
https://lnkd.in/e523JHxw
https://lnkd.in/eeak4jSp
https://lnkd.in/eNiuhxDG
https://lnkd.in/e8YS9aNp
https://lnkd.in/e9uZ4YyS
https://lnkd.in/ednb2jMs
https://lnkd.in/gn4BA3sD
https://lnkd.in/gQ7WsE8k
https://lnkd.in/ewyrg-XF
https://lnkd.in/etEG3RaZ
https://lnkd.in/ecknDuh3
https://lnkd.in/gSRg368z
https://lnkd.in/ewFYEeaU
https://lnkd.in/ekuAzhPh
https://lnkd.in/eRS_Nj6S
https://lnkd.in/eF5fpx6i
https://lnkd.in/ehAkUpKV
https://lnkd.in/ebKcznNJ
https://lnkd.in/e4VbGMcJ
https://lnkd.in/eyXKte3Y
https://lnkd.in/ea8hcbqp
https://lnkd.in/eg9gSDXY
https://lnkd.in/e6GgFYHX
https://lnkd.in/eTZ5dHQx
https://lnkd.in/e87Q-FYp
https://lnkd.in/empHXpn6
https://lnkd.in/eRBRtfk9
https://lnkd.in/e6YxQx29
https://lnkd.in/ewX7VFEi
https://lnkd.in/gACBeZYQ
https://lnkd.in/eStETWQA
https://lnkd.in/eSYjuq-b
https://lnkd.in/egFC33Zk
https://lnkd.in/eF_2KNKT
https://lnkd.in/eR5uJC6J
https://lnkd.in/es8Fp7Q5
https://lnkd.in/eVeVWT3a
https://lnkd.in/eA4zYkjF
https://lnkd.in/eG3xPV-x
https://lnkd.in/eHGCwmT8
https://lnkd.in/eBxej4x5
https://lnkd.in/e-zCR3ft
https://lnkd.in/eXsuuthN
https://lnkd.in/ehZjnuWx
https://lnkd.in/eUCxcXr2