AI دور میں سافٹ ویئر انجینئرنگ کی ایک نئی تعریف

اگر آپ آج سافٹ ویئر ڈویلپر ہیں، تو مصنوعی ذہانت (AI) کے شور اور آپ کی صنعت پر اس کے اثرات سے بچنا تقریباً ناممکن ہے۔ جب آپ صبح کے وقت X یا LinkedIn کو کھولتے ہیں، تو زیادہ تر پوسٹس ٹیک لی آف کے بارے میں خوفناک پوسٹس ہوتی ہیں۔

تھوڑا آگے سکرول کریں اور کوئی یہ دعوی کر رہا ہے کہ پچھلے ہفتے جاری کردہ نئے AI ٹولز نے پہلے ہی جونیئر ڈویلپرز کو متروک کر دیا ہے۔ یوٹیوب پر جائیں اور آپ کو تھمب نیلز چیختے ہوئے نظر آئیں گے کہ تمام ٹیکنالوجی ختم ہو چکی ہے اور تمام ڈویلپر کا کام ختم ہو چکا ہے، جبکہ ساتھ ہی یہ دعویٰ بھی ہو گا کہ ایک سولو انٹرپرینیور نے AI ایجنٹ کا استعمال کرتے ہوئے 5 منٹ میں ایک ملین ڈالر کی فل اسٹیک ایپ بنائی ہے۔

کسی وقت آپ مغلوب ہونے لگتے ہیں۔ آپ ایک رات کچھ سیکھنے، کچھ بنانے میں گزارنے کے بعد سوال اور شک کرنا شروع کر دیتے ہیں۔ مجھے حیرت ہے کہ کیا میں نے پروگرامنگ زبان یا فریم ورک میں مہارت حاصل کرنے کے لیے جو کوشش کی ہے وہ اب بھی معنی خیز ہے۔ آپ اپنے آپ سے بہت غیر آرام دہ سوالات پوچھنا شروع کر دیتے ہیں۔کیا میرا کیریئر ابھی تک محفوظ ہے؟"

یہ تشویش درست ہے۔ حوصلہ افزا الفاظ یا زہریلے مثبتیت کے ساتھ خدشات کو مسترد کرنے کے بجائے، آئیے حقیقت کو دیکھیں۔ صنعت بنیادی طور پر بدل رہی ہے۔ بھرتی کے انداز بدل رہے ہیں۔ جونیئر اور سینئر ڈویلپرز دونوں کے لیے توقعات تیزی سے بڑھ رہی ہیں۔ اور ہاں، یہ ہے. AI ان تمام تبدیلیوں کو تیز کرنے والا کلیدی اتپریرک ہے۔

لیکن کیا ہو رہا ہے اس کے بارے میں ایک بہت بڑی غلط فہمی ہے۔ اس کہانی میں کہ "AI ڈویلپرز کی جگہ لے رہا ہے” میں بہت زیادہ مادے کی کمی ہے۔ کیونکہ یہ واضح کرنے میں ناکام ہے کہ اصل میں کیا ہو رہا ہے، اس نے غیر ضروری خوف پیدا کر دیا ہے۔

بہت سے ڈویلپرز ان تفصیلات کی وضاحت کے لیے آگے نہیں آتے، کیونکہ ہمارا ایک اہم حصہ اب بھی مشاہدہ کر رہا ہے اور کچھ اپنے خوف کو ذاتی فائدے میں بدل رہے ہیں۔

ٹھیک ہے، یہاں میرے خیالات ہیں: AI تمام سافٹ ویئر انجینئرز کی جگہ نہیں لے گا۔ یہ کچھ خاص قسم کے کاموں کی جگہ لے رہا ہے۔ نچلی سطح، اوسط، معمول پر عملدرآمد کے کاموں کو AI سے زیادہ تیزی سے تبدیل کیا جا رہا ہے جس کا کوئی تصور بھی نہیں کر سکتا تھا۔ نتیجے کے طور پر، ہمیں یہ سوچنا پڑا کہ آج کی مارکیٹ میں سافٹ ویئر انجینئر ہونے کا کیا مطلب ہے۔

