Fixed literal Translation and added missing info

This commit is contained in:
Sumit Kumar Kar 2022-02-23 12:54:48 +06:00
parent 66e524b30b
commit 45001114ca
1 changed files with 216 additions and 199 deletions

View File

@ -88,7 +88,7 @@
<hr />
</div>
## এট কি?
## এটি কি?
![Coding at the whiteboard - from HBO's Silicon Valley](https://d3j2pkmjtin6ou.cloudfront.net/coding-at-the-whiteboard-silicon-valley.png)
@ -110,15 +110,15 @@
### পাঠ পরিকল্পনা
- [এটি কী?](#এটি-কী)
- [এটি কি?](#এটি-কি?)
- [কেন এটি ব্যবহার করবেন?](#এটি-কেন-ব্যবহার-করুন)
- [এটি কীভাবে ব্যবহার করবেন](#এটি-কীভাবে-ব্যবহার-করবেন)
- [আপনি কি নিজেকে যথেষ্ট স্মার্ট ভাবেন নাহ](#মনে-করেন-না-আপনি-স্মার্ট-যথেষ্ট)
- [ভিডিও রিসোর্স সম্পর্কে কিছু কথা](#ভিডিও-সংস্থান-সম্পর্কে)
- [একটি প্রোগ্রামিং ভাষা বেছে নিন](#সাক্ষাত্কারের-জন্য-ভাষা-বেছে-নিন)
- [ডাটা স্ট্রাকচার এবং এ্যালগোরিদম এর বইসমুহ](#বুক-তালিকা)
- [ইন্টারভিউ এর প্রস্তুতি এর বইসমুহ](#সাক্ষাত্কার-প্রক্রিয়া-সাধারণ-সাক্ষাত্কার-প্রস্তুতি)
- [আমার ভুল গুলো করবেন নাহ](ভুল)
- [আপনি কি নিজেকে যথেষ্ট স্মার্ট ভাবেন নাহ](#আপনি-কি-নিজেকে-যথেষ্ট-স্মার্ট-ভাবেন-নাহ)
- [ভিডিও রিসোর্স সম্পর্কে কিছু কথা](#ভিডিও-রিসোর্স-সম্পর্কে-কিছু-কথা)
- [একটি প্রোগ্রামিং ভাষা বেছে নিন](#একটি-প্রোগ্রামিং-ভাষা-বেছে-নিন)
- [ডাটা স্ট্রাকচার এবং এ্যালগোরিদম এর বইসমুহ](#ডাটা-স্ট্রাকচারএবং-এ্যালগোরিদম-এর-বইসমুহ)
- [ইন্টারভিউ এর প্রস্তুতি এর বইসমুহ](#ইন্টারভিউ-এর-প্রস্তুতি-এর-বইসমুহ)
- [আমার ভুল গুলো করবেন নাহ](আমার-ভুল-গুলো-করবেন-নাহ)
- [এখানে যা শেখানো হবে না](#কী-আপনি-দেখতে-পাবেন-না)
- [দৈনিক পরিকল্পনা](#দৈনিক-পরিকল্পনা)
- [কোডিং প্রশ্ন অনুশীলন](#কোডিং-প্রশ্ন-অনুশীলন)
@ -237,246 +237,206 @@
---
## কেন এটি ব্যবহার করবেন?
আপনি যদি সফটওয়্যার ইঞ্জিনিয়ার হিসেভে বড় কোম্পানি তে কাজ করতে চান তাহলে এই বিষয় গুলো আপনার জানা থাকা প্রয়োজন।
আপনি যদি আমার মতো কম্পিউটার সাইন্স এর ডিগ্রি মা মিয়ে থাকেন তাহলে এটি আপনাকে কম্পিউটার সাইন্স এর চার বছরের কোর্স শিখতে সাহায্য করবে।
আমি যখন এই প্রকল্পটি শুরু করেছি, তখন আমি একটি হিপ স্ট্যাক কিছুই জানতাম না, বিগ-ও জানতাম না, ট্রি সম্পর্কে কিছুই বা কীভাবে একটি গ্রাফ ট্রাভার্স করব কিছি জানতাম নাহ। যদি আমাকে কোনও সর্টিং অ্যালগরিদম কোড করতে বলা হতো, আমি তোমাকে বলতে পারি এটি খুব ভাল হত না।
আমি যে ডেটা স্ট্রাকচার ব্যবহার করেছি সেগুলি ভাষাতে বিল্ট ইন ছিল এবং তারা কীভাবে কাজ করেছিল তা আমি জানতাম না। আমি যে প্রোগ্রামটি চালাচ্ছিলাম তা যদি আমাকে "মেমোরি আউট অফ বাউন্ড" ইরোর না দেখাতো তাহলে আমি মেমরি ম্যানেজ করতাম নাহ। এবং এই ইরোর দিলে তখন আমি অন্য কোনো পথ বেছে নিতাম। আমি আমার জীবনে বহু বহুমাত্রিক অ্যারে ব্যবহার করেছি এবং সহস্রাধিক অ্যাসোসিয়েটিভ অ্যারে ব্যাবহার করেছি, তবে আমি স্ক্র্যাচ থেকে কখনও ডেটা স্ট্রাকচার তৈরি করি নি।
আমি যখন এই প্রকল্পটি শুরু করেছি, তখন আমি একটি স্তূপ থেকে একটি স্ট্যাক জানি না, বিগ-ও কিছুই জানতাম না, গাছ সম্পর্কে কিছুই বা কীভাবে করব
একটি গ্রাফ অতিক্রম করুন। যদি আমাকে কোনও বাছাই করা অ্যালগরিদম কোড করতে হয়, আমি তোমাকে বলতে পারি এটি খুব ভাল হত না।
আমি যে ডেটা কাঠামোটি ব্যবহার করেছি সেগুলি ভাষাতে নির্মিত হয়েছিল এবং তারা কীভাবে কাজ করেছিল তা আমি জানতাম না
আদৌ হুডের নিচে। আমি যে প্রক্রিয়াটি চালিয়ে যাচ্ছিলাম তা যদি না হয় তবে আমার কখনই মেমোরি পরিচালনা করতে হয়নি
স্মৃতিশক্তি "ত্রুটি, এবং তারপরে আমাকে একটি কাজের সন্ধান করতে হবে I've আমি আমার জীবনে কয়েকটি বহুমাত্রিক অ্যারে ব্যবহার করেছি এবং
সহস্রাধিক সংঘবদ্ধ অ্যারে, তবে আমি স্ক্র্যাচ থেকে কখনও ডেটা স্ট্রাকচার তৈরি করি নি।
এটি একটি দীর্ঘ পরিকল্পনা। এটি আপনার কয়েক মাস সময় নিতে পারে। আপনি যদি ইতিমধ্যে এর অনেকের সাথে পরিচিত হন তবে আপনাকে অনেক কম সময় লাগবে।
এটি একটি দীর্ঘ পরিকল্পনা। এটি আপনার কয়েক মাস সময় নিতে পারে। আপনি যদি ইতিমধ্যে এর অনেক বিষয়ের সাথে পরিচিত হন তবে আপনাকে অনেক কম সময় লাগবে।
## এটি কিভাবে ব্যবহার করতে
<details>
<summary>এটি কীভাবে ব্যবহার করবেন </summary>
নীচের সমস্ত কিছুই একটি রূপরেখা এবং আপনার আইটেমগুলি উপরের থেকে নীচে পর্যন্ত অনুসরন করা উচিত।
নীচের সমস্ত কিছুই একটি রূপরেখা এবং আপনার আইটেমগুলি উপরের থেকে নীচে পর্যন্ত সামলানো উচিত
আমি নিজের অগ্রগতি নোট করার জন্য আমি গিট-হাবের বিশেষ মার্কডাউন ফ্লেভার এর টাস্ক লিস্ট ব্যবহার করছি।
অগ্রগতি পরীক্ষা করার জন্য কার্য তালিকা সহ আমি গিথুবের বিশেষ মার্কডাউন গন্ধ ব্যবহার করছি।
**একটি নতুন ব্রাঞ্চ তৈরি করুন যাতে আপনি এভাবে আইটেমগুলিতে টিক চিহ্ন ব্যাবহার করতে পারেন, বন্ধনীগুলিতে কেবল একটি এক্স রাখুন: [x]**
**একটি নতুন শাখা তৈরি করুন যাতে আপনি এর মতো আইটেমগুলি পরীক্ষা করতে পারেন, বন্ধনীগুলিতে কেবল একটি এক্স রাখুন: [x]**
একটি ব্রাঞ্চ ফর্ক করুন এবং নীচের কমান্ডগুলি অনুসরণ করুন
একটি শাখা কাঁটাচামচ করুন এবং নীচের আদেশগুলি অনুসরণ করুন
`git checkout-b progress`
এই গিট-হাব রিপো টি ফর্ক করুন
https://github.com/jwasham/coding-interview-university
ফর্ক বাটনে চাপ দিয়ে
`git remote add jwasham https://github.com/jwasham/coding-interview-university`
আপনার লোকাল রিপো তে ক্লোন করুন
`git fetch--all`
আপনার পরিবর্তনগুলি শেষ করার পরে এক্স সহ সমস্ত বাক্স চিহ্নিত করুন
git clone git@github.com:<your_github_username>/coding-interview-university.git
git checkout -b progress
git remote add jwasham https://github.com/jwasham/coding-interview-university
git fetch --all
আপনার পরিবর্তনগুলি শেষ করার পরে এক্স "X" চিহ্ন দিয়ে সমস্ত বাক্স চিহ্নিত করুন
`git add .`
git add .
git commit -m "Marked x"
git rebase jwasham/main
git push --set-upstream origin progress
git push --force
`git commit-m "Marked x"`
`git rebase jwasham/main`
`git push--force`
[গিথুব-স্বাদযুক্ত মার্কডাউন সম্পর্কে আরও](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown)
[গিট-হাব-ফ্লেভার্ড মার্কডাউন সম্পর্কে আরও জানুন](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown)
</details>
## মনে হয় না আপনি যথেষ্ট স্মার্ট নন
## আপনি কি নিজেকে যথেষ্ট স্মার্ট ভাবেন নাহ
- সফল সফ্টওয়্যার ইঞ্জিনিয়াররা স্মার্ট, তবে অনেকেরই এমন নিরাপত্তাহীনতা রয়েছে যে তারা যথেষ্ট স্মার্ট নয়।
- [জিনিয়াস প্রোগ্রামারটির রূপকথার কাহিনী](https://www.youtube.com/watch?v=0SARbwvhupQ)
- [একা যাওয়া বিপদজনক: টেকের মধ্যে অদৃশ্য মনস্টারদের লড়াই](https://www.youtube.com/watch?v=1i8ylq4j_EY)
- [জিনিয়াস প্রোগ্রামার নিয়ে মিথ](https://www.youtube.com/watch?v=0SARbwvhupQ)
- [একা যাওয়া বিপদজনক: টেকের মধ্যে অদৃশ্য মনস্টার লড়াই করা](https://www.youtube.com/watch?v=1i8ylq4j_EY)
- [বিশ্বাস আপনি পরিবর্তন করতে পারেন](http://www.aaronsw.com/weblog/dweck)
- [ভাবেন আপনি গুগলে কাজ করার মতো স্মার্ট নন? ঠিক আছে, আবার চিন্তা করুন](https://www.youtube.com/watch?v=uPOJ1PR50ag)
## ভিডিও সংস্থান সম্পর্কে
## ভিডিও রিসোর্স সম্পর্কে কিছু কথা
কিছু ভিডিও কেবল কোর্সেরা বা এডএক্স ক্লাসে ভর্তি হয়ে পাওয়া যায়। এগুলিকে এমওওসি বলা হয়।
কিছু ভিডিও কেবল কোর্সেরা (Coursera) বা এডএক্স (EdX) ক্লাসে ভর্তি হয়ে পাওয়া যায়। এগুলিকে এমওওসি বলা হয়।
কখনও কখনও ক্লাসগুলি সেশনে হয় না তাই আপনাকে কয়েক মাস অপেক্ষা করতে হবে, যাতে আপনার অ্যাক্সেস নেই।
আমি অনলাইনে কোর্স ভিডিও সহ ইউটিউব ভিডিও হিসাবে সর্বদা উপলব্ধ এবং সর্বদা উপলভ্য পাবলিক উত্স যোগ করতে আপনার সাহায্যের প্রশংসা করব।
আমি বিশ্ববিদ্যালয়ের বক্তৃতা ব্যবহার করতে পছন্দ করি।
## সাক্ষাত্কার প্রক্রিয়া এবং সাধারণ সাক্ষাত্কার প্রস্তুতি
<details>
<সুম> সাক্ষাত্কার প্রক্রিয়া এবং সাধারণ সাক্ষাত্কারের প্রস্তুতি </summary>
- [এ বি সি: সর্বদা কোডিং থাকুন](https://medium.com/always-be-coding/abc-always-be-coding-d5f8051afce2#.4heg8zvm4)
- [হোয়াইটবোর্ডিং](https://medium.com/@dpup/whiteboarding-4df873dbba2e#.hf6jn45g1)
- [প্রোগ্রামিং সাক্ষাত্কারের সময় কার্যকর হোয়াইটবোর্ডিং](http://www.coderust.com/blog/2014/04/10/Effective-Witeboarding-during-programming-interviews/)
- [টেক রিক্রুটিং কে ক্ষমা করা](https://www.youtube.com/watch?v=N233T0epWTs)
- কোডিং সাক্ষাত্কারটি ক্র্যাক করা 1:
- [গেইল এল ম্যাকডোয়েল-কোডিং সাক্ষাত্কারের ক্র্যাকিং (ভিডিও)](https://www.youtube.com/watch?v=rEJzOhC5ZtQ)
- [লেখক গেইল লাকম্যান ম্যাকডোভেল (ভিডিও) এর সাথে কোডিং সাক্ষাত্কার ক্র্যাক করা](https://www.youtube.com/watch?v=aClxtDcdpsQ)
- বিগ 4 এ কীভাবে চাকরী পাবেন?
- [বিগ 4 এ কীভাবে চাকরী পাবেন-অ্যামাজন, ফেসবুক, গুগল এবং মাইক্রোসফ্ট (ভিডিও)](https://www.youtube.com/watch?v=YJZCUhxNCv8)
- প্রস্তুতি কোর্স:
- [সফটওয়্যার ইঞ্জিনিয়ার সাক্ষাত্কার প্রকাশিত (বেতনভুক্ত কোর্স)](https://www.udemy.com/software-engineer-interview-unleashed):
-একজন প্রাক্তন গুগল সাক্ষাত্কারকারীর থেকে কীভাবে নিজেকে সফটওয়্যার ইঞ্জিনিয়ার সাক্ষাত্কারের জন্য প্রস্তুত করবেন তা শিখুন।
- [ডেটা স্ট্রাকচার, অ্যালগরিদম এবং সাক্ষাত্কারের জন্য পাইথন! (প্রদত্ত কোর্স)](https://www.udemy.com/python-for-data-structures-algorithms-and-interviews/):
-পাইথন কেন্দ্রিক সাক্ষাত্কার প্রস্তুতির কোর্সে ডেটা স্ট্রাকচার, অ্যালগরিদম, মক সাক্ষাত্কার এবং আরও অনেক কিছু রয়েছে।
- [পাইথন ব্যবহার করে ডেটা স্ট্রাকচার এবং অ্যালগরিদমগুলিতে ইন্ট্রো! (উদাসীনতা মুক্ত কোর্স)](https://www.udacity.com/cورس/data-structures-এবং-algorithms-in-python--ud513):
-একটি ফ্রি পাইথন কেন্দ্রিক ডেটা স্ট্রাকচার এবং অ্যালগরিদম কোর্স।
- [ডেটা স্ট্রাকচার এবং অ্যালগোরিদম ন্যানোডগ্রি! (উদাস্তিটি ন্যানোডগ্রি প্রদান করেছে)](https://www.udacity.com/course/data-structures-এবং-algorithms-nanodegree--nd256):
-100 টিরও বেশি ডেটা স্ট্রাকচার এবং অ্যালগরিদম অনুশীলন এবং আপনাকে একটি সাক্ষাত্কারের জন্য এবং কাজের সুযোগে দৃশ্যের জন্য আপনাকে প্রস্তুত করতে ডেডিকেটেড পরামর্শদাতার দিকনির্দেশ দিয়ে অনুশীলন পান।
</details>
## সাক্ষাত্কারের জন্য একটি ভাষা চয়ন করুন
সাক্ষাত্কারের কোডিং অংশটি করতে আপনি স্বাচ্ছন্দ্যযুক্ত একটি ভাষা ব্যবহার করতে পারেন তবে বড় সংস্থাগুলির জন্য এগুলি কঠোর পছন্দ:
অনলাইন কোর্স এর পরিবর্তে ফ্রি এবং সর্বদা পাওয়া যায় এমন পাব্লিক রিসোর্স যেমন ইউটিউব ভিডিও (আমি বিশ্ববিদ্যালয়ের বক্তৃতা ব্যবহার করতে পছন্দ করি।) ব্যাভয়ার করা ভালো হবে। যেন আপনারা যেকোনো সময় যেকোনো বিষয়ে পড়তে পারেন কোনো বিশেষ সময় কোনো কোর্স এর জন্য অপেক্ষা করতে নাহ হয়।
## একটি প্রোগ্রামিং ভাষা বেছে নিন
আপনি যে কোডিং সাক্ষাত্কারগুলি করবেন তার জন্য আপনাকে একটি প্রোগ্রামিং ভাষা পছন্দ করতে হবে, তবে আপনাকে এমন একটি ভাষাও খুঁজে বের করতে হবে যা আপনি কম্পিউটার সাইন্সের ধারণাগুলি অধ্যয়ন করতে ব্যবহার করতে পারবেন।
ভালো হয় যদি এই দুইটি কাজে একই ভাষা ব্যাবহার করেন তাহলে আপনাকে একটি ভাষাতেই দক্ষ হতে হবে।
### এই শিক্ষা পরিকল্পনার জন্য
আমি যখন এই শিক্ষা পরিকল্পনা অনুসরন করেছিলাম তখন আমি সি ও পাইথন এই দুইটি ব্যাবহার করেছিলাম।
- সি: এটি খুব ই লো লেভেল ল্যাংগুয়েজ। এটি আপনাকে পয়েন্টার এবং মেমরি অ্যালোকেশন / ডি-অ্যালোকেশন নিয়ে কাজ করতে দিবে। যার মাধ্যমে আপনি ভালো ভাবে অ্যালগোরিদম ও ডাটা স্ট্রাকচার শিখতে পারবেন। পাইথন ও জাভা হলো হাই লেভেল ল্যাংগুয়েজ এই ল্যাংগুয়েজ গুলোতে আপনার থেকে এই বিষয় গুলো লুকানো থাকে। দৈনিক কাজের ক্ষেত্রে যাহ খুব ই সুবিধা জনক কিন্ত শেখার ক্ষেত্রে যখন আপনি লো লেভেল ডাটা স্ট্রাকচার কিভাবে বানানো হয় শিখছেন তখন যতো লো লেভেল অর্থাৎ হার্ডওয়্যার এর কাছাকাছি এক্সহেখাই ভালো।
- সি এর ব্যাবহার সর্বত্র। এর উদারন আপনি বই, ভিডিও, লেকচার, যেখানেই পড়বেন সেখানেই দেখতে পাবেন।
- [দি সি প্রোগ্রামিং ল্যাংগুয়েজ, ভলিউম ২](https://www.amazon.com/Programming-Language-Brian-W-Kernighan/dp/0131103628)
- এটি একটি সংক্ষিপ্ত বই, তবে এটি আপনাকে সি ভাষার উপর একটি দুর্দান্ত দক্ষতা দেবে এবং আপনি যদি এটি একটু অনুশীলন করেন তবে আপনি দ্রুত দক্ষ হয়ে উঠবেন। সি বুঝতে পারলে আপনি প্রোগ্রাম এবং মেমরি কিভাবে কাজ করে তা বুঝতে পারবেন।
- আপনাকে বইটির গভীরে যেতে হবে না (বা এমনকি এটি শেষ করতে হবে না)। শুধু যেটুকু পড়লে আপনি সি-তে পড়তে এবং লিখতে স্বাচ্ছন্দ্য বোধ করেন সেটুকু পড়ুন।
- [বইটির প্রশ্নের উত্তর](https://github.com/lekkas/c-algorithms)
- পাইথন: আধুনিক এবং খুব অভিব্যক্তিপূর্ণ, আমি এটি শিখেছি কারণ এটি খুব দরকারী এবং আমাকে একটি সাক্ষাত্কারে কম কোড লিখতে সাহায্য করে।
এগুলো আমার পছন্দ। কিন্ত আপনার পছন্দ অনুযায়ী আপনি শিখবেন।
আপানার হয়তো লাগবে নাহ কিন্ত এখানে নতুন কিছু ল্যাংগুয়েজ শেখার কিছু ওয়েবসাইট দেওয়া হলো:
- [Exercism](https://exercism.org/tracks)
- [Codewars](http://www.codewars.com)
- [Codility](https://codility.com/programmers/)
- [HackerEarth](https://www.hackerearth.com/)
- [Sphere Online Judge (spoj)](http://www.spoj.com/)
- [Codechef](https://www.codechef.com/)
- [Codeforces](https://codeforces.com/)
### আপনার কোডিং সাক্ষাত্কার এর জন্য
সাক্ষাত্কারের কোডিং অংশটি করতে আপনি যে ভাষাতে স্বাচ্ছন্দ্য বোধ করেন তা ব্যবহার করতে পারেন, তবে বড় কোম্পানিগুলির জন্য, এইগুলি ভালো পছন্দ:
- সি++
- জাভা
- পাইথন
আপনি এগুলি ব্যবহার করতে পারেন তবে প্রথমে পড়তে পারেন। সতর্কতা থাকতে পারে:
- জাভাস্ক্রিপ্ট
- রুবি
এখানে একটি নিবন্ধটি আমি সাক্ষাত্কারের জন্য একটি ভাষা বেছে নেওয়ার বিষয়ে লিখেছি: [কোডিং সাক্ষাত্কারের জন্য একটি ভাষা বেছে নিন](https://startupnextdoor.com/important-pick-one-language-for-the-coding-interview/)
এই মূল নিবন্ধটি আমার পোস্টের উপর ভিত্তি করে ছিল: http://blog.codingforinterviews.com/best-programming-language-jobs/
আপনার ভাষায় খুব স্বাচ্ছন্দ্য বোধ করা এবং বুদ্ধিমান হওয়া দরকার।
পছন্দ সম্পর্কে আরও পড়ুন:
-http://www.byte-by-byte.com/choose-the-right-language-for-your-coding-interview/
-http://blog.codingforinterviews.com/best-programming-language-jobs/
[ভাষার সংস্থানগুলি এখানে দেখুন](প্রোগ্রামিং-ভাষা-সংস্করণ.এমডি)
আপনি নীচে অন্তর্ভুক্ত কিছু সি, সি ++ এবং পাইথন শিখতে দেখবেন, কারণ আমি শিখছি। কয়েকটি বই জড়িত রয়েছে, নীচে দেখুন।
## বইএর তালিকা
আমি যা ব্যবহার করেছি তার চেয়ে এটি একটি সংক্ষিপ্ত তালিকা। এটি আপনার সময় বাঁচাতে সংক্ষেপে বর্ণিত।
### সাক্ষাত্কার প্রস্তুতি
- [প্রোগ্রামিং সাক্ষাত্কারগুলি উদ্ভাসিত হয়েছে: সাক্ষাত্কারের মাধ্যমে আপনার কোডের কোডিং, র্থ সংস্করণ](https://www.amazon.com/Programming-Interviews-Exposed-Through-Interview/dp/111941847X/)
আপনি এগুলি ও ব্যাবহার করতে পারেন তবে আগে থেকে জেনে নিবেন কারন নানা রকম সমস্যায় ভুগতে পারেন:
- জাভা স্ক্রিপ্ট
- রুবি
এখানে আমার লেখা একটি আর্টিকেল আছে যেখানে সাক্ষাত্কারের জন্য ল্যাংগুয়েজ নিয়ে আমি বলেছি।
[Pick One Language for the Coding Interview](https://startupnextdoor.com/important-pick-one-language-for-the-coding-interview/)
এই আর্টিকেল এর উপর ভিত্তি করী আমি আমার আর্টিকেলটি লিখেছিলাম: http://blog.codingforinterviews.com/best-programming-language-jobs/
আপনাকে ওই ল্যাংগুয়েজ এ খুব ই দক্ষ ও সাচ্ছন্দবোধ করতে হবে।
ভাষা পছন্দ সম্পর্কে আরো জানুন:
- [আপনার কোডিং সাক্ষাত্কারের জন্য সঠিক ল্যাংগুয়েজ সম্পর্কে জানুন](http://www.byte-by-byte.com/choose-the-right-language-for-your-coding-interview/)
[ভাষা অনুসারে রিসোর্স এখানে পাবেন](programming-language-resources.md)
## ডাটা স্ট্রাকচার এবং এ্যালগোরিদম এর বইসমুহ
এই বইটি কম্পিউটার সাইন্সের জন্য আপনার ভিত্তি তৈরি করবে।
আপনি স্বাচ্ছন্দ্য বোধ করবেন শুধুমাত্র এমন একটি ভাষা বেছে নিন। আপনি অনেক পড়তে এবং কোডিং করতে হবে।
### সি
- [Algorithms in C, Parts 1-5 (Bundle), 3rd Edition](https://www.amazon.com/Algorithms-Parts-1-5-Bundle-Fundamentals/dp/0201756080)
- বেসিক, ডাটা স্ট্রাকচার, সোর্টিং, সার্চিং, গ্রাফ এবং অ্যালগোরিদম
### পাইথন
- [Data Structures and Algorithms in Python](https://www.amazon.com/Structures-Algorithms-Python-Michael-Goodrich/dp/1118290275/)
- লেখক Goodrich, Tamassia, Goldwasser
- আমি এই বইটি খুব পছন্দ করেছি। আমি এটার সব পড়েছি
- Pythonic code
- এই বই এর উপর লেখা আমার বুক রিপোর্ট: https://startupnextdoor.com/book-report-data-structures-and-algorithms-in-python/
### জাভা
আপনার পছন্দ:
- Goodrich, Tamassia, Goldwasser
- [Data Structures and Algorithms in Java](https://www.amazon.com/Data-Structures-Algorithms-Michael-Goodrich/dp/1118771338/)
- Sedgewick and Wayne:
- [Algorithms](https://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X/)
- ফ্রি কোর্সেরা (Coursera) কোর্স যা এই বইতে পড়ানো হয় তা নিয়ে (বই এর লেখকেরা শেখান!):
- [Algorithms I](https://www.coursera.org/learn/algorithms-part1)
- [Algorithms II](https://www.coursera.org/learn/algorithms-part2)
### সি++
আপনার পছন্দ:
- Goodrich, Tamassia, and Mount
- [Data Structures and Algorithms in C++, 2nd Edition](https://www.amazon.com/Data-Structures-Algorithms-Michael-Goodrich/dp/0470383275)
- Sedgewick and Wayne
- [Algorithms in C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching](https://www.amazon.com/Algorithms-Parts-1-4-Fundamentals-Structure/dp/0201350882/)
- [Algorithms in C++ Part 5: Graph Algorithms](https://www.amazon.com/Algorithms-Part-Graph-3rd-Pt-5/dp/0201361183/)
## ইন্টারভিউ এর প্রস্তুতি এর বইসমুহ
আপনি এতগুলো কিনতে হবে না। সত্যি বলতে "ক্রাকিং দ্য কোডিং ইন্টারভিউ" সম্ভবত যথেষ্ট, তবে আমি নিজে আরও অনুশীলন এর জন্য আরও কিছু কিনেছি। কিন্তু আমি সবসময় খুব বেশি করি।
আমি এই দুটি কিনেছিলাম। এগুলো থেকে আমার প্রচুর প্রাক্টিস হয়েছে
- [Programming Interviews Exposed: Coding Your Way Through the Interview, 4th Edition](https://www.amazon.com/Programming-Interviews-Exposed-Through-Interview/dp/111941847X/)
- সি ++ এবং জাভাতে উত্তর
- কোডিং সাক্ষাত্কার ক্র্যাক করার জন্য এটি একটি ভাল প্রস্তুতি
- খুব বেশি কঠিন নয়, বেশিরভাগ সমস্যাগুলি আপনি একটি সাক্ষাত্কারে যা দেখবেন তার চেয়ে সহজ হতে পারে (আমি যা পড়েছি তা থেকে)
- [কোডিং সাক্ষাত্কার ক্র্যাকিং, 6th ষ্ঠ সংস্করণ](http://www.amazon.com/Cracking-Coding-Interview-6th-Programming/dp/0984782850/)
- জাভা উত্তর
- [Cracking the Coding Interview, 6th Edition](http://www.amazon.com/Cracking-Coding-Interview-6th-Programming/dp/0984782850/)
- জাভাতে উত্তর
<details>
<summary>আপনার যদি অতিরিক্ত পরিমাণে সময় থাকে তবে </summery>
একটি নির্বাচন করুন:
### আপনার যদি অতিরিক্ত পরিমাণে সময় থাকে তবে
একটি পছন্দ করুন:
- [প্রোগ্রামিং সাক্ষাত্কারের উপাদানগুলি (সি ++ সংস্করণ)](https://www.amazon.com/Elements-Programming-Interviews-Insiders-Guide/dp/1479274836)
- প্রোগ্রামিং সাক্ষাত্কারের উপাদানসমূহ (জাভা সংস্করণ)-[বই](https://www.amazon.com/Elements-Programming-Interviews-Python-Insiders/dp/1537713949/)-[কোম্পানির প্রকল্প-বইয়ের প্রতিটি সমস্যার জন্য পদ্ধতি স্টাব এবং টেস্ট কেস](https://github.com/gardncl/elements-of-programming-interviews)
- [প্রোগ্রামিং সাক্ষাত্কারের উপাদানগুলি (পাইথন সংস্করণ)](https://www.amazon.com/Elements-Programming-Interviews-Python-Insiders/dp/1537713949/)
- [প্রোগ্রামিং সাক্ষাত্কারের উপাদানসমূহ (জাভা সংস্করণ)](https://www.amazon.com/Elements-Programming-Interviews-Java-Insiders/dp/1517435803/)- [সহায়ক প্রোজেক্ট-বইয়ের প্রতিটি সমস্যার জন্য মেথড স্টাব এবং টেস্ট কেস](https://github.com/gardncl/elements-of-programming-interviews)
</details>
### কম্পিউটার আর্কিটেকচার
- [গ্রেট কোড লিখুন: খণ্ড ১: মেশিনটি বোঝা] (https://www.amazon.com/Write-Great-Code-Unders સમજ-ম্যাচাইন / ডিপি / 1593270038)
-বইটি 2004 সালে প্রকাশিত হয়েছিল এবং এটি কিছুটা পুরানো হলেও সংক্ষেপে কম্পিউটার বোঝার জন্য এটি এক ভয়ঙ্কর উত্স।
-লেখক আবিষ্কার করেছেন [এইচএলএ] (https://en.wikedia.org/wiki/High_Level_As आशीर्वाद), তাই লবণের দানা দিয়ে এইচএলএ-তে উল্লেখ এবং উদাহরণ নিন। বিস্তৃতভাবে ব্যবহৃত হয় না, তবে সমাবেশটি কেমন লাগে তার শালীন উদাহরণ।
-এই অধ্যায়গুলি আপনাকে একটি সুন্দর ভিত্তি দেওয়ার জন্য মূল্যবান:
<details>
<summary>...... </summary>
-দ্বিতীয় অধ্যায়-সংখ্যা উপস্থাপনা
-অধ্যায় 3-বাইনারি গাণিতিক এবং বিট অপারেশন
-অধ্যায় 4-ভাসমান-পয়েন্ট প্রতিনিধিত্ব
-অধ্যায় 5-চরিত্র উপস্থাপনা
-অধ্যায় 6-মেমরি সংস্থা এবং অ্যাক্সেস
-অধ্যায় 7-সম্মিলিত ডেটা টাইপ এবং মেমরি অবজেক্টস
-অধ্যায় 9-সিপিইউ আর্কিটেকচার
-অধ্যায় 10-নির্দেশ সেট আর্কিটেকচার
-অধ্যায় 11-মেমরি আর্কিটেকচার এবং সংস্থা
</details>
###ভাষা নির্দিষ্ট
** আপনাকে সাক্ষাত্কারের জন্য একটি ভাষা চয়ন করতে হবে (উপরে দেখুন) * **
ভাষা অনুসারে আমার প্রস্তাবনা এখানে রইল। আমার কাছে সমস্ত ভাষার জন্য সংস্থান নেই। আমি সংযোজন স্বাগত জানাই।
আপনি যদি এর মধ্যে একটির মাধ্যমে পড়ে থাকেন তবে আপনার কোডিং সমস্যাগুলি শুরু করতে হবে এমন সমস্ত ডেটা স্ট্রাকচার এবং অ্যালগরিদম জ্ঞান থাকা উচিত।
** আপনি যদি কোনও পর্যালোচনা না চান তবে আপনি এই প্রকল্পের সমস্ত ভিডিও বক্তৃতা ** এড়িয়ে যেতে পারেন।
[অতিরিক্ত ভাষা-নির্দিষ্ট সংস্থানগুলি এখানে]] (প্রোগ্রামিং-ভাষাভাষা-উত্স.এমডি)
### সি++
<details>
<summary>সি++ </summary>
আমি এই দুটি পড়িনি, তবে সেডজেউইক দ্বারা তারা উচ্চ মানের এবং রচিত। সে দুর্দান্ত।
- [সি++ এ অ্যালগরিদম, অংশ 1-4: মূলসূত্র, ডেটা স্ট্রাকচার, বাছাই, অনুসন্ধান করা] (https://www.amazon.com/Algorithms-Partts-1-4-Fundamentals-কাঠামো / dp/0201350882/)
- [সি ++ পার্ট 5 এ অ্যালগরিদম: গ্রাফ অ্যালগরিদম] (https://www.amazon.com/Algorithms-Part-Graph-3rd-Pt-5/dp/0201361183/)
আপনার যদি সি ++ এর জন্য আরও ভাল প্রস্তাবনা থাকে তবে দয়া করে আমাকে জানান। একটি বিস্তৃত রিসোর্স খুঁজছি।
</details>
###জাভা
<details>
<summary>জাভা </summary>
- [অ্যালগোরিদম (সেডজউইক এবং ওয়েইন)] (https://www.amazon.com/Algorithms-4th-রবার্ট-সেজজউইক / dp/032157351X/)
-পাঠ্যক্রমের বইয়ের সামগ্রী (এবং সেডজউইক!) সহ ভিডিও:
-[অ্যালগোরিদম আই] (https://www.coursera.org/learn/algorithms-part1)
-[অ্যালগোরিদম II] (https://www.coursera.org/learn/algorithms-part2)
বা:
- [জাভাতে ডেটা স্ট্রাকচারস এবং অ্যালগরিদম] (https://www.amazon.com/Data-Structures-Algorithms-Michael-গুডরিচ/dp/1118771338/)
- গুডরিচ, তমাসিয়া, গোল্ডওয়াসার দ্বারা
- ইউসি বার্কলে সিএস ইন্ট্রো কোর্সের জন্য textচ্ছিক পাঠ্য হিসাবে ব্যবহৃত
- নীচে পাইথন সংস্করণে আমার বইয়ের প্রতিবেদনটি দেখুন। এই বইটিতে একই বিষয় রয়েছে।
</details>
### পাইথন
<details>
<summary>পাইথন </summary>
- [পাইথনে ডেটা স্ট্রাকচারস এবং অ্যালগরিদম] (https://www.amazon.com/Structures-অ্যালগোরিদমস-পাইথন-মিশেল-গুডরিচ / ডিপি / 1118290275/)
- গুডরিচ, তমাসিয়া, গোল্ডওয়াসার দ্বারা
- আমি এই বই পছন্দ। এটি সব কিছুর আওতায় পড়ে।
- পাইথোনিক কোড
- আমার জ্বলজ্বল বইয়ের প্রতিবেদন: https://startupnextdoor.com/book-report-data-structures-এবং-algorithms-in-python/
</details>
## আপনি শুরু করার আগে
## আমার ভুল গুলো করবেন নাহ
এই তালিকাটি কয়েক মাস ধরে বেড়েছে, এবং হ্যাঁ, এটি একধরণের হাতছাড়া হয়ে যায়।
এখানে আমি কিছু ভুল করেছি যাতে আপনার আরও ভাল অভিজ্ঞতা হয়।
এখানে আমি কিছু ভুল করেছি যাতে আপনার আরও ভাল অভিজ্ঞতা হয়। এবং আপান্র অনেক সময় ও বাঁচবে।
### 1. আপনি সব মনে রাখবেন না
### 1. আপনি সব মনে রাখতে পারবেন না
আমি কয়েক ঘন্টা ভিডিও দেখেছি এবং প্রচুর নোট নিয়েছি এবং কয়েক মাস পরে এমন অনেক কিছুই ছিল যা আমি মনে করি না। আমি যেতে 3 দিন কাটিয়েছি
আমার নোটগুলি এবং ফ্ল্যাশকার্ডগুলি তৈরি করে যাতে আমি পর্যালোচনা করতে পারি।
আমি কয়েক ঘন্টা ভিডিও দেখেছি এবং প্রচুর নোট নিয়েছি এবং কয়েক মাস পরে এমন অনেক কিছুই ছিল যা আমি মনে রাখতে পারিনি। আমি যেতে ৩ দিন কাটিয়েছি আমার নোটগুলি এবং ফ্ল্যাশকার্ডগুলি তৈরি করে যাতে আমি পর্যালোচনা করতে পারি। কিন্ত আমার এগুলোর দরকার ছিলো নাহ।
দয়া করে পড়ুন যাতে আপনি আমার ভুল করেন না:
দয়া করে পড়ুন যাতে আপনি আমার ভুল না করেন:
[কম্পিউটার বিজ্ঞান জ্ঞান পুনরুদ্ধার করা](https://startupnextdoor.com/retaining-computer-s विज्ञान-জ্ঞান)
[কম্পিউটার বিজ্ঞান এর জ্ঞান মনে রাখা](https://startupnextdoor.com/retaining-computer-science-knowledge/)
### 2. ফ্ল্যাশকার্ড ব্যবহার করুন
সমস্যা সমাধানের জন্য, আমি একটি সামান্য ফ্ল্যাশকার্ডস সাইট তৈরি করেছি যেখানে আমি 2 ধরণের ফ্ল্যাশকার্ড যুক্ত করতে পারি: সাধারণ এবং কোড।
সমস্যা সমাধানের জন্য, আমি একটি সামান্য ফ্ল্যাশকার্ডস সাইট তৈরি করেছি যেখানে আমি ২ ধরণের ফ্ল্যাশকার্ড যুক্ত করতে পারি: সাধারণ এবং কোড।
প্রতিটি কার্ডের আলাদা বিন্যাস রয়েছে।
আমি একটি মোবাইল প্রথম ওয়েবসাইট তৈরি করেছি যাতে আমি যেখানেই থাকি না কেন আমার ফোন এবং ট্যাবলেটে পর্যালোচনা করতে পারি।
বিনামূল্যে নিজের তৈরি করুন:
- [ফ্ল্যাশকার্ডস সাইটের রেপো](https://github.com/jwasham/computer-science-flash-cards)
- [ফ্ল্যাশকার্ডস সাইটের রিপো](https://github.com/jwasham/computer-science-flash-cards)
**আমি আমার ফ্ল্যাশকার্ডগুলি ব্যবহার করার পরামর্শ দিই না।** অনেকগুলি আছে এবং তাদের মধ্যে অনেকগুলি তুচ্ছ বিষয় যা আপনার প্রয়োজন নেই.
তবু যদি আপনি আপনি আমার কথা শুনতে নাহ চান। এখানে ফ্ল্যাশ কার্ড গুলি পাবেন:
- [আমার ফ্ল্যাশ কার্ডের ডাটাবেস (পুরাতন-1200 কার্ড)](https://github.com/jwasham/computer-science-flash-cards/blob/main/cards-jwasham.db):
- [আমার ফ্ল্যাশ কার্ডের ডাটাবেস (নতুন-1800 কার্ড)](https://github.com/jwasham/computer-science-flash-cards/blob/main/cards-jwasham-extreme.db):
@ -500,6 +460,63 @@
### 4. ফোকাস করুন
অনেকগুলি বিভ্রান্তি রয়েছে যা মূল্যবান সময় নিতে পারে। ফোকাস এবং ঘনত্ব শক্ত।
- [এ বি সি: সর্বদা কোডিং থাকুন](https://medium.com/always-be-coding/abc-always-be-coding-d5f8051afce2#.4heg8zvm4)
- [হোয়াইটবোর্ডিং](https://medium.com/@dpup/whiteboarding-4df873dbba2e#.hf6jn45g1)
- [প্রোগ্রামিং সাক্ষাত্কারের সময় কার্যকর হোয়াইটবোর্ডিং](http://www.coderust.com/blog/2014/04/10/Effective-Witeboarding-during-programming-interviews/)
- [টেক রিক্রুটিং কে ক্ষমা করা](https://www.youtube.com/watch?v=N233T0epWTs)
- কোডিং সাক্ষাত্কারটি ক্র্যাক করা 1:
- [গেইল এল ম্যাকডোয়েল-কোডিং সাক্ষাত্কারের ক্র্যাকিং (ভিডিও)](https://www.youtube.com/watch?v=rEJzOhC5ZtQ)
- [লেখক গেইল লাকম্যান ম্যাকডোভেল (ভিডিও) এর সাথে কোডিং সাক্ষাত্কার ক্র্যাক করা](https://www.youtube.com/watch?v=aClxtDcdpsQ)
- বিগ 4 এ কীভাবে চাকরী পাবেন?
- [বিগ 4 এ কীভাবে চাকরী পাবেন-অ্যামাজন, ফেসবুক, গুগল এবং মাইক্রোসফ্ট (ভিডিও)](https://www.youtube.com/watch?v=YJZCUhxNCv8)
- প্রস্তুতি কোর্স:
- [সফটওয়্যার ইঞ্জিনিয়ার সাক্ষাত্কার প্রকাশিত (বেতনভুক্ত কোর্স)](https://www.udemy.com/software-engineer-interview-unleashed):
-একজন প্রাক্তন গুগল সাক্ষাত্কারকারীর থেকে কীভাবে নিজেকে সফটওয়্যার ইঞ্জিনিয়ার সাক্ষাত্কারের জন্য প্রস্তুত করবেন তা শিখুন।
- [ডেটা স্ট্রাকচার, অ্যালগরিদম এবং সাক্ষাত্কারের জন্য পাইথন! (প্রদত্ত কোর্স)](https://www.udemy.com/python-for-data-structures-algorithms-and-interviews/):
-পাইথন কেন্দ্রিক সাক্ষাত্কার প্রস্তুতির কোর্সে ডেটা স্ট্রাকচার, অ্যালগরিদম, মক সাক্ষাত্কার এবং আরও অনেক কিছু রয়েছে।
- [পাইথন ব্যবহার করে ডেটা স্ট্রাকচার এবং অ্যালগরিদমগুলিতে ইন্ট্রো! (উদাসীনতা মুক্ত কোর্স)](https://www.udacity.com/cورس/data-structures-এবং-algorithms-in-python--ud513):
-একটি ফ্রি পাইথন কেন্দ্রিক ডেটা স্ট্রাকচার এবং অ্যালগরিদম কোর্স।
- [ডেটা স্ট্রাকচার এবং অ্যালগোরিদম ন্যানোডগ্রি! (উদাস্তিটি ন্যানোডগ্রি প্রদান করেছে)](https://www.udacity.com/course/data-structures-এবং-algorithms-nanodegree--nd256):
-100 টিরও বেশি ডেটা স্ট্রাকচার এবং অ্যালগরিদম অনুশীলন এবং আপনাকে একটি সাক্ষাত্কারের জন্য এবং কাজের সুযোগে দৃশ্যের জন্য আপনাকে প্রস্তুত করতে ডেডিকেটেড পরামর্শদাতার দিকনির্দেশ দিয়ে অনুশীলন পান।
### সাক্ষাত্কার প্রস্তুতি
## বইএর তালিকা
আমি যা ব্যবহার করেছি তার চেয়ে এটি একটি সংক্ষিপ্ত তালিকা। এটি আপনার সময় বাঁচাতে সংক্ষেপে বর্ণিত।
### কম্পিউটার আর্কিটেকচার
- [গ্রেট কোড লিখুন: খণ্ড ১: মেশিনটি বোঝা] (https://www.amazon.com/Write-Great-Code-Unders સમજ-ম্যাচাইন / ডিপি / 1593270038)
-বইটি 2004 সালে প্রকাশিত হয়েছিল এবং এটি কিছুটা পুরানো হলেও সংক্ষেপে কম্পিউটার বোঝার জন্য এটি এক ভয়ঙ্কর উত্স।
-লেখক আবিষ্কার করেছেন [এইচএলএ] (https://en.wikedia.org/wiki/High_Level_As आशीर्वाद), তাই লবণের দানা দিয়ে এইচএলএ-তে উল্লেখ এবং উদাহরণ নিন। বিস্তৃতভাবে ব্যবহৃত হয় না, তবে সমাবেশটি কেমন লাগে তার শালীন উদাহরণ।
-এই অধ্যায়গুলি আপনাকে একটি সুন্দর ভিত্তি দেওয়ার জন্য মূল্যবান:
<details>
<summary>...... </summary>
-দ্বিতীয় অধ্যায়-সংখ্যা উপস্থাপনা
-অধ্যায় 3-বাইনারি গাণিতিক এবং বিট অপারেশন
-অধ্যায় 4-ভাসমান-পয়েন্ট প্রতিনিধিত্ব
-অধ্যায় 5-চরিত্র উপস্থাপনা
-অধ্যায় 6-মেমরি সংস্থা এবং অ্যাক্সেস
-অধ্যায় 7-সম্মিলিত ডেটা টাইপ এবং মেমরি অবজেক্টস
-অধ্যায় 9-সিপিইউ আর্কিটেকচার
-অধ্যায় 10-নির্দেশ সেট আর্কিটেকচার
-অধ্যায় 11-মেমরি আর্কিটেকচার এবং সংস্থা
</details>
## আপনি কি কভার দেখতে পাবেন না