কীভাবে কার্নেল / সিস্টেমস / ডিভাইস ড্রাইভার প্রোগ্রামার হয়ে উঠবেন? [বন্ধ]


40

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

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

সমস্যাটি আমি দেখতে পাচ্ছি, এন্ট্রি স্তরের কোনও অবস্থান নেই। এই ক্ষেত্রটির মধ্যে একটি কীভাবে ভেঙে যায়? যে কোনও সময় আমি "লিনাক্স সিস্টেমস প্রোগ্রামার" বা "লিনাক্স ডিভাইস ড্রাইভার প্রোগ্রামার" দেখতে তাদের প্রাসঙ্গিক অভিজ্ঞতার নূন্যতম 5-7 বছরের জন্য প্রয়োজন। তারা এমন কাউকে চায় যা দড়ি জানে, জুনিয়র স্তরের প্রোগ্রামার নয় (আমি এখন 7 মাস ধরে কাজ করছি ...)।

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

বর্ণনার জন্য সম্পাদনা করুন! আমি লিনাক্স কার্নেল / ড্রাইভার ইত্যাদির ওপেনসোর্স প্রকৃতি সম্পর্কে অবগত আছি আমি আমার দিনের কাজটি যেখানেই থাকুক না কেন অবদান রাখার পরিকল্পনা করছি। আমি কী ধরনের এন্ট্রি স্তরের অবস্থানগুলি প্রাসঙ্গিক কাজ করতে এবং এটি করার জন্য অর্থ প্রদান করার অনুমতি দেব তা সম্পর্কে আমি আরও কৌতূহল! এখন পর্যন্ত সমস্ত জবাবের জন্য ধন্যবাদ!


6
খুব সহজ. লিনাক্স ওপেনসোর্স। কেবল উন্নয়নের তালিকাটি অনুসরণ করুন, কিছু বাগ ঠিক করুন, আপনার জিনিসগুলি জানার পরে, সম্ভবত নতুন বৈশিষ্ট্য, অনুকূলকরণ, সম্ভবত কিছু ড্রাইভারের মতো বড় বড় জিনিসগুলি লিখতে শুরু করুন ...
লেট_মে_বি ২৮

2
তবে লিনাক্সের যে কোনও অঞ্চল বেছে নেওয়ার আগে আপনার লিনাক্সের কাজ এবং কিছু হাতের কাজ বোঝার মাধ্যমে ধারণা নেওয়া উচিত। বলুন আপনাকে লিনাক্স ফাইল সিস্টেম ইত্যাদি সম্পর্কে অবশ্যই জ্ঞান থাকতে হবে
ব্যবহারকারী 29973

উত্তর:


36

আমি আমার সংস্থার জন্য লিনাক্স ডিভাইস ড্রাইভার লিখি এবং আমার বিভাগে লিনাক্স বিকাশের বিষয়ে সর্বাধিক জেনে আমি এই অবস্থানে প্রবেশ করি এবং তারা আমাকে নতুন ভূমিকাতে পদোন্নতি / নিয়োগ দেয়। এটি অনেকটা জুনিয়র স্তরের স্টাইলে প্রবেশ ছিল, সুতরাং তাদের উপস্থিতি রয়েছে এবং আশা হারাবেন না!

আপনার জন্য আমার তাত্ক্ষণিক পরামর্শ হ'ল আপনি নিজের ফোকাসকে সঙ্কুচিত করতে পারেন কিনা তা দেখার জন্য। কার্নেল প্রোগ্রামিং সিস্টেম প্রোগ্রামিং থেকে খুব আলাদা ডিভাইস ড্রাইভার প্রোগ্রামিং থেকে খুব আলাদা।

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

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

সুতরাং, সম্ভবত আপনার পক্ষে সবচেয়ে বেশি আগ্রহী বাছাই করুন, সম্ভবত বিকাশের তালিকা বা বাগ ট্র্যাকারদের সমীক্ষা করে দেখুন এবং কী ধরণের প্রভাব তৈরি করতে চান তা দেখুন। তারপরে, সেই প্রকল্পগুলি এবং প্রচেষ্টাগুলিতে কাজ করে অবদান রাখুন এবং অভিজ্ঞতা তৈরি করুন। যখন আপনার নাম / ইমেলটি কার্নেলের মূল লাইনে কোডের সাথে সংযুক্ত থাকে, তখন আপনার নিজের অভিজ্ঞতা হবে অন্য পজিশনের জন্য আপনার জীবনবৃত্তান্ত / কভার লেটারে: --)


3
আকর্ষণীয়, কিন্তু সম্ভবত একটি যাদু বুলেট না।
ম্যাট যোগদানকারী

7
ম্যাজিক বুলেট খুব কমই বিদ্যমান।
এড এস

আপনার সহযোগিতার জন্য ধন্যবাদ! আমি আপাতত আমার ফোকাসকে সংকুচিত করার কাজ করব (অবশেষে আমি সমস্ত দিকগুলি বোঝার জন্য চাই)। কোন সক্ষমতা (যদি আপনি প্রকাশের অবসরে থাকেন) তবে আপনি ড্রাইভারদের "গয়ে যান" হওয়ার আগে কী কাজ করেছিলেন?
অ্যাকর্ডিয়নফোল্ডার

4
বিশ্বাস করুন বা না করুন, তবে আমি হার্ডওয়্যার এবং বিক্রয়গুলি এটি বোঝার চেষ্টা করে গ্রাহকদের জন্য প্রযুক্তিগত সমর্থন ছিল: আমি ইমেল এবং ফোন কলগুলির উত্তর দিয়েছি। তবে লিনাক্সের কার্নেল এবং ব্যবহারকারী-ভূমি বিকাশের ক্ষেত্রে আমার পার্শ্ব অভিজ্ঞতা আমাকে আরও সহায়তা করেছে।
জো ফ্রেডরিচসেন

3

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

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

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

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

  2. চুক্তি বিবেচনা করুন, বিশেষ করে যদি আপনি পুরো সময় কাজ করেন না। সংস্থাগুলি পুরো সময়ের চেয়ে ঠিকাদারের কাছে সুযোগ নিতে অনেক বেশি ইচ্ছুক। আবার, একবার আপনার পুনরায় শুরু করার জন্য যাচাইযোগ্য অভিজ্ঞতা হয়ে গেলে, এটি দরজা খুলে দেয়।

  3. আপনার নিজের একটি ছোট বা দুটি প্রকল্প করুন এবং সম্ভাব্য নিয়োগকারীদের কাছে উপস্থাপনের জন্য একটি পোর্টফোলিও তৈরি করুন। এটি কেবল একটি ছোট সংস্থাকেই নয়, একটি মাঝারি সংস্থাকেও প্রবেশের দরজা উন্মুক্ত করতে পারে।

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

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

শুভকামনা!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.