یہ مضمون اسی سوچ کے عمل کے بارے میں ہے۔ ہم بدلتے ہوئے سافٹ ویئر ڈویلپمنٹ لینڈ سکیپ، کوشش پر مبنی انجینئرنگ سے اثر پر مبنی انجینئرنگ میں تبدیلی، اور AI- فعال کوڈنگ کے دور میں متعلقہ رہنے میں آپ کی مدد کرنے کے لیے ایک عملی، قابل عمل روڈ میپ کا گہرائی سے جائزہ لیتے ہیں۔

انڈیکس

  1. ٹیوٹوریل سے چلنے والے دور کا خاتمہ

  2. آئیے اس افسانے کو دور کریں کہ "AI ملازمتیں چوری کر رہا ہے”

  3. صاف فن تعمیر کا اطلاق کریں۔

  4. عملی AI دور انجینئرنگ روڈ میپ

  5. ذہنیت میں ایک ضروری تبدیلی

  6. اگر آپ نے ابھی تک یہ پڑھا ہے…

ٹیوٹوریل سے چلنے والے دور کا خاتمہ

آئیے ایک لمحے کے لیے ایک قدم پیچھے ہٹتے ہیں اور دیکھتے ہیں کہ ہم میں سے اکثر نے پچھلی دہائی یا اس سے زیادہ عرصے میں سافٹ ویئر تیار کرنے کا طریقہ سیکھا ہے۔

2010 سے 2023 تک، انڈسٹری ٹیوٹوریل سے چلنے والے ڈویلپرز سے بھری ہوئی تھی۔ ہم نے مرحلہ وار ہدایات پر عمل کرتے ہوئے سافٹ ویئر بنانے کا طریقہ سیکھا۔

TODO ایپس، ویدر ڈیش بورڈز، اور YouTube یا Spotify کلون جیسی ایپلی کیشنز کی ڈیولپرز میں بہت زیادہ مانگ تھی۔ اس منصوبے نے ہمیں اعتماد دیا۔ انہوں نے نحو کو یاد رکھنے، لائبریریوں کو استعمال کرنے کا طریقہ سیکھنے، اور بنیادی فرنٹ اینڈ اور بیک اینڈ کو لکھنے کا طریقہ جاننے میں ہماری مدد کی۔

یہ کافی عرصے سے کافی ہے۔ مقصد آسان تھا۔ "کیا آپ کام کرنے والی فل اسٹیک ایپلی کیشن بنا سکتے ہیں؟"

اگر آپ کوڈ لکھ سکتے ہیں، چند APIs سے جڑ سکتے ہیں، اور ایک ورکنگ انٹرفیس بنا سکتے ہیں، تو کمپنیاں آپ کو ملازمت دینے میں خوش ہوں گی۔ وہ جونیئر ڈویلپرز کو سرمایہ کاری کے طور پر دیکھتے تھے۔ ایک توقع تھی کہ تربیت ملنی چاہیے۔ آپ معیاری بوائلر پلیٹ کوڈ لکھیں گے اور کام پر سسٹم کے فن تعمیر کی پیچیدگیاں سیکھیں گے۔ صنعت کے پاس سیکھنے کے منحنی خطوط کے لئے بجٹ اور صبر تھا۔

لیکن جب میں جملے حفظ کر رہا تھا اور Udemy کورسز مکمل کر رہا تھا، اوزار خاموشی سے تیار ہو رہے تھے۔ آج، AI نے اسے دوسری انتہا تک پہنچا دیا ہے۔

زیادہ تر جو ہم دستی طور پر سیکھتے تھے اب AI کے ذریعے سیکنڈوں میں تخلیق، تعاون اور تجویز کیا جا سکتا ہے۔

  • کیا آپ کو شرح محدود اور CORS مربوط کے ساتھ بنیادی ایکسپریس سرور سیٹ اپ کی ضرورت ہے؟ بنایا جا سکتا ہے.

  • React میں لکھا ہوا ایک ریسپانسیو نیویگیشن بار کی ضرورت ہے؟ مدد دستیاب ہے۔

  • کیا آپ کو اپنی کمپنی کا ڈیٹا حاصل کرنے کے لیے معیاری SQL سوالات کی ضرورت ہے؟ تجویز کیا جا سکتا ہے.

