আপনি কীভাবে ব্যাখ্যা করবেন যে সফটওয়্যার ইঞ্জিনিয়ারিং অন্যান্য প্রকৌশল ক্ষেত্রগুলির চেয়ে বেশি বিশেষায়িত? [বন্ধ]


9

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

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

আমি এটি ব্যাখ্যা করার চেষ্টা করেছি, কিন্তু সে এটি কিনে নি। এই বিষয়ে কোনও ভিন্ন মতামত বা চিন্তা বোঝাতে সাহায্য করার জন্য যে আমার অভিজ্ঞতা এক জিনিসেই সব কিছুতে অনুবাদ করে না?


7
আপনি যদি ডাউনটাতে যাচ্ছেন, তবে কমপক্ষে আপনি কেন মন্তব্য করতে পারবেন? বিশেষত যেহেতু আপনার ইনপুটটি প্রশ্নটিকে পুনরায় বিবরণ / পুনঃব্যবস্থা করতে সহায়তা করতে পারে।
স্পেন্সার কোর্মোস

11
প্রথমে এই বন্ধ গলাবাজি এবং না একটি প্রশ্ন হল, আর দ্বিতীয়টি হচ্ছে একটি ভ্রান্ত ধৃষ্টতা গলাবাজি, এই চাহিদা নিচে ভোট করা হয় এবং বন্ধ করে দেয়।

6
@ জারোদরবার্সন এখানে একটি বৈধ প্রশ্ন রয়েছে বলে আমি মনে করি। এটি এমন একটি ভাল ব্যাখ্যা চেয়েছে যা কিছু ইঞ্জিনিয়ারিং অন্য ইঞ্জিনিয়ারিং ক্ষেত্রের তুলনায় কম-বেশি বিশেষজ্ঞ হিসাবে কেন সফ্টওয়্যার ইঞ্জিনিয়ারিংকে দেখায় তার ব্যাখ্যা জিজ্ঞাসা করছে।
maple_shaft

7
@ স্পেনসার্ক আপনার প্রশ্নটি হ'ল "কিছু এলোমেলো বন্ধু একটি খারাপ উপমা তৈরি করেছে, আমি কীভাবে প্রতিক্রিয়া জানাব" এবং ভাল, এটি আসলে কোনও প্রশ্ন নয়। কেবল দৃ solid় প্রমাণ এবং / অথবা তার অবস্থানকে সমর্থন করে এমন রেফারেন্স জিজ্ঞাসা করুন, আপনি এখানে নন যে নিজেকে এখানে প্রমাণ করার প্রয়োজন।
ইয়ানিস

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

উত্তর:


23

তবে "কোডমনকি, স্লিং কোডে যান" তেমন একটি উপায়ে পেশাকেও তুচ্ছ করে তোলে।

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

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

আমি এমন কোনও ফোর্ড ইঞ্জিনিয়ারকে বিশ্বাস করব না যিনি মেকানিকের কাজ কীভাবে করবেন তা জানেন না।

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


8
আমি ভাষা এবং সরঞ্জামগুলির তুলনায় ধারণা এবং নীতিগুলি বোঝার গুরুত্বকেও জোর দেব।
ওদে

+1 আমার পোষা প্রাণীগুলির মধ্যে একটি হল এমন লোক যারা "আমি একটি সি # বিকাশকারী ..." বলে say এবং তারপরে কেবল কুল-সহায়তা পান করুন এবং এমএস থেকে যে কোনও কিছুই সুসমাচার হিসাবে গ্রহণ করুন। প্রোগ্রামিংয়ের 10 বছর আমি 11 টিরও বেশি প্রোগ্রামিং ভাষা শিখেছি এবং প্রত্যেকে আমি অন্যান্য ভাষাগুলিতে কীভাবে প্রোগ্রাম করি তাতে ব্যাপক উন্নতি করেছে। সফটওয়্যার ইঞ্জিনিয়ারিং শিখুন! 2 বছরের মধ্যে যে প্ল্যাটফর্মগুলি যাবে না।
টিমোথি বাল্ড্রিজ

ফোর্ড ইঞ্জিনিয়ার রেফারেন্সের জন্য +1। আমি সফটওয়্যার ইঞ্জিনিয়ার্স বনাম প্রোগ্রামার্স সম্পর্কে সেভাবে আগে চিন্তা করি নি।
ডালিন সেয়েভরাইট

