فیوری روڈ: بلنگ ڈویلپر کا سفر

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

اب میں آپ کو بتاؤں گا کہ میں ایک بلنگ ڈویلپر کی ترقی کا راستہ کیسے دیکھتا ہوں، اور کس ترتیب میں آپ کو پیشہ ورانہ مہارت حاصل کرنے کی ضرورت ہے۔

1. ایک پروگرامنگ زبان سیکھیں۔

شروع کرنے والوں کے لیے، کوئی بھی۔ ترجیح Java, Python اور JavaScript ہے، لیکن Ruby, Go, C, C++ بنیادی معلومات حاصل کرنے کے لیے موزوں ہیں۔ کیسے پڑھائیں؟ بامعاوضہ اور مفت کورسز کریں؛ میں گولانگ سے تربیت کی سفارش کر سکتا ہوں۔ اگر آپ کا انگریزی لیول اجازت دیتا ہے تو، غیر ملکی ویڈیوز دیکھنا ایک اچھی اضافی مہارت ہے۔

فیوری روڈ: بلنگ ڈویلپر کا سفر

2. OS کے تصورات کو سمجھیں۔

آپریٹنگ سسٹم سات اجزاء پر مبنی ہیں جن کے بارے میں آپ کو جاننے اور آپریشن کے اصول کی وضاحت کرنے کے قابل ہونے کی ضرورت ہے:

  • عمل کا انتظام؛
  • تھریڈز اور ملٹی تھریڈ کوڈ؛
  • ساکٹ (سافٹ ویئر انٹرفیس)؛
  • I/O بھیجنا؛
  • ورچوئلائزیشن؛
  • ذخیرہ
  • فائل سسٹمز۔

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

3. ٹرمینل کی عادت ڈالیں۔

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

  • باش اور کورن شیل گولے؛
  • کمانڈز تلاش کریں، grep، awk، sed، lsof؛
  • نیٹ ورک حکم دیتا ہے nslookup اور netstat۔

فیوری روڈ: بلنگ ڈویلپر کا سفر

4. نیٹ ورک اور سیکورٹی

بلنگ کا نیٹ ورک اور ڈیٹا کے تحفظ کی ضروریات سے گہرا تعلق ہے۔ آپ یہ سمجھے بغیر آن لائن خدمات نہیں لکھ سکتے کہ نیٹ ورک کیسے کام کرتا ہے، اس لیے آپ کو بنیادی تصورات اور پروٹوکول سیکھنے کی ضرورت ہے: DNS، OSI ماڈل، HTTP، HTTPS، FTP، SSL، TLS۔ پھر، جب آپ کو کنکشن سے انکار کی غلطی کا سامنا کرنا پڑتا ہے، تو آپ کو معلوم ہو جائے گا کہ کیا کرنا ہے۔

5. سرورز

نیٹ ورک پر معلومات کی ترسیل کے اصولوں کا مطالعہ کرنے کے بعد، آپ سرور کے آپریشن کی بنیادی باتیں شروع کر سکتے ہیں۔ ویب سرورز کے ساتھ شروع کریں: IIS، Apache، Nginx، Caddy اور Tomcat۔

فہرست میں اگلا:

  • ریورس پراکسی؛
  • گمنام پراکسی؛
  • کیشنگ
  • وزن کو متوازن کرنا؛
  • فائر وال۔

6. بنیادی ڈھانچے کو بطور کوڈ سیکھیں۔

مجھے یقین ہے کہ یہ مرحلہ سب سے اہم میں سے ایک ہے۔ آپ کو تین وسیع موضوعات کو سمجھنا ہوگا:

  • کنٹینرز: ڈوکر اور کبرنیٹس
  • کنفیگریشن مینجمنٹ ٹولز: جوابدہ، شیف، نمک اور کٹھ پتلی
  • بیک اپ: ٹیرافارم، بادل۔

7. CI/CD سیکھیں۔

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

8. سافٹ ویئر اور انفراسٹرکچر کنٹرول

کلیدی مقصد ایپلی کیشن مانیٹرنگ کی بنیادی باتوں کو سمجھنا ہے۔ اس علاقے میں ٹولز کو تین گروپوں میں تقسیم کیا گیا ہے:

  • انفراسٹرکچر کی نگرانی: ناگیوس، آئسنگا، ڈیٹا ڈوگ، زیبکس، مانیٹ۔
  • ایپلیکیشن کی کارکردگی کی نگرانی: AppDynanic، New Relic.
  • LMS: ELK Stack، Graylog، Splunk، Papertrail.

9. کلاؤڈ سروسز

مستقبل قریب میں، ہر ایپلیکیشن یا سافٹ ویئر کا کلاؤڈ ہم منصب ہوگا۔ جلد یا بدیر، ڈیولپرز کا سامنا کلاؤڈ سے ہوتا ہے، لہذا مقبول کلاؤڈ فراہم کنندگان (AWS، Google Cloud، اور Azure) اور ٹیکنالوجی کی بنیادی باتیں پڑھیں۔

10. ڈیٹا بیس کے ساتھ کام کرنا

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

11. اپنی نرم مہارتوں کو بہتر بنائیں

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

فیوری روڈ: بلنگ ڈویلپر کا سفر

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

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

ماخذ: www.habr.com

نیا تبصرہ شامل کریں