اگر کوئی مشین تیزی سے، سستی اور معقول حد تک کچھ کر سکتی ہے، تو وہ خاص کام نوکری کی منڈی میں اب کوئی فرق کرنے والا عنصر نہیں ہے۔ لہذا جب لوگ کہتے ہیں کہ AI جونیئر ڈویلپرز کی جگہ لے رہا ہے، تو ان کا مطلب یہ ہے کہ AI نے سطحی سطح کے ان کاموں کو خودکار کر دیا ہے۔

تو کیا اس کا مطلب ہے کہ ڈویلپرز کی مزید ضرورت نہیں ہے؟ نہیں، اس کا مطلب ہے کہ ہمارے کام کی قدر اسٹیک کو اوپر لے گئی ہے۔ ٹوڈو ایپ بنانا، ویدر ڈیش بورڈ، یا ویب سائٹ کلون اب پورٹ فولیو آئٹم نہیں ہے۔ یہ صرف ایک وارم اپ ہے۔

آئیے اس افسانے کو دور کریں کہ "AI ملازمتیں چوری کر رہا ہے”

روایتی طور پر، سافٹ ویئر انجینئرز کو ضروریات فراہم کی جاتی تھیں۔ اس کا مطلب تھا کوڈ لکھنا اور اس بات کو یقینی بنانا کہ اس نے کام کیا۔ سافٹ ویئر انجینئر کی قدر کاموں کو انجام دینے سے منسلک ہے۔ انٹرویو میں کوشش اور یادداشت پر بھی زور دیا گیا۔

  • کیا شروع سے منسلک فہرست بنانا ممکن ہے؟

  • کیا آپ یہ تعین کر سکتے ہیں کہ آیا یہ متن ایک پیلینڈروم ہے؟

  • کیا آپ نمبروں کی اس صف میں ڈپلیکیٹ نمبر تلاش کر سکتے ہیں؟

وہ ڈویلپرز جنہوں نے مسئلہ کے بیانات کا تجزیہ کرنے، دستی طور پر اہم مسائل کو ڈیبگ کرنے، اور سورس کوڈ کی ہزاروں لائنیں خود لکھنے میں لمبے گھنٹے گزارے انہیں وقف اور قابل قدر ملازمین سمجھا جاتا تھا۔

آج کل صرف محنت ہی کامیابی کا پیمانہ نہیں رہی۔

اگر آپ ریگولر ایکسپریشنز یا معیاری تصدیقی بہاؤ لکھنے میں گھنٹوں صرف کرتے ہیں جو دو منٹ میں AI ایجنٹ کو اپنے پاؤں پر کھڑا کر سکتا ہے، تو انڈسٹری آپ کو چھ گھنٹے کی محنت کا صلہ نہیں دیتی۔ صنعت پوچھتی ہے، "مشین نے جو کچھ پیدا کیا اس سے بڑھ کر کیا قدر بڑھائی؟"

یہ ایک غیر آرام دہ سچ ہے، لیکن اسے قبول کرنا آپ کے کیریئر میں ایک اہم موڑ ثابت ہوسکتا ہے۔ ایک بار جب آپ یہ قبول کر لیتے ہیں کہ AI کوڈ لکھ سکتا ہے، تو آپ کی ذہنیت بدل جاتی ہے۔ آپ یہ قبول کرنا شروع کر دیتے ہیں کہ اب آپ کو یہ فکر کرنے کی ضرورت نہیں ہے کہ یہ کتنی تیزی سے چلتا ہے۔ System Composition اور Abstract Thinking.

اگر آپ آج فرنٹ اینڈ ڈویلپر ہیں، تو آپ فگما ڈیزائن کو پکسل پرفیکٹ ری ایکٹ اجزاء میں تبدیل کرنے تک محدود نہیں ہیں۔ ایک AI کوڈنگ اسسٹنٹ اس کام کا 80% کچھ تعمیری اشارے کے ساتھ کر سکتا ہے۔ ایک فرنٹ اینڈ ڈویلپر کے طور پر، آپ کی ملازمت کے کردار کی توقعات اب اس میں تبدیل ہو گئی ہیں:

  • سسٹم کیسے کام کرے گا اگر وہ UI بیک اینڈ سے منسلک ہو اور 10,000 صارفین بیک وقت لاگ ان ہوں؟

  • فرض کریں کہ آپ کے گاہک کے پاس سروس لیول کا معاہدہ (SLA) ہے جس کے لیے سست 4G نیٹ ورک پر 1.2 سیکنڈ کے اندر تمام ڈیٹا ڈیش بورڈ پر، تیز 4G نیٹ ورک پر 500 ms، اور 5G نیٹ ورک پر 12 ms کی ضرورت ہوتی ہے۔ اس کو پورا کرنے کے لیے آپ Next.js ایپلیکیشن کیسے ڈیزائن کرتے ہیں؟

  • کیا آپ سرور سائیڈ رینڈرنگ، سٹیٹک جنریشن، یا ایج کیشنگ کا صحیح طریقے سے فائدہ اٹھا رہے ہیں؟

  • اسکرین ریڈرز کی بنیاد پر آپ کی ایپلیکیشن صارفین کے لیے کیسی کارکردگی دکھائے گی؟

سورس کوڈ اب ڈیفالٹ آؤٹ پٹ نہیں ہے۔ یہ آپ کی سوچ اور استدلال کا ضمنی پیداوار ہونا چاہئے۔ آپ کو انتہائی معاملات کا اندازہ لگانے کی ضرورت ہے اور، سب سے اہم بات، ان کی ملکیت لینا۔

AI ایک API لکھ سکتا ہے، لیکن یہ ناراض گاہک کے ساتھ میٹنگ میں نہیں بیٹھ سکتا اور وضاحت نہیں کر سکتا کہ ان کا پروڈکشن ڈیٹا بیس کیوں نیچے ہے۔ AI سسٹم کی خرابیوں کے نتائج کا مالک نہیں ہو سکتا۔ یہ ذمہ داری پوری طرح آپ پر ہے۔

صاف فن تعمیر کا اطلاق کریں۔

فرض کریں کہ آپ نے اپنے LLM سے ایک پیچیدہ ایپلیکیشن بنانے کے لیے کہا ہے، جیسے کہ چھانٹی، فلٹرنگ، اور صفحہ بندی کی خصوصیات والا ای کامرس پروڈکٹ ڈیش بورڈ۔ یہ کوڈ تیار کرتا ہے جسے براؤزر میں چلایا اور پیش کیا جا سکتا ہے۔ Bur AI کا ایک بہت ہی انوکھا رجحان ہے کہ یہ یک سنگی بنانا پسند کرتا ہے۔

AI ممکنہ طور پر 1000+ بڑے ری ایکٹ اجزاء کو آؤٹ پٹ کرے گا۔ اسٹیٹ مینجمنٹ، UI رینڈرنگ، ڈیٹا کی بازیافت، اور کاروباری منطق ایک ہی فائل میں ایک ساتھ بندھے ہوئے ہیں۔ یوں تو تکنیکی طور پر یہ براؤزر میں کام کرے گا، لیکن اس کی جانچ، دیکھ بھال اور اسکیل کرنا ایک ڈراؤنا خواب ہوگا۔

یہ وہ جگہ ہے جہاں انسانی سافٹ ویئر انجینئر کھیل میں آتے ہیں۔ جدید انجینئر صاف کوڈ کے اصولوں اور ڈیزائن کے نمونوں کو سمجھتے ہیں۔ یک سنگی AI آؤٹ پٹ کو آنکھ بند کر کے قبول کرنے کے بجائے، انجینئرز React اجزاء کی LEGO اینٹوں کی تعمیر کے حوالے سے سوچتے ہیں۔

ایک اچھا انجینئر ضروریات کو دیکھے گا اور سوچے گا، "آپ کو ہر چیز کو ایک فائل میں نہیں ڈالنا چاہیے۔ یہاں، آئیے UI کو لچکدار بنانے کے لیے کمپوزٹ کمپوننٹ پیٹرن کا استعمال کرتے ہیں۔ لے آؤٹ میں سوراخ بنانے کے لیے سلاٹ پیٹرن کا استعمال کریں تاکہ اس جزو کے صارفین بنیادی منطق کو توڑے بغیر اپنے حسب ضرورت عناصر میں گزر سکیں۔”

تجریدی سوچ کا اطلاق کریں۔ آپ سے ایک آرکیٹیکچرل سوال ہے:

  • آپ ضمنی اثرات اور ڈیٹا کی درآمدات کا انتظام کیسے کر رہے ہیں؟

  • کیا میں بعد میں صرف ایک چھوٹی کوڈ کی تبدیلی کے ساتھ اپنے ادائیگی فراہم کنندہ کو تبدیل کر سکتا ہوں؟

  • اگر صارف فلٹر کرنے کے دوران نیٹ ورک نیچے چلا جائے تو کیا ہوگا؟

AI ہمیں ننگی دھات کا خام مال فراہم کرتا ہے۔ ہمیں اس کی پیداوار کو تیار کرنے کے لیے انجینئرنگ کے اصول فراہم کرنے کی ضرورت ہے۔

عملی AI دور انجینئرنگ روڈ میپ

اب یہ سوچنے کا وقت ہے کہ ٹیوٹوریل فوکسڈ ڈویلپرز اور اثر پر مرکوز جدید انجینئرز کے درمیان فرق کو کیسے ختم کیا جائے۔ یہاں ایک عملی، قدم بہ قدم روڈ میپ ہے۔

مرحلہ 1: اپنی بنیاد کو مضبوط کریں۔

اگر آپ اس کے تیار کردہ کوڈ کو نہیں سمجھتے ہیں تو آپ AI کو مؤثر طریقے سے استعمال نہیں کر سکتے۔ ماضی میں، فریم ورک کا سطحی علم ہی چیزوں کو انجام دینے کے لیے کافی تھا۔ ہوسکتا ہے کہ آپ اس کے "اندرونی” پہلو کو جانے بغیر اس سے دور ہو گئے ہوں۔

آج، AI خلاصہ فریم ورک. اگر آپ کو نیچے پریشانی ہو رہی ہے، تو آپ اصل مسئلے سے کئی قدم دور ہیں۔ ٹھوس بنیادی معلومات رکھنے سے آپ کو ان حالات سے نمٹنے میں مدد ملے گی اور AI کے ساتھ کام کرنا مزید پرلطف ہوگا۔

آپ کو کمپیوٹر سائنس اور ویب ٹیکنالوجیز کے بنیادی اصولوں کو گہرائی میں کھودنے کی ضرورت ہوگی۔

  • انٹرنیٹ کیسے کام کرتا ہے؟ نیٹ ورکنگ کی بنیادی باتوں کو سمجھیں۔

  • جاوا اسکرپٹ وعدے لکھنے کا طریقہ نہ سیکھیں۔ ایونٹ لوپ کے بارے میں جانیں۔ سمجھیں کہ کال اسٹیک، مائیکرو ٹاسک قطار، اور میموری مختص کیسے کام کرتے ہیں۔

  • اگر آپ کی ری ایکٹ ایپلیکیشن میں میموری لیک ہے، تو AI کو اسے تلاش کرنے میں مشکل پیش آئے گی اگر میموری کا لیک متعدد فائلوں پر پھیلا ہوا ہے۔ آپ کو Chrome DevTools میموری پروفائلر کو استعمال کرنے کا طریقہ جاننا ہوگا۔

  • بے ترتیب الگورتھمک پہیلیاں پر توجہ مرکوز کرنے کے بجائے، اپلائیڈ تجریدی سوچ پر توجہ دیں۔ اگر آپ ایک حقیقی وقت میں تعاون پر مبنی دستاویز کا ایڈیٹر بنا رہے ہیں، تو آپ سمورتی ترمیم کے لیے ڈیٹا ڈھانچے کا نظم کیسے کریں گے؟ ٹیکنیکل انٹرویوز کے دور میں ڈی ایس اے کا اس طرح تجربہ کیا جاتا ہے۔

مرحلہ 2: اصلی (غیر آرام دہ) نظام کی تعمیر

TODO ایپس بنانا بند کریں۔ بنیادی CRUD ایپلی کیشنز بنانا بند کریں جو صرف ایک مثالی لوکل ہوسٹ ماحول میں کام کرتی ہیں۔ ایسا نظام بنانا سیکھیں جو ناکامیوں کو ہینڈل کرے۔

ایک عام ای کامرس کلون بنانے کے بجائے، ایک خودکار ای بُک ڈیلیوری اور ویٹنگ لسٹ سسٹم بنائیں۔ مثال کے طور پر،

  • اسٹیک: فرنٹ اینڈ کے لیے ٹین اسٹیک اسٹارٹ، API کے لیے NestJS، ڈیٹا بیس کے لیے Supabase، ادائیگی کی کارروائی کے لیے Razorpay، سوشل لاگ ان کے لیے Firebase، ای میل بھیجنے کے لیے دوبارہ بھیجیں۔

  • چیلنج:صرف خوش گوار راستے پر چلنے سے مطمئن نہ ہوں۔ اگر صارف کے ادائیگی کرنے کے بعد Razorpay ویب ہک سرور تک پہنچنے میں ناکام ہو جائے تو کیا ہوگا؟ میں دوبارہ کوشش کرنے کا طریقہ کار کیسے نافذ کروں؟ میں اپنے سوپا بیس ڈیٹا بیس کو رو لیول سیکیورٹی (RLS) کا استعمال کرتے ہوئے کیسے محفوظ کر سکتا ہوں تاکہ صارف صرف ان کتابوں کو ڈاؤن لوڈ کر سکیں جن کے لیے انہوں نے ادائیگی کی ہے؟ میں انتظار کی فہرست میں دوہری رجسٹریشن سے کیسے بچ سکتا ہوں؟

جب آپ اس طرح کا نظام بناتے ہیں، تو آپ قدرتی طور پر حقیقی دنیا کے پیچیدہ مسائل سے دوچار ہوتے ہیں۔ اس مسئلے کو حل کرنے سے کمپنیوں کو انجینئرنگ کے عین مطابق ہنر پیدا کرنے میں مدد ملے گی جو وہ آج ملازمت کرنا چاہتے ہیں۔

مرحلہ 3: ڈیبگنگ کی مہارتیں سیکھیں۔

اگر پروڈکشن کے دوران سسٹم کریش ہو جاتا ہے تو گھبراہٹ پھیل جاتی ہے۔ وہ ڈویلپر جو پرسکون رہ سکتے ہیں، الگ الگ مفروضے، مسائل کو ٹریک کر سکتے ہیں اور انہیں ٹھیک کر سکتے ہیں۔

AI الگ تھلگ غلطی کے پیغامات کی وضاحت کرنے میں اچھا ہے، لیکن یہ تقسیم شدہ نظاموں کو آسانی سے ڈیبگ نہیں کر سکتا جہاں بیک اینڈ مائیکرو سروسز میں ریس کے حالات فرنٹ اینڈ اسٹیٹ میں تضادات کا باعث بنتے ہیں۔ آدھی رات کے تیل کو جلانا اور اسے ختم کرنا آپ پر منحصر ہے۔

کسی بھی سطح پر سافٹ ویئر ڈویلپر کے طور پر:

  • اپنے کوڈ میں سٹرکچرڈ لاگنگ کو لاگو کرنے کا طریقہ سیکھیں۔

  • اسٹیک ٹریس کو منظم طریقے سے پڑھنے کا طریقہ سیکھیں۔

  • اپنی درخواست کے دوسرے حصوں میں رجعت پیدا کیے بغیر کارکردگی کی رکاوٹوں کو دور کرنے کی مشق کریں۔

  • ویب وائٹلز (LCP، CLS، INP، وغیرہ) کو سمجھیں اور سست رینڈرنگ صفحات کو کیسے پروفائل کریں۔

مرحلہ 4: AI کو ایک ٹول کے طور پر استعمال کریں، بیساکھی نہیں۔

سب سے پہلے، بلائنڈ کاپی پیسٹ AI کو جواب دینے سے روکیں۔ AI کے ساتھ ناقابل یقین حد تک تیز، پراعتماد، پھر بھی قدرے لاپرواہ جونیئر ڈویلپر کی طرح برتاؤ کریں۔

  • بوائلر پلیٹ میں استعمال کیا جاتا ہے۔: کیا ExpressJS سیٹ اپ کی ضرورت ہے؟ کیا آپ کا زوسٹینڈ اسٹور قائم ہے؟ اسے بنائیں۔

  • اسے تحقیقی مقاصد کے لیے استعمال کریں۔: کیا آپ کچھ نیا سیکھ رہے ہیں جیسے Rust، Go یا Cybersecurity؟ AI سے آپ کی موجودہ پروگرامنگ زبان کے علم کے مطابق 30 دن کا سیکھنے کا روڈ میپ بنانے کو کہیں۔

  • اسے بطور مواد استعمال کریں۔: کیا آپ READ ME فائل لکھنا چاہتے ہیں؟ کچھ ڈرافٹ آئیڈیاز پر غور کرنا چاہتے ہیں؟ AI آپ کا ساتھی ہوسکتا ہے۔

  • اسے سہاروں کے لیے استعمال کریں۔: کیا مجھے یوٹیلیٹی فنکشنز کے لیے یونٹ ٹیسٹ لکھنا چاہیے؟ AI کو اپنے ٹیسٹ سویٹ کو اسپرنگ بورڈ کے طور پر استعمال کرنے دیں۔

ہر بار جب آپ LLM سے کوڈ کو سمجھے بغیر کاپی کرتے ہیں، تو آپ کو انجانے میں تکنیکی قرض اٹھانا پڑتا ہے۔ آپ کا کام پیداوار کے لیے AI کے ردعمل کو زیادہ سے زیادہ بہتر بنانا ہے۔

اگر آپ کسی AI سے پیچیدہ ڈیٹا ایگریگیشن منطق لکھنے اور 72 لائن ریڈوسر فنکشن کو آؤٹ پٹ کرنے کے لیے کہتے ہیں، تو صرف کاپی اور پیسٹ نہ کریں۔ اسے سطر بہ سطر پڑھیں اور اپنے آپ سے پوچھیں: کیا یہ بہترین ہے؟ اس کوڈ کی بگ او ٹائم پیچیدگی کیا ہے؟ کیا آپ اسے مزید پڑھنے کے قابل بنا سکتے ہیں؟

مرحلہ 5: کام کا مضبوط ثبوت قائم کریں۔

آپ کی مہارتوں کی فہرست یا بوٹ کیمپ کا سرٹیفکیٹ آج کی ملازمت کی کارکردگی کا مضبوط ثبوت نہیں ہے۔

کام کا ایک مضبوط ثبوت اس طرح لگتا ہے:

  • یہ ایک گٹ ہب ریپوزٹری ہے جس میں ایک پیچیدہ حقیقی دنیا کی ایپلی کیشن ہے، اس کے ساتھ خوبصورتی سے لکھا ہوا README آرکیٹیکچرل انتخاب کی وضاحت کرتا ہے۔

  • اوپن سورس پروجیکٹ میں ایک بامعنی شراکت جس کے کوڈ کو سینئر مینٹینرز کے ذریعہ سنجیدگی سے جائزہ لینا ضروری ہے۔

  • ایک گہرائی سے تکنیکی مضمون یا LinkedIn پوسٹ لکھیں جس میں بتایا جائے کہ آپ نے ایک مشکل رینڈرنگ بگ کو کیسے حل کیا یا آپ نے اپنے پروجیکٹ کے لیے مخصوص ڈیٹا بیس اسکیما کا انتخاب کیوں کیا۔

  • آپ ایک ایسی چیز بنانے کے لیے ہیکاتھون میں حصہ لیتے ہیں جو ٹرینڈ سیٹنگ ہو، وائرل ہونے کی صلاحیت رکھتا ہو، آمدنی پیدا کر سکتا ہو، یا ان سب کا مجموعہ ہو۔

سائلوس میں کوڈ نہ کریں۔ عوامی سطح پر تعمیر کریں۔ سماجی طور پر اپنے سوچنے کے عمل کی وضاحت کریں۔ اپنے انجینئرنگ خیالات اور فیصلوں کا عوامی طور پر اظہار کرنا آپ کو ان لاکھوں ڈویلپرز سے الگ کرتا ہے جو مکمل طور پر ChatGPT یا دیگر AI ٹولز کے جوابات پر انحصار کرتے ہیں۔

نیچے دیا گیا خاکہ تمام پانچ مراحل کو بصری طور پر پکڑتا ہے تاکہ آپ کسی بھی وقت ان سے رابطہ قائم کر کے دوبارہ دیکھ سکیں۔

آپ یہ تکنیکی فریم اور بہت سے دوسرے ڈاؤن لوڈ کر سکتے ہیں۔ یہاں سے.

ذہنیت میں ایک ضروری تبدیلی

"ہر چیز آپ کے دماغ میں شروع ہوتی ہے اور ختم ہوتی ہے، آپ جو طاقت دیتے ہیں وہ آپ کو کنٹرول کرنے کی طاقت رکھتا ہے۔” – مصنف: لیون براؤن

اگر آپ فی الحال نوکری کی تلاش میں ہیں، تو آپ کو فوری طور پر لوگوں سے پوچھنا بند کرنا ہوگا، "کیا مجھے نوکری مل سکتی ہے؟” غلط سوال۔ اگر کمپنی کے پاس آپ کو ملازمت دینے کی کوئی مجبوری وجہ نہیں ہے، تو اس بات کی کوئی ضمانت نہیں ہے کہ آپ کو نوکری مل جائے گی۔

اس کے بجائے، نوکری کی تفصیل دیکھیں۔ ان کمپنیوں پر ایک نظر ڈالیں جن کی آپ تعریف کرتے ہیں۔ پھر اپنے آپ سے پوچھیں: "آج کے حالات میں آپ مجھے کیوں نوکری پر رکھیں؟"

اگر آپ کے پاس ابھی تک کوئی قائل جواب نہیں ہے، تو ٹھیک ہے! یہ آپ کی بنیادی لائن ہے اور آپ نے مہارت کے فرق کی نشاندہی کی ہے۔ اب آپ کا کام اس خلا کو پر کرنا ہے۔

ہم ایک ایسے مرحلے میں داخل ہو گئے ہیں جہاں سافٹ ویئر انجینئر کی تعریف پہلے سے کہیں زیادہ واضح اور چیلنجنگ ہے۔ معیارات بلند ہیں، لیکن توقعات واضح ہیں۔ اگر آپ اپنانے سے انکار کرتے ہیں اور عمل درآمد کی آسان سطحوں پر قائم رہتے ہیں تو آگے کا راستہ ناقابل یقین حد تک مشکل ہو جائے گا۔ آپ کا مقابلہ AI ٹولز سے ہو گا جو کبھی نہیں سوتے اور ایسے ڈویلپرز جو تین لوگوں کے کام کرنے کے لیے ان ٹولز کا فائدہ اٹھاتے ہیں۔

لیکن اگر آپ تبدیلی کو اپناتے ہیں اور تجریدی سوچ، گہرے بنیادی اصولوں، نظام کی تعمیر، اور حقیقی احتساب کی طرف بڑھتے ہیں، تو مواقع لامتناہی ہیں۔ اب ہر کسی سے مقابلہ نہیں ہے۔ آپ کا مقابلہ ترقی کے چیلنج سے نمٹنے کے لیے تیار ڈویلپرز کی ایک چھوٹی تعداد کے ساتھ ہوگا۔

مستقبل کی سافٹ ویئر انجینئرنگ (پڑھیں: "آج”) ایڈیٹر میں کوڈ نحو ٹائپ کرنے کے بارے میں نہیں ہوگی۔ یہ اس بات کو سمجھنے کے بارے میں ہے کہ آپ کو کیا بنانے کی ضرورت ہے، آپ کو اسے کیوں بنانے کی ضرورت ہے، یہ آپ کے کاروبار پر کیسے اثر انداز ہوتا ہے، اسے پائیداری کے لیے کیسے ڈیزائن کیا جائے، اور چیزوں کو تیزی سے تیز کرنے کے لیے AI کو ایک ٹول کے طور پر کیسے استعمال کیا جائے۔

اگر آپ نے ابھی تک یہ پڑھا ہے…

شکریہ!

میں ایک مکمل اسٹیک سافٹ ویئر انجینئر ہوں جس میں مصنوعات اور لوگوں کی تعمیر میں 20 سال سے زیادہ کا تجربہ ہے۔ فی الحال، میں اپنے سٹارٹ اپ، CreoWis Technologies کو چلا رہا ہوں، اور اپنے یوٹیوب چینل، tapaScript پر ڈویلپرز کی تعلیم اور رہنمائی کر رہا ہوں۔

میں freeCodeCamp پلیٹ فارم پر اپنا 50 واں مضمون شائع کرنے کے لیے بہت پرجوش ہوں، اور مجھے فخر ہے کہ میں ڈویلپر کمیونٹی کو اپنے علم میں حصہ ڈالنے کے قابل ہوں۔ اگر آپ مجھ سے جڑنا چاہتے ہیں،

اگلے مضمون کے ساتھ جلد ملیں گے۔ تب تک، خیال رکھیں اور سیکھتے رہیں۔

اوپر تک سکرول کریں۔