প্রোগ্রামার ইঞ্জিনিয়ারের সাবসেট, অন্যভাবে নয়।
স্পেনসার রথবুন

11

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

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

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


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

@ মার্সিন: কিছু নীতি হ'ল। আমি যে পোটনটি তৈরি করছিলাম তা হ'ল (উদাহরণস্বরূপ) সি বা এসেম্বলারের মধ্যে একটি এমবেডড সিস্টেম ডিজাইন করা সরঞ্জামগুলি ভিন্ন হলেও একই ধরণের নীতি নিয়োগ করে।
জেরেমিপি

এই সরঞ্জামগুলি এর চেয়ে আলাদা নয় এবং এগুলি খুব অনুরূপ সমস্যা ডোমেনগুলিকে সম্বোধন করে। এই কারণেই এটি সম্পূর্ণরূপে অসহায়।
মার্সিন

1
@ মারকিন: আপনি স্পষ্টতই হয় এসেম্বলারের প্রোগ্রামিং করেননি বা সি তে প্রোগ্রামিং করেননি। আমি আপনাকে নিশ্চয়তা দিচ্ছি যে প্রচলিত কল্পকাহিনী থাকা সত্ত্বেও সি এ্যাসেমব্লার নয় এবং সেই সরঞ্জামগুলিতে প্রোগ্রামিং সি এবং রুবির প্রোগ্রামিং (বলুন) এর চেয়ে আলাদা।
জেরেমিপি

1
@ মার্সিন, নিশ্চিত, এবং বোলিং হ'ল সমস্ত পিন ছিটকে যাওয়ার বিষয়। সত্যিই কেক টুকরা। ওয়েব প্রোগ্রামিং এবং এম্বেড প্রোগ্রামিং কিছু উচ্চ-স্তরের নীতি এবং সর্বোত্তম অনুশীলনগুলি ভাগ করে নিতে পারে, তবে যা সত্যই প্রতিদিনের কাজ পরিচালনা করে তা হ'ল এই রীতিগুলি বাস্তবায়নের নিয়ন্ত্রণ করে। আপনি যখন পারে অবশেষে হিসেবে এবং এমবেডেড প্রকৌশলী এবং ভিসার বিপরীতে একটি ওয়েব প্রোগ্রামার retrain পাবে, তারা fungible হয় না।
চার্লস ই। গ্রান্ট

5

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

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

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

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


5

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

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

শেষ পর্যন্ত, সফ্টওয়্যার ইঞ্জিনিয়ারিং (এবং কোনও ইঞ্জিনিয়ারিং শৃঙ্খলা) একটি সমস্যা সমাধানের জন্য বিভিন্ন ধারণা প্রয়োগ করার বিষয়ে। যদি আপনি প্রায়শই একই সরঞ্জামগুলি ব্যবহার করেন তবে আপনি সেই সরঞ্জামগুলির সাথে আরও দক্ষ হয়ে উঠবেন। এই সরঞ্জামগুলি সমাধান করতে পারে এমন সমস্যাগুলি, সেই সরঞ্জামগুলি ব্যবহার করে ঝুঁকি বা সমস্যাগুলি এবং তারপরে সমাধান তৈরির জন্য সেই সরঞ্জামগুলি ব্যবহার করে সনাক্ত করা আপনার পক্ষে সহজ হবে।


অন্তর্নিহিত নীতিগুলি প্রচুর পরিমাণে পরিবর্তিত হতে পারে।
মার্সিন

1
@ মার্সিন না, তারা দেয় না। প্রযুক্তি পরিবর্তন হলে কম্পিউটার বিজ্ঞান পরিবর্তন হয় না। গণিতের পরিবর্তন হয় না। পরিসংখ্যান পরিবর্তন হয় না। উভয়ই প্রয়োজনীয়তা বিশ্লেষণ, সিস্টেম ডিজাইন, কনফিগারেশন পরিচালনার অনুশীলন, যাচাইকরণ এবং বৈধকরণের কৌশলগুলি, মানের নীতিগুলি করেন না ...
টমাস Owens

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

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

