Blog

6 articles on backend engineering, system design, and infrastructure.

28 min read

System Design Mastery — 180-Day Curriculum

Target: Senior backend / FAANG-level system design interview readiness Duration: 180 days · 3 hours/day · ~540 hours Mocks: 20 scored mock interviews.

7 min read

Cloudflare Tunnel + Zero Trust দিয়ে EC2-তে হোস্ট করা যেকোনো সাইটে নির্দিষ্ট ইউজারদের সিকিউর অ্যাক্সেস দিন

আপনার EC2 সার্ভারে একটা সার্ভিস চলছে — হতে পারে Gogs, কোনো অ্যাডমিন প্যানেল, Grafana, বা যেকোনো ওয়েব অ্যাপ। আপনি চান শুধুমাত্র নির্দিষ্ট কিছু মানুষ সেটা ব্যবহার করতে পারুক, বাকি পুরো ইন্টারনেট থেকে সেটা সম্পূর্ণ ব্লক থাকুক। সবচেয়ে বড় কথা — সার্ভারে কোনো পোর্ট ওপেন না করেই।

4 min read

পাইথন স্ট্রিং-এর মধ্যে পোস্টগ্রেসকিউএল ডলার $$ কোটিং

PostgreSQL-এর ডলার-কোটিং সিনট্যাক্সের গভীর বিশ্লেষণ, পাইথনের স্টোরড প্রসিডিউরের জন্য এটি কেন অপরিহার্য, এবং Django ও FastAPI কোডবেসে কীভাবে নিরাপদে জটিল SQL এম্বেড করা যায়।

3 min read

Journalctl-এর আদ্যোপান্ত

Journalctl হলো লিনাক্স অপারেটিং সিস্টেমের একটি কেন্দ্রীয় লগ (Log) ম্যানেজমেন্ট টুল। সোজা কথায় বলতে গেলে, এটি লিনাক্স সার্ভারের "রেকর্ড খাতা"। সার্ভারে চলা বিভিন্ন অ্যাপ্লিকেশন বা সার্ভিস (যেমন: Nginx, MySQL, Docker), হার্ডওয়্যার, এবং সিস্টেমের ভেতরে কখন কী ঘটছে—তার সমস্ত তথ্য এখানে জমা হয়। সার্ভার ক্র্যাশ করলে, কোনো সার্ভিস কাজ না করলে বা কোনো ত্রুটি (Error) দেখা দিলে, সিস্টেম অ্যাডমিনিস্ট্রেটররা এই journalctl কমান্ড ব্যবহার করে খুব সহজেই লগের বিশাল পাহাড় থেকে নির্দিষ্ট সময়ের বা নির্দিষ্ট সার্ভিসের ত্রুটিটি খুঁজে বের করেন (Troubleshoot)। সংক্ষেপে, সার্ভারের যেকোনো অভ্যন্তরীণ অবস্থা জানা এবং সমস্যা দ্রুত সমাধান করার জন্য এটি লিনাক্স ব্যবহারকারীদের সবচেয়ে নির্ভরযোগ্য হাতিয়ার।

14 min read

গিট (Git) সিনারিও এবং তার সমাধান

গিট (Git) হলো ডেভেলপারদের জন্য সবচেয়ে প্রয়োজনীয় টুল—এটি মূলত আপনার কোডের "টাইম মেশিন"। প্রজেক্টের কোডে কখন কী পরিবর্তন হয়েছে তা মনে রাখা এবং টিমের সাথে কাজ করার জন্য প্রফেশনালরা এটি ব্যবহার করেন। নিচে বিগিনার থেকে অ্যাডভান্সড লেভেল পর্যন্ত Git-এর প্রয়োজনীয় কমান্ড, প্রফেশনাল সিনারিও এবং ইউজ-কেস (Use Case) সহজ বাংলায় আলোচনা করা হলো: