পেশাদার প্রোগ্রামিংগুলির জন্য কোন দক্ষতাগুলি প্রয়োজনীয় যা স্কুলগুলিতে সাধারণত শেখানো হয় না? [বন্ধ]


14

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

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

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

যে কোনও পরামর্শের প্রশংসা করা হয়, তবে আপনার যদি কোনও বই মনে থাকে তবে দয়া করে জানান। ধন্যবাদ!


8
এই সাইটটিতে বিভিন্নভাবে এই প্রশ্নটি বহুবার জিজ্ঞাসা করা হয়েছে। দয়া করে প্রথমে অনুসন্ধান করুন এবং তারপরে জিজ্ঞাসা করুন। এফএকিউ এ একবার দেখুন; প্রোগ্রামার.সটাকেক্সচেঞ্জ / প্রশ্ন / 149970/… ; প্রোগ্রামার্স.স্ট্যাক্কেঞ্জঞ্জ
প্রশ্নগুলি

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

+1 পুরো সময়ের প্রোগ্রামার বেকিং করার আগে যে দক্ষতাটি আমি আয়ত্ত করতে পারতাম তা হল শক্তিশালী গণিত দক্ষতা কারণ ম্যাথ দক্ষতাগুলি সবচেয়ে গুরুত্বপূর্ণ দক্ষতা হিসাবে তর্কযোগ্য কারণ এটি মনের সমস্যাগুলি সমাধান করতে এবং নতুন ধারণা এবং প্রোগ্রামার হিসাবে শেখার জন্য প্রশিক্ষিত করে, আমি প্রতিদিন যা করতাম তা বেশিরভাগই।
অ্যান্টনি

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

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

উত্তর:


21

স্কুলে, আপনি কোড লেখার বিষয়ে শিখেন। আপনি যা শিখেন না তা হ'ল বাকী বিকাশকারী সফটওয়্যার। স্কুলে আমি কখনই কিছুই জানতে পারি নি সেগুলি হ'ল:

  • একটি উন্নয়ন দলের অংশ হিসাবে কাজ
  • সংস্করণ নিয়ন্ত্রণ ব্যবহার
  • একটি বাগ ট্র্যাকার ব্যবহার

এগুলি যে কোনও বিকাশকারীর পক্ষে খুব গুরুত্বপূর্ণ দক্ষতা এবং দুর্ভাগ্যক্রমে আপনি এগুলি ক্লাসরুমে পাওয়ার সম্ভাবনা নেই।


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

1
@ চার্লসই.গ্রান্ট সংস্করণ নিয়ন্ত্রণ প্রোগ্রামিংয়ের অনুরূপ যে আপনি তুলনামূলকভাবে স্বল্প সময়ের মধ্যে বেসিকগুলি নামিয়ে আনতে পারেন তবে কার্যকরভাবে এটি ব্যবহার করতে অভিজ্ঞতা লাগে। এবং ডিভিসিএস যেমন গিট এবং মার্কুরিয়াল এসভিএন এর মতো সিভিসিএসের চেয়ে বেশি বোঝে।
ইজকাটা

8
প্রতিষ্ঠিত কোড বজায় রাখার বিষয়ে আমার কখনই ক্লাস ছিল না (যা কোনও উন্নয়ন দলের অংশ হিসাবে কাজ করার একটি প্রধান অংশ) এবং কোড পরীক্ষার পদ্ধতি সম্পর্কে আমার ক্লাসরুমের অভিজ্ঞতাটি ন্যূনতম ছিল।
Velociraptors

1
@ চার্লস.গ্রান্ট: আমি বেশ কয়েক বছর ধরে প্রোগ্রামিং এবং সম্পর্কিত বিষয়ে স্নাতক স্তরের কোর্স শিখিয়েছি। এমনকি গ্র্যাজুয়েট শিক্ষার্থীরা কেন কোনও ধরণের পুনর্বিবেচনা নিয়ন্ত্রণ ব্যবস্থা ব্যবহার করা উচিত তা বোঝার জন্য তাদের খুব কষ্ট হয়। এবং যখন তারা কুরুচিপূর্ণভাবে এটি ব্যবহার শুরু করে, তারা খুব দ্রুত এটির দ্বারা খুব বিভ্রান্ত হয়ে পড়েছে বলে মনে হয়। মেসনকে একটি গুরুত্বপূর্ণ চালিত বিষয়হীন বিষয় হিসাবে তুলে ধরার জন্য এটি +1 করুন।
পিটার কে।

1
+1 +1 +1, প্রতিটি পয়েন্টের জন্য একটি। এটি এত বোকা যে তারা আপনাকে এই জিনিসগুলি শেখায় না ... বা আপনাকে শেখানোর জন্য কমপক্ষে ট্রাই করুন।
রাদু মুর্জিয়া

20

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

একজন বিকাশকারী হিসাবে আপনি যে সফ্টওয়্যারটিতে কাজ করছেন সে সম্পর্কিত ব্যবসায়ের অংশগুলিতে আপনার প্রধান ভূমিকা রয়েছে।

যদি আপনার সংস্থা তাদের কোডের জন্য পরীক্ষাগুলি না লিখেন, এখনই পরীক্ষাগুলি লেখা শুরু করুন।

যদি তারা বাগগুলি অনুসরণ না করে তবে এখনই একটি উপযুক্ত বাগ ট্র্যাকার সন্ধান করুন।

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

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


9

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

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

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


পরীক্ষার অংশের জন্য +1। আমার বিশ্ববিদ্যালয়ে, তারা এটি শেখায় না। আমার 1 টি ক্লাস ছিল (হ্যাঁ: এক) যেখানে শিক্ষক ইউনিট পরীক্ষার কথা উল্লেখ করেছিলেন ... প্রায় 3 মিনিটের জন্য। এটাই.
রাদু মুর্জিয়া

আমি জানি এটি একটি দেরিতে প্রতিক্রিয়া তবে এটি ছিল এমন এক জিনিস যা আমার নিয়োগকর্তাদের কাছে আমার গণিতের ডিগ্রিটিকে আবেদন করে। এই মতামতটি অবশ্যই নিয়োগকারীদের মধ্যে ভাগ করা হয়েছে।
এরিক

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

হুমমম .... আপনার উত্তরটি আমি যা अनुभव করেছি তার থেকে বেশি বিপরীত হতে পারে না। স্কুলের পুরো বিষয়টি হ'ল একটি পটভূমি দেওয়া যাতে আপনি কার্যকরভাবে কোনও সমস্যা অধ্যয়ন করতে পারেন, এটি বুঝতে এবং সমাধান নিয়ে আসতে পারেন। একটি নতুন গ্রেড স্কুল থেকে তাজা এটি এ "ভাল" নাও হতে পারে তবে তারা অবশ্যই প্রশিক্ষিত এবং এটির জন্য সক্ষম হওয়া উচিত। আমার স্কুলে তারা প্রোগ্রামিং শেখায় না মোটেই। কোর্সটি আপনাকে শেখানোর চেষ্টা করছিল এমন তথ্য শেখার সময় আপনি কীভাবে প্রোগ্রাম করবেন (নিজে থেকেই) শিখবেন বলে আশা করা হয়েছিল। আপনি যেখানে পেয়েছেন কেবল সেখান থেকে "কোডিংয়ের মেকানিক্স" শেখানো আমার বাইরে ...
ডান্ক

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

7

আমার মতে স্কুলে শিখে না আসা (বা সঠিকভাবে শেখা) কয়েকটি গুরুত্বপূর্ণ বিষয় হ'ল:

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

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


ওরফে "প্রোগ্রামিং" কেবল একটি প্রোগ্রামিংয়ের ভাষা জানা নয়, সেখানে একটি "এনভায়ারোমেন্ট", "বাস্তুতন্ত্র", "কাঠামো" রয়েছে ...
ইউলক্যাট

4

আমি নতুন গ্র্যাজুয়েটদের থেকে সবচেয়ে বড় জিনিসটি হারিয়ে যাচ্ছি তা হ'ল সংস্করণ নিয়ন্ত্রণের একটি ভাল বোঝা।

সোর্স কোড রিপোজিটরিগুলি ( গিটহাবের মতো ) ব্যবহার করে যদি আপনার ওপেন সোর্স সফ্টওয়্যার বিকাশের অভিজ্ঞতা থাকে তবে আপনি mostআপনার সহপাঠী সাথীদের থেকে এক ধাপ এগিয়ে are

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

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


1
আমি মনে করি সংস্করণ নিয়ন্ত্রণ শিক্ষার অভাব পরিবর্তন হতে শুরু করেছে। সংস্করণ নিয়ন্ত্রণ আমার স্কুলে ভারী চাপ দেওয়া হয়েছিল।
দক্ষিণপা হরে

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

3

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

বেশিরভাগ কম্পিউটার সায়েন্স গ্র্যাজুয়েটরা ডিবাগিংয়ের ক্ষেত্রে অত্যন্ত দরিদ্র, এবং - ফলস্বরূপ - প্রয়োজনের তুলনায় জিনিসগুলি ঠিক করতে আরও বেশি সময় নেয় এবং এটি করার সময় আরও বাগ তৈরি করে।

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


2

সত্যিকারের প্রোগ্রামার হওয়ার আগে আপনি যে দক্ষতাটি শিখতে পারতেন তা কী?

আমার অভিজ্ঞতায় আমার স্কুল আমাকে কখনই সমস্যাগুলি সমাধান করতে শেখায়নি।

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

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


2

কিছু সাধারণ নকশার ধরণগুলি শিখতে কিছুটা সময় নিন: কারখানা, সিঙ্গলটন, অ্যাডাপ্টার, কমান্ড এবং পর্যবেক্ষক (আমার কলেজ সেগুলি শেখায় নি)।

সংস্থাটি যদি সফটওয়্যার বিকাশের জন্য Agile পদ্ধতি ব্যবহার করে তবে এটি সম্পর্কে কিছুটা বোঝা মূল্যবান হবে।


2

পেশাদার প্রোগ্রামার হিসাবে আপনার প্রয়োজনীয় দক্ষতার অনেকগুলি একটি বিশ্ববিদ্যালয় / একাডেমিক সেটিং-এর প্রতিটি পক্ষে প্রায় অসম্ভব।

তারা সরাসরি ক্ষেত্রে কাজ করার অভিজ্ঞতা থেকে আসতে পারে।

  • গ্রাফিক ডিজাইনার, প্রোডাক্ট ডিজাইনার, ম্যানেজার ইত্যাদির মতো আপনার "পেশার" বাইরের লোকদের সাথে কীভাবে সহযোগিতা এবং যোগাযোগ করবেন তা শিখছেন

  • আপনার কাজ কোড লেখার জন্য নয়, একটি পণ্যকে প্রাণবন্ত করে তোলা Unders বলা সহজ করা কঠিন।

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

  • নিজের দুর্বলতা এবং নিরাপত্তাহীনতা কাটিয়ে উঠতে শেখা। সমালোচনা সহ্য করার ক্ষমতা অর্জন করা। আপনার অহং থেকে যেতে দেওয়া। ব্যক্তিগত দায়িত্ব গ্রহণের অর্থ কী তা শিখুন এবং তারপরে এটি গ্রহণ করুন।

এই সমস্ত সম্পর্কে পড়া সহজ। বাস্তবে এটি অনুশীলন করা একেবারে আলাদা জিনিস। একমাত্র উপায় হ'ল এটি করা। আপনি অনেক সময় দংশিত হবে, এবং এটি সম্ভবত আঘাত করবে, তবে আপনি এটিকে আরও শক্তিশালী এবং আরও ভাল করে বেরিয়ে আসবেন।

প্রাসঙ্গিক পড়া: শিক্ষানবিশ প্যাটার্নস


1

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

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

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


1
  • প্রয়োজনীয়তা - তাদের ভুল পেতে এবং বিশ্রামটি বেশিরভাগ ক্ষেত্রেই অপচয় waste
  • অগ্রাধিকার (যা প্রকাশিত বৈশিষ্ট্য)
  • বাক্স তৈরি বা ব্যবহারের বাইরে (কিনুন / ফ্রিওয়্যার)
  • দলবদ্ধভাবে সম্পাদিত কর্ম
  • প্রকল্প পরিচালনা - প্রয়োজনীয়তা, গুণমান (প্রোডে ডেটা স্যাম্পল, পরীক্ষার কেস, কীভাবে পরীক্ষা করা যায়, আপনার কোডের আগে কভারেজ, ব্যয়ের মতো আরও কিছু রয়েছে তবে প্রাসঙ্গিক নয় a একটি পিএমআই বই পড়ুন
  • যোগাযোগ সরঞ্জাম (মেল, সভা: ক্যালেন্ডার পরিকল্পনাকারী)
  • উত্স কোড পরিচালনা

0

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

[জিকুয়েরি সত্যই শক্তিশালী হওয়ার আগে, জাভাতে সার্টিফিকেট পাওয়া এবং কখনও জাভা পজিশন পাওয়ার আগে এবং একাধিক প্ল্যাটফর্ম জুড়ে কাজ করার পরে 4 বা 5 টি বিভিন্ন জাভাস্ক্রিপ্ট 'ফ্রেমওয়ার্ক' এর মতো এবং তার পরেও প্রতিফলিত হয়; AS400- আরপিজি,> নেট - সি #, এবং পিএইচপি, ইচ্ছা করার পূর্বে আমি কেবল ফটোশপ আয়ত্ত করতে পেরেছি এবং বাগগুলি ঠিক করতে বা সফ্টওয়্যার না লিখে সমান অর্থোপার্জন করতে পারি। ]

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


2
হ্যাঁ, তবে এই ধরণের বিশেষজ্ঞ কখনও তাদের নিজস্ব দোকান খুলতে পারবেন না। যদি আপনার স্বপ্নটি ভবিষ্যতে কোনও সময় আপনার নিজের স্টার্টআপের সিইও হতে হয় তবে আপনার দক্ষতার একটি বিশাল অ্যারের প্রয়োজন হবে।
Žড্রালো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.