CodeGym /جاوا بلاگ /Random-UR /سافٹ ویئر ڈویلپر دیما کی کہانی: "کوڈ لکھنا اس کی جانچ سے ...
John Squirrels
سطح
San Francisco

سافٹ ویئر ڈویلپر دیما کی کہانی: "کوڈ لکھنا اس کی جانچ سے کہیں زیادہ دلچسپ ہے"

گروپ میں شائع ہوا۔
ہم جانتے ہیں کہ CodeGym کے طلباء ان لوگوں کی کہانیاں سننا چاہتے ہیں جو پہلے ہی IT میں کام کر رہے ہیں۔ ہم نے معاملات کو اپنے ہاتھ میں لیا ہے اور مختلف ممالک اور کمپنیوں کے ڈویلپرز کے بارے میں ایک سلسلہ شروع کیا ہے، جنہوں نے اپنی جاوا کی تربیت مکمل کی۔ یہ کہانی اینڈرائیڈ ڈویلپر دیما کی ہے، جس نے پروگرامنگ میں اپنا کیریئر بنانے کے لیے ہوٹل کا کاروبار چھوڑ دیا۔ اس نے ڈیڑھ سال میں جاوا اور اینڈرائیڈ میں مہارت حاصل کی اور اسے ایک ڈویلپر کی نوکری مل گئی۔سافٹ ویئر ڈویلپر دیما کی کہانی: "کوڈ لکھنا اسے جانچنے سے کہیں زیادہ دلچسپ ہے" - 1

"میں ہر روز صبح 5-6 بجے اٹھتا تھا اور کام سے پہلے پڑھتا تھا۔"

میں نے ہاسپٹلٹی مینجمنٹ میں ڈگری کے ساتھ ہیومینٹیز میں اعلیٰ تعلیم حاصل کی ہے۔ چنانچہ یونیورسٹی سے فارغ التحصیل ہونے کے بعد، میں نے ہوٹل کے کاروبار سے وابستہ ایک کمپنی میں گاہکوں کے ساتھ کام کیا۔ اس وقت، میں نے محسوس کیا کہ مجھے چند وجوہات کی بنا پر اس شعبے میں دلچسپی نہیں تھی: لوگوں کے ساتھ کام کرنا اتنا آسان اور خوشگوار نہیں جتنا میں سمجھتا تھا، اور تنخواہیں بھی بہت زیادہ نہیں ہیں۔ وقت گزرنے کے ساتھ، مجھے پروڈکٹ ڈپارٹمنٹ میں جانے کا موقع ملا (کمپنی کے پاس ہوٹل کے کمروں کی بکنگ کے لیے ایک ایپ اور ایک ویب سائٹ ہے)، چونکہ موبائل ایپس کی جانچ کے لیے کوالٹی اشورینس ڈپارٹمنٹ میں ایک جگہ خالی ہوئی ہے۔ میں کام کرنے کے قابل تھا، لیکن میرے پاس ضروری تجربہ نہیں تھا۔ اپنے کام کے دوران، میں نے خودکار ٹیسٹ لکھنا ختم کیا، اور میں نے پروگرامنگ شروع کی۔ تب میں نے محسوس کیا کہ کوڈ لکھنا اس کی جانچ کرنے سے کہیں زیادہ دلچسپ ہے۔ میرے ذہن میں ایک سوال ابھرا کہ میں کہاں پڑھنے جاؤں؟ اس وقت، میں اس کورس کے بارے میں پہلے سے جانتا تھا، لہذا میں نے کورس کے ذریعے کام کرنا شروع کیا۔ میں نے 20 درجے مکمل کر لیے اور سوچنے لگا کہ آگے کہاں جانا ہے۔ میں نے فیصلہ کیا کہ موبائل ایپ کی ترقی میں جانا ایک اچھا آپشن ہوگا۔ میں یہ نہیں کہہ سکتا کہ میں نے 20 لیولز سے جو علم حاصل کیا وہ ایک جونیئر ڈویلپر بننے کے لیے کافی تھا۔ میں نے نحو اور جاوا کور کے تصورات سیکھے، لیکن یہ صرف علم تھا جس میں کوئی عملی کام نہیں تھا۔ بلکہ، یہ کوڈ لکھنے کی کوشش کرنے کی بنیاد تھی۔ اس کے علاوہ میں نے تھیوری پر دو اور کتابیں بھی پڑھیں۔ اس سامان کے ساتھ، میں اینڈرائیڈ کی ترقی میں چلا گیا۔ میرا ایک تربیتی منصوبہ تھا: میں ہر روز صبح 5-6 بجے اٹھتا تھا اور کام سے پہلے 2 گھنٹے مطالعہ کرتا تھا۔ میں نے اس وقت بھی مطالعہ کیا جب میرے پاس کوئی فارغ وقت تھا (مثال کے طور پر، اگر ایک ٹیسٹر کے طور پر میں انتظار کر رہا تھا جب ایک ڈویلپر نئی خصوصیات کو لاگو کر رہا تھا): میں نے دن کے وقت پروگرامنگ کے کام مکمل کیے تھے۔ میں نے 1-2 مہینوں میں 20 سطحیں مکمل کیں۔ اپنے شیڈول کے مطابق، میں نے فی لیول 1-4 دن گزارے۔ اس کورس کے بعد، میں نے اینڈرائیڈ ڈویلپمنٹ پر کہیں اور کئی کورسز سے گزرا۔ میں نے سب سے پہلے اینڈرائیڈ پر ایک بنیادی کورس کا رخ کیا، معلوم کیا کہ کیا ہے، اور اپنے علم کو مزید گہرا کیا۔ اینڈرائیڈ کی دنیا میں مختلف لائبریریوں کا اپنا چڑیا گھر ہے جو صنعت کے معیار پر شمار ہوتے ہیں۔ یہاں 5-6 مرکزی لائبریریاں ہیں اور اگر آپ نے ان کا مطالعہ نہیں کیا ہے تو ملازمت کے انٹرویو میں جانے کا کوئی فائدہ نہیں ہے۔ کل وقتی کام کرتے ہوئے، میری پوری تعلیمی کوشش میں تقریباً 1.5 سال لگے۔ اگر آپ روزانہ 8 گھنٹے مطالعہ کرتے ہیں، تو آپ اسے چھ ماہ میں کر سکتے ہیں۔

"ناکام انٹرویوز نے میری بنیاد کو مضبوط کیا"

مجھے انتظامیہ کے ساتھ سمجھ بوجھ تھی: میں پڑھوں گا اور وہ مجھے ایک ڈویلپر کے طور پر رکھ لیں گے۔ لیکن یہ منصوبہ کامیاب نہ ہو سکا۔ ایک سینئر ڈویلپر نے چھوڑ دیا، اور وہ ایک طویل عرصے تک کوئی نیا نہیں ڈھونڈ سکے۔ میں نے محسوس کیا کہ انتظار کرنے کا کوئی فائدہ نہیں ہے اور میں نے پہلے ہی ملازمت کے دوسرے مواقع تلاش کرنا اور انٹرویوز میں جانا شروع کر دیا ہے۔ کچھ صورتوں میں، مجھے کمپنی پسند نہیں آئی۔ دوسری صورتوں میں، میں مناسب نہیں تھا اور مجھے کال بیک موصول نہیں ہوا۔ اگر میں انٹرویو میں کسی سوال کا جواب دینے میں ناکام رہا، تو میں نے گھر جا کر اس موضوع کا مطالعہ کیا تاکہ اگلی بار اچھا جواب دے سکوں۔ ناکام انٹرویوز نے میری بنیاد کو مضبوط کیا۔ نتیجے کے طور پر، میں اس کمپنی میں انٹرویو لینے میں کامیاب ہو گیا جہاں میں نے دو سال تک کام کیا۔ اس وقت، میں اپنے تمام کمزور نکات کو پہلے ہی جانتا تھا اور مشکل سوالات کے لیے ہر ممکن حد تک تیار تھا۔ مجھے ایک آؤٹ سورسنگ ویب ڈویلپمنٹ اسٹوڈیو میں نوکری مل گئی ہے جو مختلف کمپنیوں کے لیے اپنی مرضی کے مطابق ترقی کرتا ہے۔ کلائنٹس میں Gazprom Media اور TV چینل TNT شامل ہیں۔ ہماری کمپنی کو یہ پروجیکٹ دوسرے ڈویلپرز سے وراثت میں ملا ہے۔ یہ خراب حالت میں تھا: کوڈ پرانے معیارات کی بنیاد پر لکھا گیا تھا۔ اس وقت اس کی عمر تقریباً 5 سال تھی۔ ایک اور جونیئر دیو اور مجھے اس پروجیکٹ پر رکھا گیا تھا۔ ہم خوش قسمت تھے: ہم نے ایک دوسرے کی مدد کرتے ہوئے آہستہ آہستہ کوڈ کا پتہ لگا لیا۔ 2 سالوں کے دوران، ہم نے کوڈبیس کو پیش کرنے کے قابل بنایا۔ چونکہ پراجیکٹ شروع میں ناقص لکھا گیا تھا، اس لیے میں اینڈرائیڈ کو سمجھنے اور اس فیلڈ میں آنے کے قابل تھا۔ اس کام میں، میں نے تقریباً 3 ماہ تک بیرون ملک رہتے ہوئے دور سے کام کرنے کے لیے بات چیت کی۔ اس نے مجھے بالی جانے اور وہاں سے کام کرنے کی اجازت دی۔ مجھے یہ مشکل نہیں لگا، لیکن یہ سب کسی کے اندرونی خود نظم و ضبط اور خود تنظیم پر منحصر ہے۔ مجھے جلدی اٹھنا اچھا لگتا تھا۔ میں نے ماسکو کے وقت کے مطابق صبح 4-5 بجے کام کرنا شروع کیا۔ یہ ایک ایسا گھنٹہ تھا جب کوئی بھی چیٹنگ نہیں کر رہا تھا، اس لیے میرے پاس بہت کچھ کرنے کا وقت تھا۔ ماسکو میں دوپہر کے کھانے کے وقت، میرا کام کا دن ہو گیا تھا۔سافٹ ویئر ڈویلپر دیما کی کہانی: "کوڈ لکھنا اس کی جانچ سے کہیں زیادہ دلچسپ ہے" - 2

