اسٽيج 1. تربيت
مان شعوري طور JavaRush تي آيو آهيان: هڪ مناسب مهيني قيمت جي فهرست، مواد جي هڪ واضح جوڙجڪ، تمام گهڻو مشق ۽ منهنجي پنهنجي ڪميونٽي جي موجودگي. پهريون نقطو تمام واضح آهي، پر بناوت جي ٻولي سکڻ تمام ڏکيو آهي، ۽ اهڙي تربيت يقيني طور تي هڪ شخص کي جاوا ڪور ۾ سنجيده خال سان ڇڏي ويندي. انٽرويو ۽ ٽيڪنيڪل وضاحتن جو تجربو ڏيکاري ٿو ته "بنيادي" بابت سوال هر شي لاء استعمال ڪري سگھجن ٿيون: bitwise شفٽنگ ۽ generics جي ڪاسٽنگ کان IO ۽ سيريلائيزيشن تائين. مشق هڪ لازمي آهي؛ مان اڃا تائين اڌ شيون سمجهي ۽ ياد ڪري سگهان ٿو جيڪڏهن آئون انهن کي پاڻ لکان. خير، ڪميونٽي: توهان مسئلو حل ڪيو - ان بابت تبصرن ۾ فخر ڪريو؛ جيڪڏهن توهان فيصلو نه ڪيو آهي، توهان سوال پڇڻ لاء خوش آمديد آهيو، پر گهڻو ڪري ڪو به توهان کي تيار ڪيل حل نه ڏيندو. ۽ آئون ڪورس ختم ڪرڻ کان پوءِ به مفت عنوانن تي ڪسٽم مضمونن ڏانهن موٽي آيو آهيان، اتي تمام سٺيون شيون آهن شروع ڪرڻ لاءِ (خاص طور تي پهريون تجربو فريم ورڪ سان گڏ قدم قدم مثال استعمال ڪندي + انٽرويو لاءِ سوال). عام طور تي، مان هن پروجيڪٽ جو شڪر گذار آهيان انهي بنياد لاءِ جيڪو مون حاصل ڪيو، پر مان صرف جاوا رش تي ڀروسو نه ڪندس - ساڳيو شيلٽ سڀ کان بهتر آهي ”اوورليپنگ“ موضوع تي جيڪو مطالعو ڪيو پيو وڃي، ۽ اڪثر ڪجهه نقطا ظاهر ڪري ٿو. ڪمن جي باري ۾ نظرثانين ۾ اڳ ۾ ئي گهڻو ڪجهه چيو ويو آهي جيڪي ڪڏهن ڪڏهن نظريي کان اڳتي وڌندا آهن ۽ توهان کي گوگل ڏانهن مجبور ڪندا آهن. منهنجي لاءِ، اهو مائنس کان وڌيڪ پلس آهي - ۽ اها حقيقت ناهي ته هاڻي صورتحال ساڳي آهي، جڏهن مان پڙهندو هوس. انھن لاءِ فوري نصيحت جيڪي، مون وانگر، جاوا ۾ داخل ٿيو ”شروع کان“ : ڪنھن مرحلي تي توھان بور يا مشڪل ٿي سگھو ٿا:-
اهو ڏکيو آهي هر ڪنهن لاءِ شروع کان شروع؛ خدا نه ڪري، صرف 5٪ ماڻهو ڪورس جي پڄاڻي تي پهچن ٿا. توهان جو ڪم انهن مان هڪ ٿيڻ آهي.
-
مون کي هڪ يا ٻن مهينن کان پوء دلچسپي ورتي، جڏهن ڪم وڌيڪ ڏکيو ۽ دلچسپ ٿي ويا. صبر ڪر.
- بنيادي شيء هفتيوار ترقي آهي. ٻن هفتن جي آرام کان پوء، ان کي واپس ڪرڻ اڳ ۾ ئي ڏکيو آهي، ۽ هرڪو نه هر روز لکي سگهي ٿو ڪيترن ئي مهينن لاء قطار ۾. پاڻ کي هفتي لاءِ ڪلاڪن جي حد ڏيو - مثال طور، 15. توهان هر هفتي جي ڏينهن ۾ 1.5 ڪلاڪ ۽ ٻئي هفتي جي آخر ۾ 3-4 ڪلاڪ لاءِ ڪوڊ ڪري سگهو ٿا، يا توهان ڪجهه شامن جي موڪل وٺي سگهو ٿا، پر "هفتي جي آخر جي حد" هوندي واڌارو. اهو طريقو، شيڊول لچڪدار ٿيندو، پر باقاعده. يقينن، پوء اهو ممڪن ٿيندو ته ڪم ۽ منصوبن جي ڪم کي ماپڻ، پر نحو ۽ ڪنييل سطح تي، ڪلاڪ ڪندا.
اسٽيج 2. خود تعليم
تنهن ڪري، مون کي انٽرنشپ نه ملي: مون ٽيڪنيڪل گهرجن تي صرف ٻه ڏينهن ڇڏيا آهن جيستائين گروپ ۾ ڀرتي ختم ٿيڻ تائين ۽ ضرورتن کي سمجهڻ جو وقت نه هو - اتي تمام گهڻا اڻ واقف لفظ هئا. ڇاڪاڻ ته مون کي وڌيڪ ٽي مهينا انتظار ڪرڻ نه چاهيو، مون پاڻ تي وڃڻ جو فيصلو ڪيو. خوشقسمتيء سان، سڀني مشهور فريم ورڪ لاء ھدايتون ۽ وڊيو سبق آھن. ايندڙ ڪجهه مهينن دوران، مون اسپرنگ MVC، Spring Boot + Data، Spring Security، Hibernate، jUnit، Maven، Git، RDBMS، mastered SQL سان ڊيل ڪيو ۽ ڪوشش ڪئي ته ان سڀني کي گڏ ڪري هڪ مڪمل ۾. ڇهن مهينن بعد، مون وٽ منصوبا هئا جيڪي هاڻي ڏسڻ لاءِ خوفناڪ آهن، پر مون ”بالغ“ فريم ورڪ ۽ هڪ GitHub استعمال ڪرڻ ۾ عملي تجربو حاصل ڪيو جيڪو هڪ امڪاني آجر جي درخواست تي ڏيکاري سگهجي ٿو. صلاح :-
جيتري جلدي توهان .gitignore بابت سکندا، اوترو بهتر. ؛)
-
گھڻن ھدايتن ۾ ھڪ ئي وقت ڪيترائي فريم ورڪ شامل آھن؛ هن کي استعمال ڪريو ۽ پنهنجو پاڻ کي شامل ڪريو. اسان Maven + Spring Boot + Data استعمال ڪندي هڪ آن لائن اسٽور لکيو - اختيار شامل ڪريو، يونٽ ٽيسٽ ۽ لاگنگ.
-
ويب پروجيڪٽس لاءِ، توهان انٽرنيٽ تان مفت فرنٽ اينڊ ٽيمپليٽس وٺي سگهو ٿا - اهي ڪم ڪرڻ ۾ وڌيڪ خوشگوار آهن، اهي Git تي README ۾ اسڪرين شاٽ وانگر بهتر نظر اچن ٿا. ساڳئي وقت، توهان HTML ۽ CSS کي ياد ڪرڻ جي قابل هوندا - توهان شايد انداز ۽ ترتيب کي درست ڪرڻ چاهيندا.
مون کي ڇا مليل هو (بعد ۾ مون کي هڪ انٽرويو دوران ساڙيو ويو)
-
الگورتھم. منهنجي غلطين کان بچڻ لاء، آئون فوري طور تي روسي ۾ هڪ مختصر ڪتاب جي سفارش ڪريان ٿو، "گروڪنگ الگورتھم." الورورٿم جي پيچيدگي ڇا آهي، اهو ڇا تي مشتمل آهي، ڇو تڪڙو ترتيب ڪافي نه آهي، گراف جي نظريي جو هڪ تعارف - سڀ ڪجهه موجود آهي ۽ سڀ کان وڌيڪ سمجھڻ واري ٻولي ۾.
-
مجموعا "هيٺ هيٺان". مون کي ياد ناهي ته اهو JavaRush ۾ هو، پر اهو ڄاڻڻ مفيد آهي ته HashMap.get() ڪيئن ڪم ڪري ٿو يا ڇو HashSet عنصر جي ترتيب کي محفوظ ڪرڻ جي ضمانت نه آهي. ٻيهر، ڪهڙو مجموعو محفوظ آهي ۽ ڇو.
-
SQL. توھان کي گھٽ ۾ گھٽ JOINs تائين جي ضرورت آھي - اھي ڇا آھن، اھي ڪيئن ڪم ڪن ٿا، ڪاغذ تي ٻن ٽيبلن تي SELECT لکڻ جي صلاحيت. مان سفارش ڪريان ٿو www.sql-ex.ru: اهو توهان کي هڪ يا ٻن ڏينهن ۾ گهربل سطح تي وٺي ويندو.
-
اسپرنگ ڪور: ڪھڙي قسم جون تشريحون آھن، ڪھڙو حوالو آھي، ڪھڙيءَ طرح بينز ٺاھيا ويندا آھن، ڪھڙي بين جو دائرو ٿريڊ محفوظ آھي، ۽ ميوئل انجيڪشن کي ڪيئن حل ڪجي - سڀ انٽرويو سوال. هڪ صفحو ڪيئن واپس ڪجي، ڪيئن واپس ڪجي JSON، وغيره. مان هن وقت روسي ۾ ”اسپرنگ 5 پروفيشنلز لاءِ“ پڙهي رهيو آهيان، پر عام طور تي اهي صلاح ڏين ٿا ”اسپرنگ ان ايڪشن“.
اسٽيج 3. نوڪري جي ڳولا
دراصل، گھر جي منصوبن کي مڪمل ڪرڻ کان پوءِ پھرين ٻن مھينن ۾، مون مختلف جونيئر\Trainee جي خالي جاين تي (HH، LinkedIn، Recruitment Agency جي ذريعي) اٽڪل 30 جواب موڪليا آھن، جن جي نتيجي ۾ صفر جي ويجهو آھي. مون صرف تجربي کان سواءِ خالي جاين تي ڌيان ڏنو، ايمانداري سان مون کان واقف هڪ اسٽيڪ کي اشارو ڪيو ۽ منهنجي اعليٰ سکيا جي قابليت جي باري ۾ ڪپڙا خطن ۾ لکيو. نتيجو ٻه ڪالون آهن (جنهن مان هڪ فوري طور تي منهنجي پري انٽرميڊيٽ انگريزيءَ ۾ ختم ٿي وئي)، ٻه وڌيڪ ڪمپنيون ٽيڪنيڪل وضاحتون موڪليون، اتي فقط هڪ ”ميٽنگ“ هئي، ۽ پوءِ آئون اڪيلو ئي هو ڪاغذ جي هڪ ٽڪري تي الگورتھم جا مسئلا حل ڪندي، جنهن کان پوءِ HR صرف ڪاغذ کڻي ويو ۽ ”اسان توهان کي فون ڪنداسين. مون ڪجھه انٽرنشپ حاصل ڪرڻ جي ڪوشش ڪئي (بغير ادا ڪيل ۽ مشروط طور تي ادا ڪيل): مون ٽيڪنيڪل وضاحت ڪئي، پر فائنل سوشل سيڪيورٽي کان اڳتي نه وڌو؛ پر ھاڻي مان چئي سگھان ٿو ته تربيت ڏيندڙ ضرور T-Systems، CFT، Andersen ۽ EPAM پاران ڀرتي ڪيا ويا آھن (انهن جا ملايو رايا آھن، پاڻ فيصلو ڪريو). جيئن ته منهنجي لاءِ، اهو سٺو طريقو آهي فيلڊ ۾ داخل ٿيڻ جو جيڪڏهن توهان وٽ موقعو آهي ته ڪيترن ئي مهينن تائين بغير آمدني جي ويهڻ ۽ نه مرڻ =) عام طور تي، هن تجربي کان پوءِ مان ڪجهه اداس ٿي ويس، ۽ سڄي ڪهاڻي کي وقفي وقفي سان ڳولهي لڌو. لڳ ڀڳ ڇهن مهينن تائين - مون پوئين پروفائل تي ڪم جاري رکيو، ڪجهه ايپليڪيشنون صرف تفريح لاءِ لکيون، پر انهن کي Git تي پوسٽ به نه ڪيو. جيستائين مون هڪ واقفڪار سان ملاقات ڪئي، جنهن کي مون اتفاق سان خالي جاين تي ناڪامين بابت ٻڌايو: ان وقت هو اڳ ۾ ئي هڪ وچولي ڊولپر جي حيثيت سان ڪم ڪري رهيو هو، پر هن ساڳئي طريقي سان شروع ڪيو - خود مطالعي سان. هڪ واقفڪار مون کي ٻه سفارشون ڏنيون ، جيڪي هن پاڻ استعمال ڪيون ۽ مستقبل ۾ منهنجي نوڪري ڳولڻ ۾ مون کي تمام گهڻي مدد ڪئي. ڇا توهان انهن جي پيروي ڪندا آهيو يا نه توهان تي منحصر آهي، ڇاڪاڻ ته ... اهي آهن، ڪجهه طريقي سان، مڪمل طور تي ايماندار نه آهن. تنهن ڪري، وڌيڪ حوالا:-
ڪنهن به طريقي سان، پنهنجو پاڻ کي 6+ مهينن جو تجارتي تجربو توهان جي شروع ۾ مهيا ڪريو: انٽرنشپس، گريجوئيشن پروجيڪٽ، فري لانسنگ، ريموٽ ڪم - جيڪو به هجي. هي HR پاران شروع ٿيندڙ شروعاتي اسڪريننگ جي مرحلي ۾ تمام گهڻي مدد ڪندو.
-
لفظ جونيئر ۽ متوقع تنخواه توهان جي شروع کان هٽايو؛ بس ان کي جاوا ڊولپر جي طور تي ڇڏي ڏيو، ۽ هر ڪمپني سان انفرادي طور تي پئسا بحث ڪريو؛
-
ڪوشش ڪريو HR جو نالو تجويز ڪيل تنخواه جو ”فورڪ“ ان کان اڳ جو توھان پنھنجي اميدن جو نالو ڏيو. جيڪڏهن ڪا ڪمپني 80-120k پيش ڪري ٿي، ۽ توهان 40k يا وڌيڪ ڳولي رهيا آهيو، ڪجهه چونڊيندڙ توهان سان نفرت سان علاج ڪندا؛
-
انهن سڀني خالي جاين تي لاڳو ڪريو جيڪي توهان جي اسٽيڪ جي مطابق هجن، جيتوڻيڪ انهن کي 1-3 سالن جو تجارتي تجربو گهربل هجي.
-
شامل ڪريو پنھنجي ريزومي ۾ ٻولين، ٽيڪنالاجيز، ۽ فريم ورڪ جو سمورو اسٽيڪ جنھن سان توھان ڪم ڪيو آھي.
-
LinkedIn تي رجسٽر ٿيو - اتي مختلف ڪمپنين مان ڪيترائي HR ماڻهو آهن. پنھنجي پروفائل کي احتياط سان ڀريو - حقيقت ۾، اھو پڻ توھان جو شروع آھي. توهان جي رابطن جي نيٽ ورڪ کي ترقي ڪرڻ لاء، توهان جي پروفائل سان لاڳاپيل LIONs شامل ڪريو؛ اهي سڀني صارفين کان درخواستون قبول ڪن ٿا.
-
پنهنجو پاڻ کي مفت جاوا ٽيسٽ ۾ آزمايو - اهي اڪثر ڪري پيپر تي جونيئر انٽرويو کان اڳ ڏنل آهن. اهو اڳواٽ تيار ڪرڻ بهتر آهي.
-
اهي هميشه مجموعن جي باري ۾ پڇندا آهن: اتي ڪهڙا آهن، اهي ڪيئن مختلف آهن، انهن کي استعمال ڪرڻ جو بهترين وقت ڪڏهن آهي.
-
هميشه خلاصي طبقن ۽ انٽرفيس تي - ڇا اهي طريقا آهن، فيلڊ، ڪهڙا آهن، ڇا اهي وارث ٿي سگهن ٿا، وغيره.
-
لڳ ڀڳ هميشه multithreading تي - توهان پنهنجي ڪم ۾ ڇا استعمال ڪيو، لفظ، طريقا، ڇا توهان util.concurrent کان واقف آهيو.
-
گهڻو ڪري جڏهن ميموري سان ڪم ڪري رهيا آهن - هيپ، اسٽيڪ، ۽ اهي تار برابر هوندا، ۽ اهي شيون، ڇو.
-
ڪڏهن ڪڏهن الگورٿم بابت - توهان کي ڪهڙي خبر آهي، ڪهڙي پيچيدگي، ڇو، توهان هاڻي هڪ الگورٿم لکي سگهو ٿا.
-
ڪڏهن ڪڏهن نمونن جي بنياد تي - جن کي توهان ڄاڻو ٿا، جيڪي توهان استعمال ڪندا آهيو، هڪ سنگلٽن يا ڪارخانو لکندا.
-
ڪڏهن ڪڏهن SQL ۾ - JOINs جا قسم، ٽرانزيڪشن ڇا آهي، ان کي JDBC ۾ ڪيئن ڪجي، هڪ مختصر سوال لکو.
-
Salesforce پروفائل ڪاروباري رابطن جو صفحو تبديل ڪرڻ ۽ نوان رڪارڊ شامل ڪرڻ سان؛
-
کنسول ڪنٽرول سان اسپرنگ اسٽيٽ مشين کي استعمال ڪندي ملٽي اسٽوري عمارت ۾ لفٽ جي تخليق؛
-
Android ايپليڪيشن LibGDX لائبريري تي ٻڌل آهي ڪردار جي حساب سان ٽيڪسٽ آئوٽ جڏهن هڪ بٽڻ دٻايو ويندو آهي؛
-
ڪار شيئرنگ جي REST تقليد، HTTP درخواست ذريعي ڪلائنٽ شامل ڪرڻ ۽ JSON واپس ڪرڻ سان؛
-
هڪ آزاد سيل ذريعي اڻ سڌي طرح گراف کي ترتيب ڏيڻ جو مسئلو؛
-
فائل مان همراهن کي استعمال ڪندي isosceles مثلث جي ڳولا ڪريو؛
-
اسٽريم API استعمال ڪندي ختم ٿيل ڪوڊ جي ريفيڪٽرنگ؛
-
UI ڳڻپيوڪر ٽيرنري اظهار جي حمايت سان؛
-
نتيجن کي فائل ۾ لکڻ سان سلسلي جي race.
-
نه رڳو ڪم مڪمل ڪرڻ جي ڪوشش ڪريو، پر اهو پڻ يقيني بڻايو وڃي ته ڪوڊ OOP اصولن سان مطابقت رکي ٿو.
-
ڪارڪردگي لاءِ پنهنجو ڪوڊ چيڪ ڪريو - مون کي هڪ ڀيرو رد ڪيو ويو ڇاڪاڻ ته، ٻين شين جي وچ ۾، مون استعمال ڪيو پرنٽ اسٽريم بدران BufferedWriter.
-
50٪ مارجن سان پنھنجي عمل جي وقت جي منصوبابندي ڪريو - اھو بھتر آھي ته اڳي شروع ڪريو ۽ ختم ڪريو گيٽ پش ڪرڻ جي بجاءِ آخري وقت جي صبح جو اٺ وڳي.
GO TO FULL VERSION