আপনি কি একজন ওয়েব ডেভলপার (Web Developer) হতে চান?

আপনি কি একজন ওয়েব ডেভলপার (Web Developer) হতে চান? 

আপনি কি একজন ওয়েব ডেভলপার (Web Developer) হতে চান? আমি আপনাকে বলব ওয়েব ডেভলপার (Web Developer) হওয়ার জন্য কোন কোন বিষয়গুলো আপনাকে শিখতে হবে? ওয়েব ডেভলপার হওয়ার পর কি কি বেনিফিট এবং অপরচুনিটিস আপনার জন্য ওপেন হয়ে যাবে।

Web Developer

ওয়েব ডেভলপার কি করে থাকে?

বেসিকালি ওয়েব ডেভলপাররা (Web Developer) ওয়েবঅ্যাপস  বা ওয়েবসাইট তৈরী করে থাকে। আপনি অনলাইনে যত ধরনের ওয়েবসাইট ভিজিট করছেন সবগুলিই ওয়েব অ্যাপস বা ওয়েবসাইট।

যেমনঃ prothom-alo.com, facebook.com, youtube.com, daraz.com ইত্যাদি।

ওয়েবসাইট এ মূলত দু'টি অংশ থাকে।

  1. ডিজাইন (Design)
  2. ডেভলপমেন্ট (Development)

মূলত ব্যবহারকারীরা সাধারণত ডিজাইন দেখতে পায়- ডেভেলপমেন্ট দেখতে পায় না। সবচেয়ে কমন এক্সাম্পল হচ্ছে ইউটিউব ইউটিউব ভিডিও প্লেয়ার টা দেখতে কেমন, লাইক বাটন গুলো দেখতে কেম , কমেন্ট গুলো দেখতে কেমন এগুলো ওয়েব ডিজাইন এর কাজ।


 কিন্তু আপনি যখন কমেন্ট করছেন, কমেন্টগুলো পড়ছেন,  কমেন্ট গুলো সেভ হয়ে আছে  একাউন্ট এ ,লাইকগুলো বেড়ে গেছে  এটা হচ্ছে ডেভলপমেন্ট । আপনি যখন লাইক করতেছে এইটা youtube-এর ডাটাবেসে সেভ হয়ে থাকতেছে।

ডাটাবেজ  হচ্ছে মেমোরি কার্ডের মত। মেমোরি কার্ডে যেমন আমরে গান পিকচার ভিডিও সেভ করে রাখতে পারি, ওয়েবসাইট এর কনটেন্ট গুলো ডাটাবেজে গিয়ে সেভ হয়ে থাকে। সাইটের কমেন্টগুলো ডাটাবেজে গিয়েছে সেভ হয়ে থাকে। বেসিক ব্যবহারকারী ইউজাররা ওয়েব অ্যাপ্লিকেশন অ্যাপ টির উপরের পাট দেখে থাকে। কিন্তু লাইক কমেন্ট এগুলো যে সেভ হয়ে থাকে ডাটাবেজে এগুলো হচ্ছে ডেভলপমেন্ট এর কাজ। যেটা দেখা যায় না।

এখন আমরা জানবো কি কি ধরনের ওয়েব ডেভলপার হয়ে থাকে। মূলত তিন ধরনের ওয়েব ডেভলপার হয়ে থাকে।

  1. ফ্রন্ট-এন্ড (front-end) ডেভলপার
  2. ব্যাক-এন্ড (back-end) ডেভলপার
  3. ফুল স্ট্যাক (full stack) ডেভলপার

ফ্রন্ট-এন্ড (front-end) ওয়েব ডেভলপমেন্টঃ

ফ্রন্ট-এন্ড ওয়েব ডেভলপাররা মূলত ডিজাইনার, তারা অ্যাপ বা ওয়েবসাইট ডিজাইন করে থাকে ফটোশপ,ইলাস্ট্রেটর অ্যাপ ব্যবহার করার মাধ্যমে । এবং সেই ডিজাইনকে তারা এইচটিএমএল সিএসএস জাভাস্ক্রিপ্ট ব্যবহার করার মাধ্যমে কনভার্ট করে। এই ওয়েবসাইটটি ফাংশনাল ওয়েবসাইট না। এটি মূলত এইচটিএমএল (HTML), সিএসএস(CSS) জাভাস্ক্রিপ্ট(Java Script) ব্যবহার করে শুধুমাত্র স্ট্যাটিক পেজ তৈরি করা হয়েছে। এটি ফাংশনাল না অর্থাৎ এখানে যে কন্টাক্ট ফর্ম কি আছে এখান থেকে কখনো এসএমএস আদান-প্রদান করা যাবে না।

ব্যাক-এন্ড (back-end) ওয়েব ডেভলপমেন্টঃ

ব্যাক-এন্ড(back-end) ওয়েব ডেভলপারদের ও ফ্রন্ট-এন্ড ডেভলপমেন্ট নলেজ থাকতে হয়। ব্যাক-এন্ড ওয়েব ডেভলপাররা সাধারণত ডিজাইনের পার্ট টি করেনা। তারা ফ্রন্ট-এন্ড ডেভলপারদের কাছ থেকে  স্ট্যাটিক কোড গুলো নিয়ে সেই ডিজাইনটিকে ডায়নামিক করে। 

অর্থাৎ একটি ওয়ার্কিং ওয়েবসাইট বা অ্যাপ এ পরিণত করে। যেটির একটা এডমিন প্যানেল থাকে যেখান থেকে একটি ওয়েবসাইটের যাবতীয় কনটেন্ট পরিবর্তন করার একটি সুযোগ থাকে। এই সিচুয়েশনে একজন ব্যবহারকারীকে ওয়েব সাইটের কনটেন্ট গুলো পরিবর্তন করতে ওয়েবসাইটের কোডিংয়ের পরিবর্তন করতে হয় না। একটা এডমিন প্যানেল থাকে যেখান থেকে সহজে পরিবর্তন করতে পারে । 

অর্থাৎ ব্যাক-এন্ড (back-end) ডেভলপারদের কাজ হচ্ছে ফ্রন্ট-এন্ড ডেভলপারদের কাছ থেকে স্ট্যাটিক  কোডিং নিয়ে একটি ফুল ফাংশনাল ওয়েবসাইটে বা ওয়েব এপ্লিকেশন তৈরি করা।

ফুল স্ট্যাক (full stack) ওয়েব ডেভলপমেন্টঃ

ফুল স্ট্যাক ওয়েব ডেভলপার মূলত অলরাউন্ডার তারা ডিজাইন এবং ডেভেলপমেন্ট দুটি করে থাকে। একটা ওয়েবসাইট অথবা একটি মোবাইল অ্যাপ এর যাবতীয় কাজ তারা করে থাকে। তাদের সবদিকে নলেজ থাকে তাই তারা সবগুলো কাজ একাই করে থাকে। 

যেখানে একজন ফ্রন্ট-এন্ড ডেভলপার শুধুমাত্র ডিজাইন এর কাজ  বা স্ট্যাটিক সাইট তৈরি করে।এবং সে ডিজাইন কে ডায়নামিক করে তোলে ব্যাক-এন্ড ডেভলপাররা। কিন্তু একজন ফুল স্ট্যাক ওয়েব ডেভলপার ফ্রন্ট-এন্ড এবং ব্যাক-এন্ড দুটি কাজেই করতে পারে।

কোন কাজটি শিখবেন?

এখন আপনার মনে প্রশ্ন আসতে পারে কোন কাজটি শিখবেন ? ফ্রন্ট-এন্ড (front-end) ওয়েব ডেভলপমেন্ট না ব্যাক-এন্ড (back-end) ওয়েব ডেভলপমেন্ট নাকি ফুল স্ট্যাক (full stack) ওয়েব ডেভলপমেন্ট শিখব। আমি বলব আপনি ফুল স্ট্যাক ওয়েব ডেভলপমেন্ট শিখবেন বা ফুল স্ট্যাক ওয়েব ডেভলপার হবেন।

কিন্তু আপনি যদি একজন ফুল স্ট্যাক ওয়েব ডেভলপার হয়ে থাকেন তাহলে অবশ্যই আপনার উপর একটু চাপ বেশি পড়বে কারণ সমস্ত কাজ আপনাকে করতে হবে। তাই নিজের চাপ কমাতে হলে আপনি ফ্রন্ট-এন্ড ডেভলপার এর হেল্প নিতে পারেন । একজন ডেভলপার শুধু ডিজাইনের কাজটি করে আপনাকে দেবে এবং আপনি সেই ডিজাইন টি ব্যাক-এন্ড (back-end) এ কাজ করে ডায়নামিক করে তুলবেন। 

ওয়েব ডেভলপার হওয়ার জন্য কোন কোন প্রোগ্রামিং ল্যাঙ্গুয়েজ গুলো জানতে হবে বা শিখতে হবে? 

যে কোন অ্যাপ বা ওয়েবসাইট তৈরি করা হয় কম্পিউটার প্রোগ্রামিং ল্যাঙ্গুয়েজ  ব্যবহার করে। শুরুতেই আপনাকে যেই ল্যাঙ্গুয়েজ শিখতে হবে সেটি হচ্ছে এইচটিএমএল।

  1. এইচটিএমএল (HTML)
  2. সিএসএস (CSS)
  3. জাভাস্ক্রিপ্ট জেকোয়েরি (Javascript or jquery)
  4. রেস্পন্সিভ  ডিজাইন ফান্ডামেন্টাল (Responsive design is fundamental)
  5. বুটসস্ট্রাপ (Bootstrap)
  6. সার্ভার সাইড স্ক্রিপ্টিং ল্যাঙ্গুয়েজ(PHP, RUBY, PYTHON, NODE-JS)
  7. ওয়াডপ্রেস অথবা লারাভেল (Wordpress or Laravel)
  8. গীট (Git)
  9. ইউ আই ইউ এক্স (UI/UX)
  10. বেসিক এসইও(SEO)

এইচটিএমএল(HTML):

একটি মার্কআপ ল্যাংগুয়েজ এটি দিয়ে মার্ক করা হয় কোথায় website এর হেডার হবে কোথায় ভোটার হবে কোথায় কমেন্ট সেকশন হবে, এই বিষয়গুলো মার্ক করা হয় এই এইচটিএমএল ব্যবহার করে। এইচটিএমএল শিখবেন এজন্যে যে ওয়েবসাইটের কোথায় কোন অংশটি ডিসপ্লে করা হবে।

সিএসএস(CSS): 

সিএসএস দিয়ে আপনি এইচটিএমএল(HTML) দিয়ে যে জায়গাগুলোকে মার্ক করেছেন সেই জায়গাগুলোকে ডিজাইন করবেন।  যেন ওয়েবপেজটি দেখতে অনেক সুন্দর হয়। একটি উদাহরণ দিয়ে যদি বলি,  একটি শরীরের কঙ্কাল এর মত কাজ করে এইচটিএমএল, অন্যদিকে সিএসএস (CSS) আমাদের শরীরের মাংসের মতো কাজ করে। যদি মানুষের জায়গায় শুধুমাত্র মানুষের কঙ্কাল থাকতো তাহলে বিষয়টি কেমন হতো। আশা করি বুঝতে পেরেছেন আসলে সিএসএস (CSS) কিভাবে কাজ করে। 

জাভাস্ক্রিপ্ট /জেকোয়েরি(Java script/Jquery): 

জাভাস্ক্রিট স্ক্রিপ্ট জেকোয়েরি(Jquery) দিয়ে একটি ওয়েব পেজকে ইন্টারেক্টিভ করে তোলা হয়। কথার হিসেবে ধরা যাক, যখন আপনার ফেসবুকে কোন একটা পোষ্টের মধ্যে কমেন্ট করে তখন আপনার কাছে যে নোটিফিকেশন আসে এটাই হচ্ছে ইন্টারঅ্যাক্টিভিটি। তারপর ধরুন একটি ওয়েবসাইটে একটি স্লাইড যুক্ত করবেন এই কাজটিও জাভাস্ক্রিট(Java Script) তৈরি করা হয়ে থাকে। হলে তো এসব বিষয়ের জন্য আপনি জাভাস্ক্রিপ্ট বা জেকোয়েরি শিখবেন। 

রেস্পন্সিভ  ডিজাইন ফান্ডামেন্টাল: 

একটি ওয়েবসাইট বা অ্যাপ্লিকেশন ব্যবহারকারীরা বিভিন্ন ধরনের ডিভাইস থেকে দেখতে পারে। তাই সকল ডিভাইসে যেন আমাদের ওয়েব সাইটের কনটেন্ট গুলো সুন্দর ভাবে দেখা যায় এবং ব্যবহার করা যায় সেজন্যই আপনি রেস্পন্সিভ ডিজাইন ফান্ডামেন্টাল শিখবেন। আপনি যখন একটি ওয়েবসাইটকে রেস্পন্সিভ করবেন তখন এটি যেকোন ডিভাইসেই সুন্দরভাবে দেখা যাবে।

বুটসস্ট্রাপ (Bootstrap):  

বুটস্ট্রাপ একটি জনপ্রিয় ফ্রন্ট-এন্ড (front-end) ফ্রেমওয়ার্ক। বিভিন্ন কোম্পানি অথবা আপনাকে বলতে পারে এই  ফ্রেমওয়ার্ক দিয়ে ডিজাইন করতে। তাই এই  ফ্রেমওয়ার্ক  টি আপনাকে ভালোভাবে শিখতে হবে।  এইচটিএমএ(HTML) ,  সিএসএস(CSS), জাভাস্ক্রিপ্ট(Java Script),জেকোয়েরি(Jquery)  শেখার পর এই পোস্টটি আপনার জন্য সহজ হয়ে যাবে।

এবার আপনাকে একটি Server-Side স্ক্রিপ্টিং ল্যাঙ্গুয়েজ শিখতে হবে যেন আপনার ডিজাইন করা ওয়েব অ্যাপ্লিকেশন বা ওয়েবসাইটটি আপনি ডায়নামিক করে তুলতে পারেন। অনেকগুলো সার্ভার সাইড স্ক্রিপ্টিং ল্যঙ্গুয়েজ রয়েছে। 

যেমন, পিএইচপি (PHP), রুবি (RUBY) ,পাইথন (PYTHON), node js ইত্যাদি।

আপনি যেকোন একটাকে পছন্দ করে সেটা নিয়ে কাজ শুরু করে দিবেন। একসঙ্গে সবগুলো নিয়ে কাজ করতে গেলে এলোমেলো হয়ে যাবে এবং সঠিকভাবে কাজটি শিখতে পারবেন না। 

উপরে যে কয়েকটি ল্যাঙ্গুয়েজ এর কথা বলছি এগুলো আপনি ধাপে ধাপে শেখার পর আপনি ওয়ার্ডপ্রেস অথবা লারাভেল শিখতে পারেন। ওয়াডপ্রেস (Wordpress) লারাভেল ( Laravel)  দিয়ে পৃথিবীর প্রায়.৪০% থেকে ৬০% ওয়েব সাইট তৈরি করা হয়ে থাকে।

ওয়ার্ডপ্রেস (WordPress): 

ওয়াডপ্রেস মূলত একটি কনটেন্ট ম্যানেজমেন্ট সিস্টেম(CMS)। ওয়ার্ডপ্রেস দিয়ে কোন প্রকার কোডিং ছাড়াই ডাইনামিক ওয়েবসাইট তৈরি করা সম্ভব। তাই দিন দিন এর জনপ্রিয়তা বেড়েই চলেছে।  

