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

درمیانی درجے کا ڈویلپر کون ہے؟
درمیانی درجے کا ڈیولپر نسبتاً تجربہ کار پروگرامر ہے جس نے پہلے ہی اس پیشے میں کم از کم 2-4 سال گزارے ہیں۔ ان سالوں میں ایک ناتجربہ کار اور غیر یقینی تازہ کوڈر کو ایک مضبوط مکمل طور پر کام کرنے والے پروگرامر میں تبدیل کر دینا چاہیے تھا جو اپنا کوڈ لکھ سکے اور ٹیم کے سینئر ممبران سے مدد طلب کیے بغیر حل تلاش کر سکے۔ مڈ لیول دیو عام طور پر کسی بھی سافٹ ویئر ڈویلپمنٹ "آرمی" میں ایک مرکزی اکائی ہوتا ہے، کیونکہ درمیانی درجے کے کوڈر وہ ہوتے ہیں جو کسی بھی پروجیکٹ پر پروگرامنگ کے کام کا بنیادی حصہ کرتے ہیں۔ کم تجربہ کار جونیئر ڈویلپرز کے برعکس، درمیانی درجے کے کوڈرز کو زیادہ مدد یا نگرانی کی ضرورت نہیں ہوتی، وہ خود مختاری سے ہر کام کرنے کے قابل ہوتے ہیں، اور، پروجیکٹ میں استعمال ہونے والے کوڈ اور ٹیکنالوجیز کی واضح سمجھ رکھنے کے ساتھ، زیادہ ذمہ داریاں ہوتی ہیں۔ مثال کے طور پر، اگر جونیئر کی بنیادی توجہ کوڈ لکھنے پر ہے جو کام کرے، سادہ اور آسان، تو درمیانی سطح کے کوڈر کو بھی چیزوں کے بارے میں سوچنے کی ضرورت ہے جیسے یہ یقینی بنانا کہ کوڈ واضح طور پر قابل فہم ہے اور معیار کے معیارات اور پروجیکٹ کی ضروریات کے مطابق لکھا گیا ہے۔ عام طور پر، کسی بھی سافٹ ویئر کے کوڈ بیس کی اکثریت درمیانی سطح کے پروگرامرز کے ذریعہ لکھی جاتی ہے۔ بلاشبہ، ہمیشہ کی طرح جب ٹیک انڈسٹری میں پیشوں اور مہارتوں کے بارے میں بات کرتے ہیں، تو یہ بات قابل ذکر ہے کہ درمیانی درجے کے کوڈرز (جیسا کہ جونیئرز یا سینئر ڈیو) وہ جس کمپنی میں کام کر رہے ہیں اس کے لحاظ سے کافی مختلف تجربہ اور ذمہ داری ہو سکتی ہے۔ "بیرونی نقطہ نظر سے، 3-5 سال کا تجربہ آپ کو درمیانے درجے کا بنا دیتا ہے۔ ایک تنظیم کے اندر سے، آپ کوڈنگ کے ساتھ بھروسہ کرنے کے مقام پر ہیں لیکن چھوٹے سے درمیانے درجے کے پروجیکٹس کی کلائنٹ کی بات چیت اور ملکیت بہت کم ہے۔ میں نے ایسے معاملات دیکھے ہیں جہاں سینئر سطح کے ڈویلپرز درمیانی سطح پر رہنے کو ترجیح دیتے ہیں کیونکہ آپ بنیادی طور پر پروجیکٹ مینیجرز اور کلائنٹس سے نمٹنے کی ضرورت کے بغیر کوڈنگ کر رہے ہیں،" لیوس ناکاؤ کہتے ہیں، ایک تجربہ کار سافٹ ویئر ڈویلپر اور کوڈنگ کیریئر کنسلٹنٹ ۔درمیانی درجے کے ڈویلپر کی کیا ذمہ داریاں ہیں؟
اب آئیے درمیانی درجے کے ڈیولپر کی کچھ سب سے عام اور عام ذمہ داریوں کے بارے میں مزید تفصیل سے بات کرتے ہیں۔- کوڈ لکھنا اور برقرار رکھنا۔
- پراجیکٹ کوڈ میں کوڈنگ کے بہترین طریقوں کا تجزیہ اور نفاذ۔
- پروجیکٹ کی تکنیکی ضروریات کا تجزیہ کرنا اور کوڈ کو ان کے مطابق ڈھالنا۔
- موجودہ منصوبوں میں نظر ثانی کے لیے علاقوں کی نشاندہی اور ترقی کرنا۔
- سافٹ ویئر ٹیسٹوں کو انجام دینا اور نافذ کرنا۔
- سافٹ ویئر پروجیکٹس کے لیے کوالٹی اشورینس کے طریقہ کار کو تیار کرنا۔
- صارفین کی ضروریات کے ساتھ ساتھ ڈیزائنرز، QA ٹیسٹرز، اور سافٹ ویئر ڈویلپمنٹ ٹیم کے دیگر اراکین کی ضروریات کا تجزیہ کرنا۔
- کوالٹی اشورینس کے طریقہ کار کو تیار کرنا۔
- کوششوں کو مربوط کرنا اور دوسرے ڈویلپرز، ڈیزائنرز، سسٹم اور کاروباری تجزیہ کاروں وغیرہ کے ساتھ تعاون کرنا۔
- مزید کام اور دیکھ بھال کے لیے ترقیاتی عمل کے ہر حصے کی دستاویز کرنا۔
درمیانی درجے کے ڈویلپر کے لیے تقاضے
یہ ایک درمیانے درجے کے ڈیولپر کے لیے سب سے عام اور عام تقاضوں کی فہرست ہے جو آپ کو یہ نوکری حاصل کرنے کے لیے پوری کرنی چاہیے۔ یقیناً، تقاضے کمپنی کی خدمات حاصل کرنے کی پالیسیوں، پراجیکٹ پر استعمال ہونے والی ٹیکنالوجیز، اور ڈویلپر کی پروگرامنگ زبان کے لحاظ سے مختلف ہوں گے۔ ظاہر ہے، ہم درمیانی سطح کے جاوا ڈویلپرز کے لیے مخصوص ضروریات پر توجہ مرکوز کریں گے۔- جاوا ڈویلپر کے طور پر کم از کم دو سے تین سال اور کم از کم کئی مختلف سافٹ ویئر پروجیکٹس پر کام کرنے کا تجربہ۔
- جاوا ایپلیکیشنز کو ڈیزائن کرنے، پروگرام کرنے، لاگو کرنے اور برقرار رکھنے کے طریقے کے بارے میں مکمل معلومات۔
- یہ جاننا کہ ہائی والیوم اور کم لیٹنسی سسٹم کو کس طرح پروگرام کرنا ہے جس کا مطلب بڑے پیمانے پر ہے۔
- ویب پروجیکٹس (Maven، Gradle) بنانے کے لیے فریم ورک، انٹرپرائز پروجیکٹس کے لیے فریم ورک (Spring، Hibernate، Spring Boot)، یونٹ ٹیسٹنگ کے لیے ٹولز (JUnit، Mockito) وغیرہ کا ٹھوس علم۔
- ترقیاتی لائف سائیکل کے تمام مراحل میں حصہ ڈالنے کی صلاحیت۔
- اعلیٰ معیار، موثر، اور آسانی سے قابل جانچ کوڈ لکھنے کی صلاحیت۔
- سافٹ ویئر کے تجزیہ، جانچ، اور جاوا کوڈ کو ڈیبگ کرنے سے اچھی طرح واقف ہونا۔
- جاوا اور جاوا ای ای ایپلی کیشن ڈویلپمنٹ کے انتظام میں تجربہ کار۔
- متبادل طریقوں کے ساتھ آنے اور نئی ٹیکنالوجیز کو لاگو کرنے کے قابل۔
- تکنیکی اور غیر تکنیکی دونوں گاہکوں کے ساتھ واضح اور مختصر طور پر بات چیت کرنے کی صلاحیت۔
GO TO FULL VERSION