1
হ্যাঁ, আপনি ঠিক বলেছেন, বিশ্বের প্রতিটি সফ্টওয়্যার প্রকল্প একই এবং আপনি প্রতিটি একক প্রকল্প কীভাবে পরিচালনা করবেন তা নির্ধারণ করেছেন। সমস্ত সফ্টওয়্যার লিখতে ও পরিচালনা করার জন্য আপনার সম্ভবত একটি সত্যিকারের বইয়ের লেখা উচিত।
মার্সিন

4

তাঁর সাদৃশ্যটি হ'ল যে পণ্যটি উত্পাদন করে এমন একটি সমাবেশ লাইন কীভাবে তৈরি করতে হয় তা জানার জন্য আপনার কাছে পণ্যটি তৈরি হচ্ছে তা সম্পর্কে জ্ঞান থাকতে হবে না।

এটি প্রায় অবশ্যই ভুল। বিশেষজ্ঞ প্রযোজনা ইঞ্জিনিয়ারদের তাদের যত্নের অধীনে থাকা পণ্যগুলি সম্পর্কে যথেষ্ট পরিমাণে বোঝার প্রয়োজন।

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

অ্যাসেম্বলি লাইনের সাদৃশ্যগুলিতে ফিরে আসার জন্য, প্রতিটি পণ্যগুলির জন্য প্রতিটি অ্যাসেমব্লি লাইন আলাদা হয় এবং বিভিন্ন ধরণের সফ্টওয়্যার বিকাশের জন্য বিভিন্ন পদ্ধতির প্রয়োজন হয় - আপনি কোনও গেম তৈরির মতোই আপনার সুরক্ষা সফ্টওয়্যারটি তৈরি করেন না build


1
সফটওয়্যার পণ্য নির্বিশেষে একই স্তরে সফটওয়্যার নির্মাণ একই হয়। আমরা কেবল সমাবেশ লাইনের পরিবর্তে তাদের পদ্ধতিগুলি বলি , তবে তারা ধারণাগতভাবে একই জিনিস।

1
@ জারোদরবারসন নং বিধানসভা লাইনগুলি অভিন্ন নয় এবং পদ্ধতিগুলি সাধারণত প্রযোজ্য নয়।
মার্সিন

2
আমি মার্সিনের সাথে একমত, পণ্যটির জন্য একটি অ্যাসেম্বলি লাইন একসাথে রাখার জন্য আপনার কাছে কোনও পণ্য সম্পর্কে জ্ঞান থাকতে হবে। সঠিক ফলাফলের জন্য আপনাকে যে সরঞ্জামগুলি ব্যবহার করতে হবে তা সঠিকভাবে নির্বাচন করতে সক্ষম হতে হবে। সফ্টওয়্যার একটি পদ্ধতি একটি নির্দিষ্ট সরঞ্জাম বা কাজ হবে। যদি আপনার একটি কাজ নির্দিষ্ট নির্দিষ্ট কাজটি সম্পন্ন করে তবে আপনার সম্পূর্ণ জ্ঞানের প্রয়োজন নেই। তবে আপনি একজন অপারেটর এবং ইঞ্জিনিয়ার নন। সমাবেশ লাইন গঠনের জন্য পদ্ধতির সঠিক সেট নির্বাচন আপনাকে অন্য প্রকৌশলগুলির মতোই প্রকৌশলী তৈরি করে makes এটি আর বিশেষীকৃত বা আলাদা নয়।
আরজায় 75

2

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

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


1

আমি আপনার সহকর্মীর পরামর্শের ভিত্তিতে সম্মত, যদিও আমি একটি সতর্কতা যুক্ত করব।

একজন ভাল সফটওয়্যার ইঞ্জিনিয়ার যে কোনও প্রযুক্তিতে ভাল সফ্টওয়্যার তৈরি করতে সক্ষম হবে ..... তারা নতুন প্রযুক্তিতে কিছুটা শেখার পরে।

এমন কিছু গণ্ডগোল থাকতে পারে যা প্রথমে স্পষ্ট নয় তবে একটি ভাল সফটওয়্যার ইঞ্জিনিয়ার শীঘ্রই সেগুলি শিখবে।

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

অন্য কথায়, আপনার প্রয়োজনে জাভা ছেলের কোনও কাজের জন্য ছাড় দেওয়া উচিত নয়, তিনি সি # তে "সময়" করেছেন।


আমি মনে করি এটি প্রদত্ত, তবে এটি সত্যিই আরওআই সম্পর্কে। আমি প্রাথমিক জাভা অভিজ্ঞতার সাথে কোনও ইঞ্জিনিয়ার ভাড়া নেব না, যদি আমি mos টি মসজিদে একটি সি ++ প্রকল্প পেতে চাই। যদিও, আপনার যদি একটি সুইং প্রকল্প রয়েছে যা 6 টি মাসের মধ্যে বের হওয়া প্রয়োজন, একটি প্রাথমিক সার্ভার সাইড ইঞ্জিনিয়ার এখনও যোগ্যতা অর্জন করতে পারে।
স্পেন্সার কোরোমস

@ স্পেনসারক একেবারে একমত এটি নির্ভর করে আপনি কতটা আপনার আরওআইয়ের প্রয়োজন। আপনার যদি অপেক্ষা করার জন্য আরও দীর্ঘ সময় থাকে তবে আরও ভাল সফ্টওয়্যার ইঞ্জিনিয়ারের "জয়" হওয়া উচিত।
ozz

এছাড়াও, কঠোর বিয়োগ যদি আপনি হয়!
ozz

1
না, আমি না। আমি কেন মন্তব্য করা ছাড়া ডাউনটোট করি না। আমার চেয়ে ভাল আচরণ আছে!
স্পেন্সার কোর্মোস

1

দৃষ্টিতে কেস: আপনি যে সফ্টওয়্যার ফ্রেমওয়ার্কটি বিশেষত অভিজ্ঞতার সাথে সমালোচনামূলক বলে মনে করেন সম্ভবত 10 বছর আগে এর অস্তিত্ব ছিল না , বা যদি তা হয়ে থাকে তবে তা উল্লেখযোগ্য রূপান্তর ঘটেছে। আমাদের পেশার খুব প্রকৃতি কারওর ক্যারিয়ারের সম্পূর্ণতার জন্য বিশেষতাকে অসম্ভব করে তোলে। আপনার নিজ নিজ দক্ষতার স্তরের উপর নির্ভর করে আপনার বিশেষত্ব আপনাকে 1 থেকে 6 মাসের মধ্যে কোথাও কারও জন্য সুবিধা দেয় যা আপনার নির্দিষ্ট কাঠামোটি কখনও ব্যবহার করেন নি। এর পরে, আপনি সমান


2
সত্যি? আমি এটি গ্রহণ করি আপনি 6 মাসের মধ্যে কোনও সুরক্ষা প্রকৌশলী গেমস তৈরি এবং কোডিং করা এবং অভিজ্ঞ বিশেষজ্ঞের কাছ থেকে পৃথক হয়ে উঠবেন বলে আশা করি।
মার্সিন

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

1

আমি একটি হেলিকপ্টার কোম্পানির হয়ে কাজ করি এবং এয়ার এভিয়েশন ইঞ্জিনিয়াররা তারা যে ধরণের বিমান নিয়ে কাজ করতে পারে তার দ্বারা বিশেষায়িত। তাদের "টাইপ রেটেড" হওয়া দরকার। প্রযুক্তিগতভাবে তারা রবিনসন আর 22 থেকে একটি জাম্বো জেট পর্যন্ত যে কোনও বিষয়ে কাজ করতে পারে তবে রূপান্তর প্রশিক্ষণ ছাড়াই নয়।

আমি মনে করি এটি সফ্টওয়্যার ইঞ্জিনিয়ারদের ক্ষেত্রে "রূপান্তর প্রশিক্ষণ" আরও অনানুষ্ঠানিক ছাড়া সফ্টওয়্যার ইঞ্জিনিয়ারিংয়ের সাথে বেশ মিল similar


1

চিত্রশিল্পীর সাথে কথা বলার সময়, আপনি কি তাকে বলবেন যে ভাস্কর্যটি নিয়ে তার কোনও সমস্যা নেই?

একটি নতুন ভাষা শেখা বা একটি নতুন ডোমেনের সুনির্দিষ্ট একটি শিল্পীর সাথে মিল রয়েছে যিনি মূলত পেন্সিল এবং কালি নিয়ে কাজ করেন, কীভাবে আঁকবেন (বা তদ্বিপরীত) শিখছেন learning অন্যান্য উত্তরগুলির বেশিরভাগই এটির বিষয়ে কথা বলছেন, আপনার বন্ধু কীভাবে আংশিকভাবে সঠিক - অনেকগুলি একই ধারণা প্রয়োগ হয় apply

তবে কোনও চিত্রকরকে কীভাবে কোনও 3 ডি অবজেক্টকে ভাস্কর করা যায়, বা একটি উপন্যাস (শৈল্পিক প্রকাশের উভয় রূপ) লিখতে হয় তা সম্পূর্ণ আলাদা ast আপনি যে দৃষ্টিভঙ্গি থেকে এসেছেন সেটাই।

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

সংক্ষিপ্তসার এবং উদাহরণ:

"আর্ট" এর মধ্যে ভাস্কর্য, উপন্যাস, কমিক্স এবং চিত্রগুলি অন্তর্ভুক্ত রয়েছে। দক্ষতা ওভারল্যাপগুলির মধ্যে রয়েছে:

  • দেহের ফর্ম এবং রঙ তত্ত্ব: ভাস্কর্য, কমিক্স এবং চিত্রকর্ম
  • পাঠ্য যোগাযোগ: উপন্যাস এবং কমিকস

... ইত্যাদি। তবে উপরে উল্লিখিত হিসাবে, একটি কমিক শিল্পী তাদের প্রথম উপন্যাসে ভাল করার সম্ভাবনা কম। তাদের আলাদাভাবে চিন্তা করা দরকার।

তেমনিভাবে প্রোগ্রামিং / সফটওয়্যার ইঞ্জিনিয়ারিংয়ের বিভিন্ন ক্ষেত্রে ওভারল্যাপ রয়েছে তবে তাদের বেশিরভাগই কেবল ঝাঁপিয়ে উঠতে সক্ষম হতে খুব আলাদা example উদাহরণস্বরূপ:

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

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

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

0

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

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


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

1
@ জারোদরোবারসন আমি একমত যে এটি একটি দুর্বল উপমা, তবে আমি নিশ্চিত নই যে আপনার সিভিল ইঞ্জিনিয়ারের বক্তব্য আরও ভাল। অবশ্যই, কোনও সিভিল ইঞ্জিনিয়ার যে কোনও রাস্তার পরিকল্পনা পড়তে সক্ষম হবে। তবে আপনি যদি রানওয়ে বা আইস রোড তৈরি করছেন, আপনি কি হাইওয়ে নির্মাণের জন্য বছরের পর বছর কাটানো কাউকে ভাড়া নিতে চান, বা রানওয়ে বা আইস রাস্তার সাথে নির্দিষ্ট অভিজ্ঞতা আছে এমন কাউকে চান?
কালেব

0

আমি যেখানে কাজ করি সেখানে এই ধরণের জিনিস অনেক ঘটে।

আমি আমার স্ত্রীর মামার পেশার সাথে তুলনা করতে চাই - একটি গাড়ি মেকানিক।

তিনি মার্সিডিজে বিশেষীকরণ করেছেন, তিনি নিজের জ্ঞানটি অন্যান্য মেক গাড়িগুলিতে প্রয়োগ করতে পারেন এবং তিনি করেন - এর মধ্যে কয়েকটি বিরল, তবে এর অর্থ এই নয় যে তিনি তত্ক্ষণাত্ এক্স তৈরি করতে মেরামত করতে পারেন কারণ আপনি বলে যে এটি শব্দ করছে making

আমি কয়েকটি ভাষায় প্রোগ্রাম করি তবে এর অর্থ এই নয় যে আপনি যখনই ট্যাব পরিবর্তন করবেন তখনই আপনার ম্যাকবুকের সাফারি পৃষ্ঠা পুনরায় লোড করছে (আজকের আজব কল) I আমি চেষ্টা করব এবং বুঝতে পারব কেন তবে আমি আমার মাথার উপরের অংশটি জানব না কারণ কম্পিউটিং ফিল্ডটি বিশাল

উভয় ক্ষেত্রে আমাদের নিজ নিজ ক্ষেত্রটি অনুসন্ধান করার পরে কিছুটা সময় ব্যয় করার পরে আমরা সম্ভবত দশটি সেকেন্ডে উত্তরটি কার্যকর করতে পারিনি কারণ লোকেরা মনে করে কারণ "তবে আপনি গাড়ি নিয়ে কাজ করেন" বা "তবে আপনি কম্পিউটার নিয়ে কাজ করেন"।

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

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