এখানে ডাইনামিক কাজগুলো করা হয় বিভিন্ন ধরনের প্লাগ-ইন (plugin)  ব্যবহার করে। অনলাইনে যত ধরনের ই-কমার্স(e-commerce) ওয়েবসাইট রয়েছে  সবগুলোই ও কমার্স ব্যবহার করে অপারেট করা হচ্ছে। এই WooCommerce ওয়াডপ্রেস এর একটি প্লাগিন ( plugin)। 

মার্কেটপ্লেসগুলোতে ওয়ার্ডপ্রেসের একটি অনেক বড় মার্কেট রয়েছে যেটার উপরে প্রচুর পরিমাণে কাজ পাওয়া যায় । তাই আমি বলবো পিএইচপি (PHP) শেখার পরে আপনি ওয়ার্ডপ্রেস ভালোভাবে শিখিয়ে ফেলুন।

লারাভেল( Laravel): 

লারাভেল ওয়ার্ডপ্রেস এর মত পিএসপির (PHP) একটি ফ্রেমওয়ার্ক। তবে ওয়ার্ডপ্রেসের তুলনায় মার্কেটপ্লেসে এর চাহিদা একটু কম।  আমি   বলবো আপনারা পিএইচপির পড়ে ওয়ার্ডপ্রেস শিখবেন।

গীট (Git): 

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

গীট (Git) শেখার আরেকটি সুবিধা হচ্ছে পৃথিবীর যেকোন প্রান্তে আপনি থাকেন না কেন,আপনি আপনার টিমের সাথে রিমোটলি কাজ করতে পারবেন। আর গীট (Git) না শিখলে আপনি যেখানে কাজ করতেছেন আপনাকে সেখানে বসেই কাজ করতে হবে, এতে করে আপনার অনেক সময় নষ্ট হয়ে যাবে। 

আর যদি গীট (Git) শেখা থাকে তাহলে আপনি যে কোন জায়গা থেকেই কাজ করতে পারবেন।তাই প্রোগ্রামিং করলে অবশ্যই আপনাকে গীট (Git) শিখে নিতে হবে।

ইউ আই ইউ এক্স (UI/UX): 

UI/UX হচ্ছে সফটওয়্যার এর ডিজাইন করা। UI এর পূর্ণ অর্থ হচ্ছে User interface আর UX এর পূর্ণ অর্থ হচ্ছে User Experience । অনেকে শুধুমাত্র UI/UX ডিজাইন টি শিখে থাকে কোডিং শেখে না। আবার অনেকে শুধুমাত্র  কোডিং শেখে ডিজাইন শিখে না। কিন্তু আপনি যদি একজন ডেডিকেটেড front-end ওয়েব ডেভলপার হতে চান তাহলে আপনাকে ডিজাইন এবং কোডিং দুটোই শিখতে হবে। 

বেসিক এসইও (SEO): 

এসইওর(SEO) পূর্ণ অর্থ হচ্ছে সার্চ ইঞ্জিন অপটিমাইজেশন। একটি ওয়েবসাইটকে গুগল রেংকিং এ আনতে হলে অবশ্যই সাইটটিকে এসইও(SEO) করতে হবে। আপনি যখন একটি ওয়েবসাইট বা 

অ্যাপ্লিকেশন ডিজাইন করতেছেন তখন আপনার অবশ্যই উচিত যে ডিজাইনটি করেছেন সেটি এসইও(SEO) ফ্রেন্ডলি করা। তাই এসইও(SEO) ফ্রেন্ডলি ট্র্যাকগুলো ওয়েবসাইটের কোথায় ব্যবহার করা হয়ে থাকে সে বিষয়ে আপনার একটি ভালো ধারণা থাকতে হবে, যেন ডিজাইনের সময় আপনি সেই এসইও(SEO) ফ্রেন্ডলি ট্যাগ গুলোএগুলো ব্যবহার করতে পারেন।

ওয়েব ডেভেলপার হওয়ার পর কি কি বেনিফিট আপনার জন্য অপেক্ষা করতেছে সে সম্পর্কে জেনে নিই।

  1. আপনি বিভিন্ন সফটওয়্যার কোম্পানি বা টেকনোলজি রিলেটেড কাজ করে এমন কোম্পানি তে চাকরি করতে পারবেন একজন ডেভেলপার হিসেবে।
  2. ফ্রিল্যান্সিং, আপনি চাইলে অনলাইন মার্কেটপ্লেসগুলোতে কাজ করতে পারবেন ফ্রিল্যান্সার হিসেবে। অনলাইন মার্কেটপ্লেসগুলোতে একজন ভালো এবং দক্ষ ফ্রিলান্সার এর চাহিদা প্রচুর রয়েছে। সে ক্ষেত্রে আপনার মেধা কি আপনি কাজে লাগাতে  পারেন।
  3.  আপনি নিজেই আপনার সফটওয়্যার কোম্পানি দিতে পারেন। যেখান থেকে আপনি বিভিন্ন কোম্পানির হয়ে কাজ করবেন অথবা বিভিন্ন ক্লায়েন্টের কাজ করে দিবেন সফটওয়্যার তৈরি করে দিবেন অথবা এপ্লিকেশন তৈরি করে দেবেন।
  4. আপনি চাইলে চাকরির পাশাপাশি একটি নির্ধারিত সময়ে করে নিতে পারেন, অনলাইন মার্কেটপ্লেস গুলোতে কাজ করার জন্য। এতে করে আপনার এক্সট্রা ইনকাম হতে থাকবে।
  5.  বর্তমানে বাংলাদেশে ফ্রীলান্সিং পেশাটিকে অনেকেই ভালোভাবে দেখে থাকে এবং অনেকে শিখতে আগ্রহী। তাই আপনি একটি প্রশিক্ষণ কেন্দ্র গড়ে তুলতে পারেন অথবা প্রশিক্ষণ কেন্দ্রের  প্রশিক্ষক হিসেবে কাজ করতে পারেন।

আজকের এই লেখাটি শেষ করার আগে আমি আর একটি কথা বলতে চাই। আপনারা এইচটিএমএল(HTML),সিএসএস(CSS),জাভাস্ক্রিপ্ট(javascript),জেকোয়েরি(jquery) শেখার পরে অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং শেখার আগে অবশ্যই সি (C) প্রোগ্রামিং শিখে নিবেন। কারণ সি (C) প্রোগ্রাম হচ্ছে প্রোগ্রামিং অফ মাদার লেঙ্গুয়েজ

সবাই আর্টিকেলটি পড়ে কিছুটা Web Developer বা Web Development  এর ধারণা পেলে আর্টিকেলটি শেয়ার করবেন এবং কোথাও বুঝতে সমস্যা হলে নিচে কমেন্ট করে জানাবেন, আপনারা কি ধরনের পোস্ট পড়তে চান কোমেন্টে জানাবেন অবশ্যই। সবাইকে ধন্যবাদ। 
হোম এ ফিরে যেতে এখানে ক্লিক করুন

5 Comments

  1. আপনার পোস্ট গুলো পড়ে ভালো লাগে। অনেক কিছু জেনেছি। ধন্যবাদ

    ReplyDelete
    Replies
    1. ওয়েব ডিজাইন বিষয়ের আমার এই আর্টিকেলটি পড়ার জন্য আপনাকে অসংখ্য ধন্যবাদ

      Delete
  2. আল্লাহ আপনাকে নেক হায়াত দান করুক। ওয়েব ডিজাইন & ডেভেলপমেন্ট সম্পর্কে সম্পূর্ণ ধারণা এবং গাইডলাইন পেলাম। Thanks 🙂💜

    ReplyDelete
    Replies
    1. আর্টিকেলটি পড়ার জন্য আপনাকেও অসংখ্য ধন্যবাদ

      Delete
Post a Comment
Previous Post Next Post