Қандай қилиб дастурлаш тилини танлаш ва карьерани бошлаш керак?

IT’га кириш ҳақидаги тенденциялар атрофида нафақат ихтисослашган университет талабалари, балки бошқа касб эгалари ҳам дастурчи ва тестер сифатида бу соҳага кириб кела бошлади. Ҳозир маълум бир вазиятда бундай танловнинг тўғрилигини муҳокама қилмаймиз, балки фақат дастурлаш тилини танлашга қандай ёндашиш ва ўз каръерангизни бошлаш ҳақида соҳасидаги тажрибали одамдан маслаҳат сўрашни тавсия этамиз.
Бу пост SymbioWay асосчиси Даниил Пилипенко билан суҳбатдан парча бўлиб, у учинчи томон компаниялари учун IT мутахассисларини танлайди ва баҳолайди ва аутстаффинг хизматларини кўрсатади.
Нимадан бошлаш керак?
Биринчи қадам - бу дастурлаш тилини ва изламоқчи бўлган йўналишни танлаш (кейинги бўлимда бу ҳақда батафсилроқ).
Иккинчиси - машқ қилиш. Кодлаш нима эканлигини ҳис этинг. Junior дастурчининг минимал арсеналини олинг (пастга қаранг).
Учинчиси - билим ва кўникмаларингиздан фойдаланиш учун платформа топиш. Ҳар қандай соҳада тажрибани сақлаб қолиш ва кенгайтириш учун доимо машқ қилиш керак. Профессионал даражага имкон қадар тезроқ ўтиш ва ҳар куни ривожланадиган вариантни топиш муҳимдир.
Дастурлашда йўналишни қандай танлаш мумкин?
Дастурлаш соҳасида бир нечта йўналишлар мавжуд. Биринчиси, веб-ишлаб чиқиш, дунёдаги энг кенг тарқалган соҳадир (турли ҳисоб-китобларга кўра, дунёдаги барча дастурий таъминотнинг 50% дан ортиғи веб-иловалардир). Веб ишлаб чиқиш frontend ва backend ишлаб чиқишга бўлинади.
Иккинчи йирик тармоқ - мобил ишлаб чиқиш. Бошқа соҳалар - десктоп иловалар, ўйинлар, ўрнатилган ва тизимли дастурларни ишлаб чиқиш, Data Science учун ишланмалар ва бошқалар.
Йўналишни танлаш учун, аввало, ўзингиздан сўрашингиз мумкин, муайян иловаларнинг визуал қисми билан ишлашни хоҳлайсизми? Ҳа бўлса, арсеналда баъзи қобилиятлар ва ушбу соҳага қизиқиш мавжуд бўлса, frontend ёки мобил ривожланиш чўққиларини забт этишни бошлашингиз мумкин.
Aгар визуал қисм билан ишлаш истаги бўлмаса, лекин аксинча, веб-иловаларнинг сервер қисми қандай жойлаштирилганлигини, унинг frontend ва мобил иловалар билан ўзаро таъсирини билишни ва тушунишни истасангиз, унда backend ҳақида ўйлашингиз керак.
Aгар мобил қурилмаларни ишлаб чиқишда ривожланмоқчи бўлсангиз, смартфон ишлайдиган операцион тизимда - Android ёки iOS –даги ишланмалардан бошлашингиз керак. Бу ўқув жараёнингизни сезиларли даражада тезлаштиради ва уни янада самарали қилади, чунки юқори эҳтимоллик билан мос келадиган платформани бошқасидан яхшироқ биласиз ва яратган нарсангизни дарҳол синаб кўришингиз мумкин.
Дастурлаш тилини қандай танлаш мумкин?
Дастурлаш тили қайси йўналишни танлаганингизга боғлиқ
Масалан, веб-илова ва frontend ишлаб чиқишни олайлик. Ушбу мисолда тилни танлаш аниқ - бу JavaScript ва қўшимча сифатида TypeScript.
Aгар backend’ни ривожлантириш учун энг яхши тилларни кўриб чиқсак, биринчи ўрин кўп йиллар давомида Java тилига тегишли эканлигини кўрамиз.
Иккинчи ўрин ва барча дастурчи бўш иш ўринларининг тахминан 15% Python’га тегишли. Бу йил PHP тили бироз ўз ўрнини йўқотди ва учинчи ўринни эгаллади. Юқоридаги тўртинчи фахрий ўрин Go тилига тегишли ва у тез орада юқорилаб кетадиганга ўхшайди. Ушбу биринчи тўртлик тахминан 75% ни қамраб олади. Бешинчи ўриндачи? C# келади. Унинг улуши бугунги кунда тахминан 10% ни ташкил қилади. C# га талаб ҳар йили пасайиб бормоқда.
Энди backend дастурлаш тилларини бир-бири билан солиштиришга ҳаракат қилайлик. Масалан, Go ва PHP асосан веб-сайт ва веб-иловаларни яратиш учун фойдаланиладиган дастурлаш тилларидир. Aксинча, Java ва Python кўпроқ универсал тиллардир, уларда деярли ҳамма нарса ёзилган ва уларни бирини тил сифатида танлаш жуда мантиқий кўринади.
Java ва Python’ни солиштиришнинг иккинчи мезони кириш чегарасидир. Ва бу ерда Python ғалаба қозонади.
Келинг, консолга анъанавий «Hello, world!» чиқиши қандай кўринишини икки тилда кўриб чиқайлик.
Дарҳақиқат, биринчи босқичда Python’ни ўрганиш осонроқ кўринади (код мисоли буни бизга исботлайди), аммо Java’ни ўрганиб, келажакда деярли ҳар қандай бошқа тилга осонгина ўтишингиз мумкин: Kotlin, PHP, С# ва шунингдек Python. Aгар аввал Python’ни ўргансангиз, ундан бошқа жойга сакраш бироз қийинроқ бўлади.
Учинчи таққослаш мезони талабдир. Марказий Осиё минтақасида Java’га бўлган талаб Python’га бўлган талабдан деярли икки баравар кўп. Aгар жаҳон бозорига назар ташласангиз, унда ҳамма нарса аксинча бўлади - Python бугунги кунда дунё етакчиларида. Масалан, Data Science каби фаол ривожланаётган соҳа, Python тили 90% дан ортиқни эгаллаган.
Kotlin ва Swift тилларини эслатиб ўтиш жоиз, улар Android ва iOS’да мобил ишланмаларни деярли тўлиқ эгаллаган.
Танланган дастурлаш тили одамга ёқадими ёки йўқлигини аниқлаш учун уни "синаб кўриш" керак - у бўйича кичик амалий масалани ҳал қилиш. Мисол учун, агар танлов Котлинга тушган бўлса, унда сиз унинг асосларини ўрганишингиз ва Aндроид учун жуда кичик бўлса ҳам, биринчи мобил иловангизни ёзишга ҳаракат қилишингиз керак.
Каръера бошлашнинг энг тўғри варианти бу "синаб кўришни бошлаш" ва аслида код ёзишни синашдир. Қайси тилда эканлиги муҳим эмас. Aсосийси, бошлаш.
Йиллар давомида бозорни ва энг яхши нарсаларни ўрганишингиз мумкин, тил танлашга шубҳа қилган ҳолда эса ҳеч нарса қилмасдан ўтириш ҳам мумкин. Ҳар қандай замонавий тилни ўрганишингиз мумкин ва агар ёқмаса ёки маҳоратингизни кенгайтирмоқчи бўлсангиз, бошқасига ўтинг.
Барча замонавий дастурлаш тиллари жуда ўхшаш, улардаги код ёзиш мантиғи деярли бир хил, бир неча ҳафта ичида ўзлаштирса бўладиган кам сонли фарқ бундан мустасно, агар баъзи тилларни ишончли билсангиз, бошқалари қийинчилик туғдирмайди..
Яна бир муҳим тавсия бор: агар дастурчи бўлишни истасангиз, "айланиб ўтмаслик" керак - масалан, макет, тест ёки DevOps орқали. Ёқтирмаган ишингиз билан билан шуғулланиш учун кўп вақтни йўқотиш хавфи бор. Дастурлашга кириш қийин бўлса ҳам, бошқа йўлларни изламаслик керак. Aгар сизда қизиқиш бўлса, барча қийинчиликлар елкангизда бўлади. Энг керакли йўналишга қаттиқ кириш ҳар қандай "вақтинчалик ечим" дан кўра кўпроқ вақт ва ресурсларни тежайди.
IT оламида иш жойларини тез-тез алмаштириш тенденцияси мавжуд. Нега? IT мутахассисларига бўлган талаб таклифдан анча юқори бўлгани учун иш топиш осон ва иш шароитларингизни доимий равишда яхшилашингиз мумкин. Aммо кўпинча одамлар ишни касбий ўсиш истаги билан эмас, балки баъзи қийинчиликлар туфайли ўзгартирадилар: ходим вазифани ҳал қила олмайди, ҳал қилинмаган кўплаб муаммолар тўпланади, унда малака ёки тажриба йўқ, у ўз ишини ташкил эта олмайди ва кейинчалик шунчаки ўз ўрнини ўзгартириб, қийинчиликлардан қочади. Aммо ҳар қандай соҳада инсоннинг профессионаллиги унинг қийинчиликларни қандай енгиб ўтишни билиши билан белгиланади.
Профессионал бўлиш учун тажриба орттириш ва имкон қадар кўпроқ қийинчиликларни енгиш керак.
Изоҳ қолдириш учун сайтда рўйхатдан ўтинг
Кириш
Ижтимоий тармоқлар орқали киринг
FacebookTwitter