CodeGym /Java Blog /এলোমেলো /একজন সিনিয়র ডেভেলপার হতে কেমন লাগে। ভূমিকার জন্য একটি সং...
John Squirrels
লেভেল 41
San Francisco

একজন সিনিয়র ডেভেলপার হতে কেমন লাগে। ভূমিকার জন্য একটি সংক্ষিপ্ত গাইড

এলোমেলো দলে প্রকাশিত
ঐতিহ্যগতভাবে প্রযুক্তি শিল্পে বিকাশকারীরা তাদের যোগ্যতার স্তরের উপর ভিত্তি করে চারটি গ্রেডেশনে বিভক্ত: জুনিয়র, মিডল, সিনিয়র এবং টিম লিড। পূর্ববর্তী দুটি নিবন্ধে আমরা ইতিমধ্যেই জুনিয়র এবং মিড-লেভেল ডেভেলপার হতে কেমন লাগে তার সমস্ত মৌলিক বিষয়গুলি কভার করেছি ৷ এখন পরবর্তী গ্রেডেশনে যাওয়ার সময়। সিনিয়র ডেভেলপার, একজন হতে কেমন লাগে এবং একজন মিড-লেভেল কোডার থেকে সিনিয়র কতটা আলাদা? খুঁজে বের কর. একজন সিনিয়র ডেভেলপার হতে কেমন লাগে।  ভূমিকার সংক্ষিপ্ত নির্দেশিকা - ১

একজন সিনিয়র ডেভেলপার কে?

সফ্টওয়্যার ডেভেলপমেন্টে পেশা এবং বিশেষীকরণের এই জাতীয় নিবন্ধগুলিতে আমাদের সর্বদা কিছু ধরণের দাবিত্যাগ করতে হয়, এটি ব্যাখ্যা করে যে একটি নির্দিষ্ট অবস্থানের উপলব্ধি এবং বোঝা অনেক পরিবর্তিত হতে পারে, কোম্পানি, এটি যে শিল্পে কাজ করছে এবং অন্যান্য কারণগুলির উপর নির্ভর করে। . কিছু লোক, যাদের বেশিরভাগই কিছুটা রক্ষণশীল হওয়ার প্রবণতা রয়েছে, তারা বিশ্বাস করেন যে আপনার যদি 10 বছরের বেশি কোডিং অভিজ্ঞতা থাকে, যা দায়বদ্ধ। অর্থ, যে বছরগুলিতে আপনি প্রকৃতপক্ষে পূর্ণকালীন কর্মচারী গণনা হিসাবে কোডিং করছেন, আপনি যখন 12 বছর বয়সে প্রথমবার বেসিক প্রোগ্রাম করার চেষ্টা করেছিলেন তখন থেকে আপনি গণনা শুরু করতে পারবেন না (যেমন অনেক তরুণ কোডাররা করে থাকে, প্রকৃত সিনিয়র প্রোগ্রামারদের বিরক্ত করে) ) কম রক্ষণশীল হওয়া, অনেক লোক বিশ্বাস করে যে একজন সফ্টওয়্যার ডেভেলপার হিসেবে পাঁচ বছরের বেশি সময় কাজ করলে আপনি নিজেকে একজন সিনিয়র বলতে পারবেন। অন্যদিকে, বছরের অভিজ্ঞতা মাত্র একটি সংখ্যা, যা প্রকৃতপক্ষে গুরুত্বপূর্ণ তা হল জ্ঞান, দক্ষতা এবং প্রযোজ্য অভিজ্ঞতা। সিনিয়র টাইটেল পাওয়ার জন্য আপনাকে সত্যিই ডেলিভারি করতে হবে, কারণ সিনিয়র ডেভেলপারকে প্রায়ই একজন সর্বজ্ঞ, সর্বশক্তিমান কোডিং উইজার্ড হিসাবে দেখা হয়। ম্যানেজমেন্টের উপলব্ধিতে, সিনিয়র সাধারণত একজন যিনি জানেন যে কীভাবে কোনও প্রকল্প-সম্পর্কিত কাজ সমাধান করতে হয় বা কীভাবে প্রয়োজনীয় কোড লিখতে হয়। কিন্তু একটি নির্দিষ্ট সফ্টওয়্যার ডেভেলপমেন্ট প্রকল্পে একজন সিনিয়র ডেভেলপারের সবচেয়ে গুরুত্বপূর্ণ কাজগুলির মধ্যে একটি হল প্রকল্পের সমস্ত সমস্যা, প্রয়োজনীয়তা, সূক্ষ্মতা ইত্যাদি সম্পর্কে জ্ঞান। স্বায়ত্তশাসিতভাবে কাজ করতে সক্ষম হওয়া একজন সিনিয়রের একটি গুরুত্বপূর্ণ গুণ। এর মানে সিনিয়র জানেন কি এবং কখন করতে হবে, এবং সে যে কাজটি করবে বলে প্রত্যাশিত তা সরবরাহ করার জন্য তার কোনো তত্ত্বাবধানের প্রয়োজন নেই৷ এবং এটি যেকোন নিয়োগকর্তার দৃষ্টিতে একটি মূল্যবান গুণ, কারণ এর অর্থ হল আপনি এই বিকাশকারীকে একটি প্রকল্প-সম্পর্কিত কাজ দিতে পারেন এবং বাকিটা তার উপর ছেড়ে দিতে পারেন। "বাকি সব" হচ্ছে: কাজটি সম্পন্ন করার জন্য প্রয়োজনীয়তা, প্রয়োজনীয়তা এবং সীমাবদ্ধতা খুঁজে বের করা, সঠিক পদ্ধতির সাথে আসা, সঠিক যন্ত্র খোঁজা, বড় কাজটিকে ছোট কাজগুলিতে ভাগ করা এবং সেগুলি মিড এবং জুনিয়র-লেভেলে দেওয়া বিকাশকারী, ইত্যাদি। আরেকটি প্রধান দিক রয়েছে যা সিনিয়রদের মধ্য-স্তরের এবং জুনিয়র কোডারদের থেকে আলাদা করে। এটা তারা লিখতে কোড, এবং উপায় তারা এটা করতে. সিনিয়র সাধারণত এমন একজন এবং হওয়া উচিত যিনি সবচেয়ে স্পষ্ট, সহজ এবং সংক্ষিপ্ত কোড লেখেন। কখনও কখনও যখন এই কোড অত্যধিক সহজবোধ্য এবং আদিম মৌলিক দেখায়। এর কারণ হল সিনিয়রকে শুধুমাত্র কাজটি শেষ করাকে চূড়ান্ত ফলাফল হিসেবে বিবেচনা করতে হবে না, কিন্তু প্রকল্পের কোড বেসে নতুন কোডের সামগ্রিক প্রভাবকে বিবেচনা করতে হবে। সিনিয়র ডেভেলপাররা তাদের কোড লেখেন রক্ষণাবেক্ষণযোগ্যতা এবং স্কেলেবিলিটি মাথায় রেখে, এবং এটি তাদের প্রধান শক্তি, যা শুধুমাত্র অভিজ্ঞতার সাথে আসতে পারে অন্য কিছু নয়।

একজন সিনিয়র ডেভেলপারের দায়িত্ব কি কি?

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

একজন সিনিয়র ডেভেলপারের জন্য প্রয়োজনীয়তা

এখানে একজন সিনিয়র ডেভেলপারের জন্য সবচেয়ে সাধারণ এবং সাধারণ প্রয়োজনীয়তার একটি তালিকা রয়েছে যা এই কাজটি পেতে আপনার পূরণ করা উচিত। অবশ্যই, কোম্পানি নিয়োগের নীতি, প্রকল্পে ব্যবহৃত প্রযুক্তি এবং আপনার প্রোগ্রামিং ভাষার উপর নির্ভর করে প্রয়োজনীয়তা পরিবর্তিত হবে।
  • সফ্টওয়্যার উন্নয়ন এবং এর প্রযুক্তির ব্যাপক সাধারণ জ্ঞান;
  • জাভা সম্পর্কে শক্তিশালী জ্ঞান;
  • এন্টারপ্রাইজ অ্যাপ্লিকেশন ডিজাইন, নির্মাণ এবং পরীক্ষা করার অভিজ্ঞতা;
  • জনপ্রিয় জাভা ফ্রেমওয়ার্ক যেমন স্প্রিং, স্প্রিং বুট, বা জাভা EE, JSF এবং অন্যান্য সম্পর্কে গভীর জ্ঞান;
  • অবজেক্ট-ওরিয়েন্টেড ডিজাইন (OOD) এর অভিজ্ঞতা।
এগুলি কেবলমাত্র প্রাথমিক প্রোগ্রামিং-সম্পর্কিত প্রয়োজনীয়তা, তবে প্রায়শই প্রযুক্তিগত জ্ঞান থাকা একজন সিনিয়র বিকাশকারীর চাকরি পাওয়ার জন্য যথেষ্ট নয়, কারণ আরও অনেক গুরুত্বপূর্ণ দক্ষতা রয়েছে যা একজন শক্তিশালী সিনিয়র তৈরি করে। সিনিয়র ডেভেলপারের জন্য এখানে কিছু সাধারণভাবে উল্লেখ করা নন-টেক প্রয়োজনীয়তা রয়েছে।
  • ভাল প্রতিনিধি এবং সময় ব্যবস্থাপনা দক্ষতা;
  • সমস্যা সমাধানের ক্ষমতা;
  • ভাল যোগাযোগ দক্ষতা;
  • শক্তিশালী লিখিত এবং মৌখিক যোগাযোগ দক্ষতা;
  • সময়সীমা পূরণ করার এবং কৌশলগতভাবে চিন্তা করার ক্ষমতা।

সিনিয়র ডেভেলপাররা কত উপার্জন করে?

আপনি হয়তো জানেন যে, মার্কিন যুক্তরাষ্ট্রে কোডিং কাজের জন্য বেতনের ক্ষেত্রে, একজন অভিজ্ঞ সিনিয়র ডেভেলপারের জন্য, আকাশ একটি সীমা, কারণ গুগল, ফেসবুক, অ্যামাজন, অ্যাপল এবং মাইক্রোসফ্টের মতো জায়ান্টগুলি সফ্টওয়্যার ইঞ্জিনিয়ারদের প্রচুর অর্থ প্রদান করছে । উদাহরণস্বরূপ, Google-এ, লেভেল 7-এর একজন সফ্টওয়্যার প্রকৌশলী, যেটিকে আপনি একজন ডেভেলপার হিসেবে সর্বোচ্চ পেতে পারেন বলে মনে করা হয়, বছরে মোট $608,000 উপার্জন করতে পারেন। কিন্তু এর গড় পরিসংখ্যান মাধ্যমে যান. Glassdoor এর মতে , মার্কিন যুক্তরাষ্ট্রে গড় সিনিয়র প্রোগ্রামার প্রতি বছর প্রায় $121,000 উপার্জন করে, যা একজন মিড-লেভেল কোডারের বছরে $71,000 বেতন এবং জুনিয়র ডেভরা মার্কিন যুক্তরাষ্ট্রে বছরে $63,502 এর গড় বেতনের তুলনায় যথেষ্ট বেশি। একটি রিপোর্টPayScale দ্বারা, 10-19 বছরের অভিজ্ঞতা সহ একজন সিনিয়র ডেভেলপার 5,523 বেতনের উপর ভিত্তি করে $109,122 গড় মোট ক্ষতিপূরণ পান। তাদের দেরী কর্মজীবনে (20 বছর এবং উচ্চতর), কর্মচারীরা গড় মোট $111,432 ক্ষতিপূরণ অর্জন করে। জার্মানিতে , PayScale অনুযায়ী, 10 বছরের বেশি অভিজ্ঞতার একজন সিনিয়র সফ্টওয়্যার বিকাশকারী মোট গড় ক্ষতিপূরণ €63,638 উপার্জন করেন। ফ্রান্সে, একজন সিনিয়রের গড় বেতন €54,982। যথারীতি, যখন সংখ্যার ক্ষেত্রে বিশুদ্ধভাবে আসে, আমেরিকান প্রোগ্রামাররা ইউরোপ এবং অন্যত্র তাদের সহকর্মীদের চেয়ে এগিয়ে থাকে। আরেকটি আকর্ষণীয় বিষয় লক্ষ্য করা যায় যে আমেরিকার সিনিয়র প্রোগ্রামাররা মিড-লেভেল কোডারদের তুলনায় উল্লেখযোগ্যভাবে বেশি উপার্জন করে। সম্ভবত, এটি একটি অনুমান সহ সবচেয়ে ভাল ব্যাখ্যা করা হবে যে মার্কিন যুক্তরাষ্ট্রে বেশিরভাগ পেশাদার এবং অভিজ্ঞ সিনিয়র কোডাররা আমেরিকান টেক জায়ান্টদের জন্য কাজ করে, যারা বিশ্বের শীর্ষস্থানীয় সফ্টওয়্যার কর্মীশক্তি ব্যয়কারী।

