paint-brush
অজনপ্রিয় মতামত: ভালো সফটওয়্যার ইঞ্জিনিয়ার হওয়া আগের চেয়ে কঠিনদ্বারা@jurajmalenica
8,570 পড়া
8,570 পড়া

অজনপ্রিয় মতামত: ভালো সফটওয়্যার ইঞ্জিনিয়ার হওয়া আগের চেয়ে কঠিন

দ্বারা Juraj Malenica5m2023/10/15
Read on Terminal Reader

অতিদীর্ঘ; পড়তে

প্রযুক্তির দ্রুত গলি থেকে বেঁচে থাকা: প্রকৌশলীদের একটি গল্প, হাইপ, এবং একটি পরিবর্তিত বিশ্বে সত্যিকার অর্থে কী গুরুত্বপূর্ণ তার উপর দৃষ্টি নিবদ্ধ করা
featured image - অজনপ্রিয় মতামত: ভালো সফটওয়্যার ইঞ্জিনিয়ার হওয়া আগের চেয়ে কঠিন
Juraj Malenica HackerNoon profile picture
0-item

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


আমার সমবয়সীদের, পরামর্শদাতা এবং আমার নিজের যাত্রার দিকে ফিরে তাকালে, একজন ভাল প্রকৌশলী হওয়া আগের চেয়ে কঠিন বলে মনে হয়।

একজন ভালো প্রকৌশলীকে সংজ্ঞায়িত করা

ইঞ্জিনিয়ার হওয়ার মানে কি? সফ্টওয়্যার ইঞ্জিনিয়ার হিসাবে, আমরা হলাম:

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

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

ভূমিকা দ্বারা কাজ বন্টন

একজন ভালো প্রকৌশলী হওয়ার অর্থ কী? অসংখ্য সাক্ষাত্কারের ভিত্তিতে এবং আমার পরামর্শদাতাদের অগ্রগতি সমর্থন করার ভিত্তিতে, আমি লক্ষ্য করেছি যে বিভিন্ন স্তরের দক্ষতার লোকেরা বিভিন্ন উত্তর দিতে পারে।


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


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


যদিও নিয়মের সর্বদা ব্যতিক্রম আছে, আমরা বলতে পারি যে একজন ভাল প্রকৌশলী হলেন একজন যিনি দক্ষতার সাথে লক্ষ্য অর্জনে সর্বাধিক মূল্য আনতে তাদের প্রচেষ্টাকে ফোকাস করেন।

ক্রমবর্ধমান বাজার এবং প্রতিযোগিতা

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

মোট টেক মার্কেট ক্যাপ

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


মূল নীতি থেকে দূরে সরে গিয়ে – কীভাবে আমরা আমাদের গ্রাহকদের কাছে আরও মূল্য আনতে পারি – এবং হাইপ ট্রেনে প্রতিযোগিতাকে পরাজিত করার দিকে এগিয়ে যাওয়ার মাধ্যমে, আমরা ইঞ্জিনিয়ারদের এমন কার্যকারিতা তৈরি করি যা ব্যর্থ হওয়ার জন্য ধ্বংস হয়ে যায়।

পৃথিবী একটি বিভ্রান্তিকর জায়গা।

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

সমস্ত জাভাস্ক্রিপ্ট লাইব্রেরি

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


কিছু সময় পরে, এটা স্পষ্ট হয়ে গেল যে আমরা একটি হাইপে ছিলাম। এটিও পাস হবে, শুধুমাত্র AI কোম্পানিগুলিকে রেখে যা দীর্ঘমেয়াদী মূল্য তৈরি করছে। মার্কিন যুক্তরাষ্ট্রে গত পাঁচ বছরে AI কোম্পানির সংখ্যা দ্বিগুণ হয়েছে, অনেক স্টার্টআপ সদ্য প্রকাশিত GPT-3-এর উপরে একটি বৈশিষ্ট্য যোগ করেছে। তারা পরে ChatGPT বা GPT-4 প্রকাশের সাথে মারা যাবে, যা একই জিনিস করতে পারে তবে আরও ভাল। কিন্তু এটি টুইটার এবং অন্যান্য প্ল্যাটফর্মের হাইপ আর্মিকে নতুন বিশ্বব্যবস্থা ঘোষণা করা থেকে বিরত করে না।


এমনকি এত বছর প্রযুক্তিতে কাজ করেও, আমি হাইপে চুষে গেছি। রকির ভুল!


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


আমার পরামর্শ হল - নতুন প্রবণতা এবং হাইপ-এ এমন বিন্দুতে জড়িয়ে পড়বেন না যেখানে আপনি মান আনার দিকে মনোযোগ হারাবেন।

দ্রুত গতি এবং উচ্চ প্রত্যাশা

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

ইতিবাচক চাপ বনাম নেতিবাচক চাপ

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


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


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

আমরা কিভাবে ভাল করতে পারি?

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

প্রভাবের মাত্রা

ব্যক্তিগতভাবে, যা সত্যিই গুরুত্বপূর্ণ তার প্রতি সত্য থাকুন। প্রযুক্তি আসবে এবং যাবে, কিন্তু আপনি বিশ্বে যে মূল্য আনবেন তা গণনা করা হয়। কঠোর পরিশ্রম এবং অভিজ্ঞতা জাল করা কঠিন।


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


সাংস্কৃতিকভাবে, দীর্ঘমেয়াদী অপ্টিমাইজ করে কর্মীদের সমর্থন করবে এমন প্রক্রিয়াগুলি স্থাপন করুন। আপনার সহকর্মীদের সাথে একত্রে, বিশ্বাস, সমর্থন এবং যত্নের সংস্কৃতি প্রতিষ্ঠা করুন। এইভাবে, আপনি সবাই একে অপরের সেরা পাবেন।