သင်ဟာ တစ်ခါတလေမှာ အစပိုင်းမှာ ရိုးရှင်းတယ်လို့ ထင်ရပေမယ့် အနီးကပ်ကြည့်လေလေ ပိုရှုပ်ထွေးလေလေဖြစ်တဲ့ ပြဿနာမျိုးတွေနဲ့ ကြုံဖူးပါသလား?
- Bug တစ်ခုက bug သက်သက်မဟုတ်ဘဲ ပိုနေတဲ့အခါ။
- Customer ရဲ့ တိုင်ကြားချက်က ဝန်ဆောင်မှုတစ်ခုတည်းအကြောင်း မဟုတ်တော့တဲ့အခါ။
- Process ပြဿနာတစ်ခုက လုပ်ထုံးလုပ်နည်းသက်သက် မဟုတ်တော့တဲ့အခါ။
- Security အားနည်းချက်က package တစ်ခု update လုပ်ရုံနဲ့ မပြီးတော့တဲ့အခါ။
တကယ့်လက်တွေ့ကမ္ဘာက ပြဿနာတွေဟာ သန့်ရှင်းသပ်ရပ်တဲ့ label တပ်ပြီး ရောက်လာလေ့မရှိပါဘူး။ ၎င်းတို့ဟာ နည်းပညာပိုင်း၊ ဆက်သွယ်ရေးပိုင်း၊ ပိုင်ဆိုင်မှုပိုင်း (ownership) နဲ့ ဆုံးဖြတ်ချက်ချမှတ်မှုပိုင်း စတဲ့ ရောထွေးနေတဲ့ အချက်ပြမှုတွေနဲ့အတူ ရောက်လာတတ်ကြပါတယ်။
ဒါဟာ ကျွန်တော့်အတွက် Full Stack Person ဆိုတဲ့ စိတ်ကူးကို စိတ်ဝင်စားစရာ ဖြစ်စေတဲ့ အချက်ပါပဲ။
ကျွန်တော့်အမြင်အရ Full Stack Person ဆိုတာ အရာအားလုံးကို သိနေသူ ဒါမှမဟုတ် အရာအားလုံးကို တစ်ယောက်တည်း လုပ်နေသူကို မဆိုလိုပါဘူး။ ကျွန်တော်မြင်တဲ့ Full Stack Person ဆိုတာ မှန်ကန်တဲ့ အစက်အပြောက်တွေကို ဆက်စပ်ပေးနိုင်သူ၊ ပြဿနာအစစ်အမှန်ကို ပိုမိုရှင်းလင်းစွာ နားလည်သူနဲ့ အဓိပ္ပာယ်ရှိတဲ့ သက်ရောက်မှု (impact) ကို ဖန်တီးနိုင်သူ ဖြစ်ပါတယ်။
“Full Stack Person” ဆိုတာ ဘာလဲ
ပုံမှန်အားဖြင့် “Full Stack” ဆိုတဲ့ စကားလုံးကို software development မှာ သုံးကြပါတယ်။ Frontend ရော Backend ရော လုပ်နိုင်တဲ့ developer ကို ဆိုလိုတာပါ။ ဒါပေမဲ့ Full Stack Person လို့ ကျွန်တော်ပြောတဲ့အခါ ဒီထက်ပိုပြီး ကျယ်ပြန့်တဲ့ အဓိပ္ပာယ်ကို ဆိုလိုပါတယ်။
နည်းပညာဆိုင်ရာ ကျွမ်းကျင်မှု (Technical Skill)၊ စီးပွားရေးအခြေအနေ (Business Context)၊ နယ်ပယ်ဆိုင်ရာ ဗဟုသုတ (Domain Knowledge) နဲ့ လူတွေ၊ စနစ်တွေကို တစ်ခုနဲ့တစ်ခု ချိတ်ဆက်ပေးနိုင်သူကို ဆိုလိုတာပါ။
ဒါဟာ နေရာတိုင်းမှာ ရှိနေဖို့ မဟုတ်ပါဘူး။ အရာရာဟာ ဘယ်လိုချိတ်ဆက်နေလဲဆိုတာကို မြင်နိုင်ဖို့ဖြစ်ပါတယ်။ သူတို့ဟာ နယ်ပယ်တိုင်းမှာ အနက်ရှိုင်းဆုံး ပညာရှင်ဖြစ်နေဖို့ မလိုပါဘူး (ဒါက လက်တွေ့မကျသလို ကျန်းမာရေးနဲ့လည်း မညီညွတ်ပါဘူး)။ ဒါပေမဲ့ ပိုကောင်းတဲ့ မေးခွန်းတွေမေးဖို့ စူးစမ်းလိုစိတ်နဲ့ သတိရှိမှုတော့ လိုအပ်ပါတယ်။
- “ငါတို့ တကယ်တမ်း ဘယ်ပြဿနာကို ဖြေရှင်းနေတာလဲ?”
- “ဒီဆုံးဖြတ်ချက်ကြောင့် ဘယ်သူတွေ ထိခိုက်နိုင်မလဲ?”
- “ဘယ်အခြေအနေတွေ ငါတို့ဆီမှာ လိုအပ်နေသလဲ?”
တစ်နည်းအားဖြင့် Full Stack Person ဆိုတာ အရာရာကို ပိုသိနေလို့ သတ်မှတ်တာမဟုတ်ဘဲ အရာရာကို ပိုပြီး ကောင်းကောင်းချိတ်ဆက်နိုင်လို့ သတ်မှတ်တာဖြစ်ပါတယ်။
နည်းပညာကျွမ်းကျင်မှုက လိုအပ်တယ်၊ ဒါပေမဲ့ မလုံလောက်ဘူး
နည်းပညာပိုင်းဆိုင်ရာ နက်နဲမှု (Technical Depth) က အမြဲတမ်း အရေးကြီးပါတယ်။ အနည်းဆုံး နယ်ပယ်တစ်ခုမှာ ကျွမ်းကျင်မှု မရှိဘဲနဲ့ ယုံကြည်စိတ်ချရတဲ့ ရလဒ်တွေ ထွက်လာဖို့ ခက်ပါတယ်။
ဒါပေမဲ့ အခြေအနေအတော်များများမှာ code ဆိုတာ ပြဿနာရဲ့ မြင်သာတဲ့ အစိတ်အပိုင်းတစ်ခုသာ ဖြစ်ပါတယ်။
ဒီနေရာမှာ ရေခဲတောင် (Iceberg) ဥပမာက အလွန်ဆီလျော်ပါတယ်။ ရေပေါ်မှာ မြင်နေရတာက code တွေ၊ error တွေ၊ ticket တွေပါ။ ရေအောက်မှာ မြုပ်နေတာကတော့ context တွေ၊ အဖွဲ့အစည်းတွင်း ချိတ်ဆက်မှုတွေနဲ့ customer တွေရဲ့ မျှော်လင့်ချက်တွေ ဖြစ်ပါတယ်။
မြင်နေရတဲ့ အစိတ်အပိုင်းကိုပဲ ဖြေရှင်းတာက အလုပ်ဖြစ်တယ်လို့ ထင်ရပေမယ့် တကယ့်အကြောင်းရင်းက ရေအောက်မှာ ကျန်နေခဲ့ရင် အဲ့ဒီပြဿနာက တခြားပုံစံနဲ့ ပြန်ပေါ်လာဦးမှာပါ။ နည်းပညာက ပြဿနာကို ဖြေရှင်းပေးနိုင်ပေမယ့် Context ကတော့ ငါတို့ ပြဿနာအမှန်ကို ဖြေရှင်းနေတာ ဟုတ်မဟုတ်ဆိုတာကို နားလည်စေပါတယ်။
AI က မြန်နှုန်းကို ပေးတယ်၊ လားရာကို မပေးဘူး
AI က ကျွန်တော်တို့ရဲ့ အလုပ်တွေကို ပိုမြန်စေပါတယ်။ ဒါပေမဲ့ မြန်နှုန်းသက်သက်က တန်ဖိုးကို မဖန်တီးနိုင်ပါဘူး။ လမ်းကြောင်းမှားကို အရှိန်နဲ့ သွားနေရင် မှားယွင်းတဲ့ ရလဒ်ကိုပဲ ပိုမြန်မြန် ရပါလိမ့်မယ်။
ဒါကြောင့် AI ခေတ်မှာ context က ပိုအရေးကြီးလာတာပါ။ Tool တွေက output ထုတ်ပေးရတာ လွယ်ကူစေတဲ့အခါ မေးခွန်းရဲ့ အရည်အသွေး (Quality of Question) က ပိုအရေးကြီးလာပါတယ်။
AI က option တွေ ပေးနိုင်ပေမယ့် အကျိုးဆက် (consequences) တွေကို တာဝန်မယူနိုင်ပါဘူး။ အဖွဲ့အစည်းရဲ့ အခြေအနေ၊ စနစ်ရဲ့ သမိုင်းကြောင်းနဲ့ လူသားတွေရဲ့ ပတ်ဝန်းကျင်ကို AI က အပြည့်အဝ နားမလည်နိုင်ပါဘူး။ အဲ့ဒီမှာ Full Stack Person ရဲ့ ဝေဖန်ပိုင်းခြားနိုင်စွမ်း (Judgment) က အဓိက ဖြစ်လာပါတယ်။
Full Stack Person တစ်ယောက်ရဲ့ ကြွက်သား (၅) ခု
ဒီ mindset ကို လေ့ကျင့်ယူလို့ရတဲ့ ကြွက်သား ၅ ခုအနေနဲ့ ကျွန်တော် မြင်ပါတယ်။
၁။ Technical Depth: ယုံကြည်မှုရှိရှိ အလုပ်လုပ်နိုင်ဖို့ အနည်းဆုံး နယ်ပယ်တစ်ခုမှာ နက်နက်နဲနဲ သိထားရပါမယ်။ ၂။ Systems Thinking: အရာရာကို အကွက်အကွင်းလိုက် ကြည့်တတ်ဖို့ ဖြစ်ပါတယ်။ တစ်ခုကို ပြောင်းလဲလိုက်ရင် တခြား ဘာတွေ ထိခိုက်နိုင်မလဲဆိုတာကို စဉ်းစားတာပါ။ ၃။ Communication: ကိုယ်နားလည်တာကို သူများ နားလည်အောင် ရှင်းပြနိုင်ခြင်းဟာ အလုပ်ရဲ့ အစိတ်အပိုင်းတစ်ခုပါ။ ၄။ Learning Agility: ခေတ်နဲ့အညီ အသစ်အသစ်တွေကို လိုက်လျောညီထွေ သင်ယူနိုင်စွမ်း ဖြစ်ပါတယ်။ ၅။ Judgment: ဘယ်အရာက အရေးကြီးဆုံးလဲ၊ ဘယ်ပြဿနာက အခုဖြေရှင်းဖို့ ထိုက်တန်သလဲဆိုတာကို ရွေးချယ်နိုင်စွမ်းပါ။
နိဂုံး
Full Stack Person ဆိုတာ သူရဲကောင်းတစ်ယောက်လို အကုန်လုံးကို လိုက်လုပ်နေသူ မဟုတ်ပါဘူး။ ကျွမ်းကျင်သူ (Specialists) တွေကို အစားထိုးဖို့လည်း မဟုတ်ပါဘူး။
တကယ်တော့ မှန်ကန်တဲ့ လူတွေ၊ မှန်ကန်တဲ့ အချက်အလက်တွေနဲ့ မှန်ကန်တဲ့ ဆုံးဖြတ်ချက်တွေကို ချိတ်ဆက်ပေးခြင်းအားဖြင့် team တစ်ခုလုံးရဲ့ impact ကို ပိုကြီးမားလာအောင် ကူညီပေးသူသာ ဖြစ်ပါတယ်။ နည်းပညာက ကျွန်တော်တို့ကို သန်မာစေတယ်၊ Context က ကျွန်တော်တို့ကို အသုံးဝင်စေတယ်၊ ချိတ်ဆက်မှု (Connection) ကတော့ ကျွန်တော်တို့ကို အကျိုးသက်ရောက်မှု ရှိစေပါတယ်။