কর্মজীবনের দৃষ্টিকোণ

ক্যারিয়ারের দৃষ্টিভঙ্গির ক্ষেত্রে, সিনিয়র বিকাশকারীদের অবশ্যই সেগুলি রয়েছে। কিন্তু মজার ব্যাপার হল, তাদের অধিকাংশই আসলে কোনো খোঁজ করছে না। টিম লিড এবং টেক লিডের মতো পদগুলি সিনিয়র লেভেলে পৌঁছানোর জন্য মুখ্য বিকল্পগুলির মধ্যে একটি হবে। পাশাপাশি প্রযুক্তি ব্যবস্থাপনায় বিভিন্ন বিকল্প। সম্ভবত একটি সিনিয়র দেবের ক্যারিয়ারে সর্বোচ্চ সম্ভাব্য অর্জন হিসাবে একটি প্রযুক্তি সংস্থার সিটিও এবং সিইও পদের সাথে। CTO অবশ্যই একটি আরও বাস্তবসম্মত, যেহেতু এমনকি প্রযুক্তি শিল্পেও, বেশিরভাগ সিইওদের প্রকৃতপক্ষে কোন বা খুব সীমিত প্রযুক্তিগত পটভূমি নেই।

একজন সিনিয়র ডেভেলপার হতে কেমন লাগে। মতামত