"کسی بھی شعبے سے کوئی بھی پروگرامنگ میں مہارت حاصل کر سکتا ہے"

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

ابتدائی ڈویلپرز کے لیے تجاویز:

  • یاکوف فین کی کتاب "جاوا پروگرامنگ برائے بچوں، والدین اور دادا دادی" پڑھیں۔ ایک زمانے میں، اس کتاب نے میری بہت مدد کی، کیونکہ IT میرا پس منظر نہیں ہے اور مجھے شروع سے ہی بہت سے تصورات سیکھنے پڑے۔ یہ کتاب بہت آسان فارمیٹ میں پروگرامنگ کی بنیادی باتوں کی وضاحت کرتی ہے۔ اپنی پڑھائی شروع کرنے سے پہلے اسے پڑھنا عمل کو بہت آسان بنا دیتا ہے۔
  • تربیت کا واضح شیڈول بنائیں۔ اگر کوئی بغیر کسی شیڈول کے ہفتے میں کئی گھنٹے مطالعہ کرنے کی کوشش کرتا ہے، تو وہ مایوس ہو جائے گا۔ جو آپ نے پہلے سیکھا ہے اسے بھول جانے اور کوئی پیش رفت کرنے میں ناکام رہنے کا یہ ایک نسخہ ہے۔ صحیح طریقہ یہ ہے کہ روزانہ تھوڑا سیکھیں۔ پھر آپ ترقی دیکھیں گے۔
  • اینڈرائیڈ کے بارے میں مشورہ: آپ کو مرکزی لائبریریوں سے واقف ہونا ضروری ہے۔ ان لائبریریوں پر کچھ سبق تلاش کریں اور یہ سمجھنے کے لیے کوڈ لکھنے کی کوشش کریں کہ وہ کون سے کام حل کرتے ہیں۔
  • آپ "انٹرویو کے سوالات" کی تیاری کر سکتے ہیں، کیونکہ ان میں سے بہت سے آن لائن ہیں۔ ایسے آجر ہیں جو درخواست دہندہ کی عمومی عقل کو جانچنے کے لیے کوئی چال پوچھنا پسند کرتے ہیں۔ آپ کو ان سوالات کے جوابات دینے کے لیے بھی تیار رہنے کی ضرورت ہے۔
  • انٹرویو کے دوران، اپنی دلچسپی اور سیکھنے کی خواہش کا اظہار کریں۔ کسی کو ابتدائی طور پر کچھ معلوم نہیں ہوسکتا ہے، لیکن وہ جلدی سے نئی معلومات لے سکتا ہے اور کام کے مسائل کو تیزی سے حل کرسکتا ہے۔ جس کی ہمیشہ قدر کی جاتی ہے۔
تبصرے
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION