26/12/2022
Programmer VS Developer
💥💥💥Junior လေးတွေ အတွက် knowledge share ပေးတာဖြစ်လို့ Geek ကြီးတွေ မဖတ်ချင်ရင်ကျော်သွားကြနော် 😝😝😝
IT လောက ထဲ ကို စ ဝင်လာလာချင်းမှာ ကျွန်တော် ထက် ဝါရင့် တဲ့ စီနီယာ ကြီး တွေကို လိုက်မေးဖြစ်တဲ့ မေးခွန်း တစ်ခုရှိခဲ့တယ်။ Programmer နဲ့ Developer ဘာကွာလဲ ဆိုတာပေါ့။ ဘာကွာလဲ ဆိုတော့ အပေါ်ယံ ကြည့်ရင်တော့ ဘာမှ မကွာဘူးပေါ့။ သေချာ လေ့လာကြည့်ရင်တော့ Developer တိုင်းကို Programmer လို့ခေါ်လို့ရပေမယ် Programmer တိုင်းကိုတော့ Developer လို့ခေါ်လို့မရပါဘူး။
ဘာလို့လဲဆိုတာအောက်မှာ ပြောပြပေးပါမယ်။
Programmer နဲ့ Developer ကွာခြားချက် က ဘာတွေလဲ။
Developer တွေ က system တစ်ခု ကို စပြီး setup လုပ်တော့မယ် ဆို ရှုထောင့် အမျိုးမျိုး ကနေ ကြည့်ပြီး စဉ်းစား ရတယ်။ User ဘက်ကကော system ကို develop လုပ်မယ့် ကိုယ့် team က programmer တွေ ဘက်က ပါ စဉ်းစား ရတယ်။ ဥပမာ ပြောရမယ်ဆို E-commerce system (online shopping system) တစ်ခု create လုပ်တော့မယ် ဆိုပါတော့။ Developer တစ်ယောက်အနေနဲ့ အဲ့လို system တစ်ခုကို online user တွေ ကို မိတ်ဆက်ပေးမယ်ဆို အောင်မြင် နိုင်ချေ ရှိမရှိ။ User တွေ အတွက် အထောက်အကူ ဖြစ်မဖြစ် အရင် စဉ်းစား ရတယ်။ ပြောရမယ်ဆို business analyze လုပ်ရတာပေါ့။ အဆင်ပြေမယ်လို့ ယူဆရပြီ ဆို system ကို စပြီး setup လုပ်တော့မယ်ပေါ့။ ဆိုတော့ ဘယ်လို user တွေ သုံးမှာလဲ ဆိုတာလဲ စဉ်းစား ရပြန်တယ်။ ပြီးတော့ ဘယ်လို features တွေ ထည့်မလဲ။ ဘယ် programming language နဲ့ ရေးရင် ကိုယ့် team အတွက် ကော ကိုယ်ရေးမယ့် system အတွက်ကောအဆင်ပြေမလဲ။ Business flow ကကော ဘယ်လို လုပ်ရမလဲ။ System ရဲ့ design ကကော ဘယ်လို လုပ်ရမလဲ။ Data တွေကို ဘယ်လို သိမ်းမလဲ။ MongoDb သုံးမလား။ Mysql သုံးမလား။ ဘယ်လို user data တွေကို collect လုပ်မလဲ။ အဲ့လို "လဲ"ပေါင်း များစွာနဲ့ system design (project design) ကို အသေးစိတ် တည်ဆောက်တဲ့ သူကို Developer လို့ခေါ်တာပါ။ တနည်းအားဖြင့် သူ့ကို Software Engineer လို့လဲ ခေါ်ပါတယ်။ Programmer ကတော့ အဲ့လိုမဟုတ်ဘူး Developer အနေနဲ့ system ရဲ့ structure ချပြီး coding ရေးရတော့မယ်ဆိုတဲ့ အခါမှ ခေါင်းစစားရပြီပေါ့။ သူ့ အလုပ်ကတော့ coding ရေးမယ် debug လိုက်မယ် testing လုပ်မယ် အပေါ်ယံ ပြောရရင်တော့ အဲ့လောက်ပဲ။
Programmer တစ်ယောက် ဖြစ်ဖို့ ဘာတွေလိုလဲ။ Programmer ဘယ်နှမျိုးရှိလဲ။
Programmer တစ်ယောက်ဖြစ်ဖို့ အဓိက ကတော့ coding နဲ့ programming language တွေပါပဲ။ Programming language တွေကတော့ အများကြီးပါ Java, Kotlin, JavaScript, PHP, Python,..... စသဖြင့် အများကြီးပါ။ တချို့ Programmer တွေက language တစ်ခုထဲ ကို ပဲ အရူးအမူး လုပ်တဲ့သူတွေ ရှိတယ်။ တချို့ကတော့ သုံးလေးမျိုး လောက် ကျွမ်းကျင်တဲ့ သူတွေလဲ ရှိတယ်။Programmer တွေအတွက် နောက်တစ်ခု အရေးကြီး တာက DBMS(Database Management System) ဆိုတဲ့ storage system ပါ။ coding ကိုသေချာ နိုင်တယ် DBMS ပိုင်းသေချာရတယ် ဆို geek level programmer ဖြစ်နေပါပြီ။
Programmer တွေကတော့ သူ့ level အလိုက် သူ့ field အလိုက်
1. Application Programmers
2. System Programmers
3. AI/Machine Learning Engineers
4. Game Programmers
5. Mobile Developer
ဆိုပြီး အမျိုးမျိုး ရှိပါတယ်။ ဆိုတော့ programmer လုပ်ချင်တယ်ဆိုရက်တော့ Coding နဲ့ Maths တော့ ပိုင်ရမယ်နော်။ 😏😏
Developer တစ်ယောက်ဖြစ်ဖို့ကော ဘာတွေလိုလဲ။
Developer ဘယ်နှမျိုးရှိလဲ။
Developer ဆိုတာ Software Engineer တွေကို ခေါ်တာပါပဲ။ Software Engineer တစ်ယောက်ဖြစ်ဖို့ဆိုရင် system တစ်ခုလုံး အစကနေ အဆုံး ဘယ်လို structure နဲ့ သွားမယ် business flow ကကော ဘယ်လို ထားမလဲ။ ဘယ်လို technology တွေ သုံးမလဲ စတဲ့ project တစ်ခုကို အသေးစိတ် ကျကျ စဉ်းစား တတ်ရပါမယ်။ အပေါ်မှာ ပြောသလိုပဲ developer တိုင်း programmer ဖြစ်နိုင်တယ်ဆိုတော့ developer လည်း system develop လုပ်ရပါတယ်။ Developer ဖြစ်တယ်ဆိုပြီး လစ်ဖို့ မကြည့်နဲ့နော်။ သူတို့ မလုပ်ချင်လို့ သူတို့အောက် က programmer လေးတွေကို ခိုင်းတာ Developer level ရောက်ပြီး ဆို အဲ့ကောင်တွေ က ဆရာ့ဆရာကြီး တွေပဲ လို့ မှတ်ထားလိုက်တော့။ Programmer တွေ တလွဲလုပ်နေတာတွေ က အစသူတို့ အားလုံးသိတယ်။ Coding ကို နောကျေပြီး လို့ user နဲ့ interact လုပ်တဲ့ အပိုင်းပါ လုပ်နေတာပေါ့။ Developer တွေက
1. Software Design
2. Development
3. Research
4. Writing Document
5. Maintenance
6. Testing Software
7. Core Implementation
8. Analysis
ဆိုတဲ့ task တွေကို လုပ်ကြပါတယ်။ တွေ့တယ်နော် Development လုပ်ရတယ်တဲ့။ ဆိုတော့ Program ရေးရတယ်တဲ့။ လစ်လို့ မရဘူး။ 😛😛
Developer ကတော့ အမျိုးမျိုး ရှိတာပေါ့
1. Web Developer
2. Android Developer
3. IOS Developer
စသဖြင့် အမျိုးအစား ဒီထက်အများကြီးရှိပါသေးတယ်။
ပြောချင်တာက overall knowledge ရှိတဲ့ သူတွေ ကို Developer လို့ ခေါ်ပြီး programming နဲ့ ဆိုင်တဲ့ specific knowledge ရှိတဲ့ သူကိုတော့ Programmer လို့ခေါ်တာပေါ့။
ကဲ စာအရှည်ကြီး မရေးတော့ဘူး ဒီလောက်ဆို အပေါ်ဆုံးက မေးခွန်း အတွက်အဖြေရလောက်ပြီထင်တယ်။
Tech နဲ့ ပတ်သတ်တဲ့ knowledge တွေ sharing လုပ်ပေးမှာမို့လို့ page လေးကို like လုပ်ထားကြနော်။😏😏