স্বাভাবিকভাবেই, যখন সাধারণভাবে সিনিয়র ডেভেলপার পজিশনের কথা আসে, বেশিরভাগ আলোচনায় দুটি মূল বিষয়ের উপর ফোকাস করার প্রবণতা থাকে যা ডেভেলপাররা শুধু বিতর্ক করতে আগ্রহী: কী আপনাকে সত্যিই একজন সিনিয়র ডেভ করে এবং কত তাড়াতাড়ি আপনি নিজেকে একজন সিনিয়র বলা শুরু করতে পারেন। "এটি কিছু লোককে অবাক করে দিতে পারে, কিন্তু সিনিয়র স্তরের চাকরিগুলি ধারাবাহিকভাবে আবেদনকারীদের 5 থেকে 8 বছরের অভিজ্ঞতা থাকতে বলে। এমন কয়েকজন ছিল যারা 10 বছর বা তার বেশি সময় চেয়েছিল, কিন্তু অনেকগুলি নয়। একজন সিনিয়র বিকাশকারী হিসাবে, একটি কোম্পানি আশা করবে যে আপনি একটি অস্পষ্ট ধারণা নিতে পারবেন, এটি নির্দিষ্ট করতে পারবেন, উন্নয়নের পরিকল্পনা করতে পারবেন, একটি দলকে নিযুক্ত করতে পারবেন এবং এটি সম্পূর্ণ করার জন্য অনুসরণ করতে পারবেন। যেখানে, একজন মধ্যবর্তী বিকাশকারী, সাধারণত, তত্ত্বাবধান ছাড়াই, তাদের উপর অর্পিত স্বতন্ত্র কাজগুলি সম্পাদন করবে, একটি দলের মধ্যে কাজ করবে এবং কিছু মেন্টরশিপ করবে বলে আশা করা যায়।তার দৃষ্টিভঙ্গি শেয়ার করে । "একজন সিনিয়র ডেভেলপারের সাথে, আমি একটি উচ্চ স্তরের/আরো অস্পষ্ট লক্ষ্য দিতে পারি এবং তারা এটিকে নির্দিষ্ট করতে পারে, বাস্তবায়নের জন্য একটি পরিকল্পনা তৈরি করতে পারে, এটি আমার দ্বারা চালাতে পারে, তারপরে অল্প পরিমাণে হাতে ধরে এটি বাস্তবায়ন করতে পারে৷ সুতরাং যখন আপনি আত্মবিশ্বাসী বোধ করেন যে আপনি একটি অস্পষ্ট ধারণা নিতে পারেন এবং এটিকে সম্পূর্ণরূপে সম্পূর্ণ করতে পারেন আপনি একজন সিনিয়র দেব। মনে রাখবেন এর মানে এই নয় যে আপনি কখনই সাহায্য চান না, কারণ প্রত্যেকেই সময়ে সময়ে করে, কিন্তু আপনি আমাকে বেবিসিট না করেই প্রক্রিয়াটি চালাতে পারেন,” বলেছেন এরিক ওয়াইজ, ওয়াইজ টেলিমেট্রির সহ-প্রতিষ্ঠাতা এবং সিইও৷ এবং এর এই চমত্কার ভাল উদ্ধৃতি সঙ্গে এটি মোড়ানো যাকজার্মানির একজন অভিজ্ঞ সফ্টওয়্যার ডেভেলপার পাবলো অলিভা দ্বারা: “আমি যে সিনিয়র ডেভেলপারদের সাথে কাজ করেছি তাদের কাছে বিশাল টুলবেল্ট আছে বলে মনে হচ্ছে। যখনই সমস্যা দেখা দেয়, তাদের কাছে যাওয়ার জন্য প্রচুর সম্পদ ছিল। আমরা প্রতিদিন যে টুলস এবং ভাষাগুলি ব্যবহার করি তা তারা বেশ ভালভাবে জানত, এবং যখন তারা কিছু না জানত তখন কোথায় খুঁজতে হবে তা তারা জানত (উদ্দেশ্যহীনভাবে গুগল করা এবং প্রথম চেষ্টায় সঠিক ম্যানুয়াল পৃষ্ঠায় যাওয়ার মধ্যে পার্থক্য রয়েছে)। পুরানো সমাধানের এই জ্ঞান এবং নতুন সমাধান খোঁজার দক্ষতা তাদের সমবয়সীদের দ্বারা তাদের সম্মানিত করেছে, যারা প্রায়শই পরামর্শের জন্য তাদের কাছে যেতেন। তারা, ঘুরে, জানবে কখন নিজের দিকে তাকানো বন্ধ করতে হবে এবং সাহায্যের জন্য একজন সহকর্মীকে জিজ্ঞাসা করতে হবে। কিছু সার্টিফিকেশন ছিল, কিছু ছিল না. কেউ স্নাতক হয়েছে, কেউ হয়নি। কিন্তু তারা সবসময় তাদের দলের জন্য একটি রেফারেন্স পয়েন্ট ছিল (এবং এমনকি অন্যান্য দলের লোকেদের জন্য, কিছু বিশেষ দর্শনীয় সিনিয়র ডেভের জন্য)। তাহলে, আটকে গেলে কতজন লোক আপনার কাছে সাহায্য চাওয়ার কথা ভাবেন?"
মন্তব্য
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION