Domain Knowledge ဆိုတာ ဘာလဲ?

Software Project တွေ ရေးကြတဲ့အချိန်မှာ သိပ်ထည့်မပြောဖြစ်ကြတဲ့ ခေါင်းစဉ် တစ်ခုရှိတယ်။​ Domain Knowledge ပါပဲ။ မြန်မာမှုပြုရမယ်ဆိုရင် သက်ဆိုင်ရာ လုပ်ငန်းနယ်ပယ်နဲ့ ဆိုင်တဲ့ ဗဟုသုတ လို့ ပြောရမလား မသိ။

ဆိုကြပါစို့ ကျွန်တော်တို့ ဆေးခန်းတစ်ခုရဲ့ ဆေးကုသမှု မှတ်တမ်းကို သိမ်ဖို့အတွက် Software တစ်ခုရေးရမယ်ဆိုပါစို့။ ဒီမှာ ဆေးခန်းတွေ အလုပ်လုပ်တဲ့ပုံစံကို သိဖို့ လိုလာပြီ။ ကိုယ်တိုင် ဆေးခန်းသွားခဲ့တဲ့ အတွေ့အကြုံတွေ။ က

Ref; https://www.facebook.com/sayar.ei.maung/posts/pfbid0LurWLjwv5vAQ6Rpnkeeq8wknUT2qkV9vmKKMF3vWuHZ8undqM4pgH69oiUMtw9vRl

လေ့လာစရာရှိတာတွေ လေ့လာပြီးလို့ ရှေ့ဆက်သွားကြတဲ့အခါ Developer တွေမှာ ပုံစံ (၂) မျိုး ရှိနိုင်တယ်။ လုပ်ငန်းခွင်ထဲကို ဝင်သွားတဲ့ Developer နဲ့ လုပ်ငန်းခွင်ပြင်ပမှာ ကိုယ့်နည်းကိုယ့်ဟန်နဲ့ ရပ်တည်တဲ့ Developer တို့ပါ။ ဒီနှစ်မျိုးရဲ့ သွားကြတဲ့ လမ်းကြောင်းဟာ တူညီမှုမရှိသလို အားသာချက် အားနည်းချက်တွေလည်း ကိုယ်စီကိုယ်စီ ရှိကြတယ်။ ၁။ လုပ်ငန်းတာဝန် (Responsibility) လုပ်ငန်းခွင်တဲ့ ရောက်သွားတဲ့သူဟာ လုပ်ငန်းခွင်နဲ့အတူ စီးမျောရတဲ့အတွက် ကိုယ့်ပါတ်ဝန်းကျင်မှာ စီနီယာတွေ၊ ကျွမ်းကျင်သူတွေ၊ ရှိကြသလို ကြိုတင်သတ်မှတ်ထားပြီးသား Workflow တွေ Procedure တွေလည်း ရှိနေနိုင်တယ်။ စနစ်ကြီးတစ်ခုလုံးရဲ့ တာဝန်ဟာ ကိုယ့်အပေါ်မှာ လုံးလုံးတည်ရှိနေတာမျိုး မဟုတ်ဘဲ ကိုယ့်အပေါ်ချပေးလာတဲ့ Task ကို ကျေပွန်အောင် လုပ်ရတဲ့အခါ သူများနဲ့တန်းတူ ပြီးမြောက်အောင် လုပ်ရတဲ့ Pressure တော့ရှိမယ်။ အချင်းချင်း ကပ်ပြိုင်လို့ စိတ်ညစ်ရတာမျိုးလည်း ရှိကောင်း ရှိနိုင်တယ်။ ကောင်းတဲ့အချက်ကတော့ ရှိပြီးသား Workflow တွေ၊ သာမာန်အားဖြင့် လက်လှမ်းမှီဖို့မလွယ်တဲ့ ကိုယ့်ရှေ့က ကြိုရှိနှင့်တဲ့ အဆင့်မြင့် နည်းပညာတွေကို ထိတွေ့သိရှိခွင့်ရမှာဖြစ်ပြီး၊ ဆိုးတဲ့အချက်ကတော့ ရံဖန်ရံခါ ဒီဟာတွေက ကန့်သတ်ချက်တွေ လာဖြစ်နေပြီး ရှေ့ရောက်သင့်သလောက် အမြန်မရောက်တာမျိုးလည်း ဖြစ်နိုင်ပါတယ်။ လုပ်ငန်းခွင်ပြင်ပမှာ ရပ်တည်သူကတော့ စနစ်တစ်ခုလုံးက ကိုယ့်ခေါင်းပေါ်မှာ ရောက်နေတာမျိုး (သို့မဟုတ်) စနစ်တစ်ခုလုံးရဲ့ တာဝန်ဟာ ကိုယ့်ကို တစ်နည်းတစ်ဖုံ သက်ရောက်နေတာမျိုးဖြစ်နိုင်တယ်။ သက်ဆိုင်ရာ ပရောဂျက် အလုပ်လုပ်ဖို့၊ အောင်မြင်ဖို့ သာမက၊ လုပ်နေဆဲကာလ Workflow တွေ Procedure တွေအပါအဝင်၊ မလုပ်ခင်၊ လုပ်ပြီး Customer Relationship တွေ Finance တွေကအစ အားလုံးအကုန် ကိုယ့်ခေါင်းပေါ် ရောက်နေမှာပါ။ ဆိုးတဲ့အချက်ကတော့ အတွေ့အကြုံရင့်ပြီးသူအတွက် ပြဿနာမဟုတ်ပေမယ့်၊ အတွေ့အကြုံနုသေးသူအတွက် ဒါတွေဟာ အလွန်ကြီးမားတဲ့ ဖိအားတွေဖြစ်လာပြီး လူကျန်းမာရေး စိတ်ကျန်းမာရေး ထိခိုက်တာမျိုးတွေထိတောင် ရှိတတ်ကြပါတယ်။ ကောင်းတဲ့အချက်ကတော့ ဒီဖိအားတွေကို ကျော်ဖြတ်နိုင်လိုက်ပြီဆိုရင် ရပ်တည်မှုတစ်ခုအတွက် အလုပ်ရဖို့အပါအဝင် သူများကို အားကိုးစရာမလိုတော့ဘဲ၊ ကိုယ့်ခြေထောက်ပေါ်ကိုယ် အခိုင်အမာ ရပ်တည်နိုင်တဲ့သူ ဖြစ်သွားနိုင်ပါတယ်။ ၂။ လုပ်ငန်းဗဟုသုတ (Enterprise Knowledge) လုပ်ငန်းခွင်ထဲကို ရောက်သွားသူတွေ အတွက် အဖိုးမဖြတ်နိုင်တဲ့အရာကတော့ Domain Knowledge နဲ့ အပြင်မှာ ထိတွေ့ခွင့်ရဖို့ မဖြစ်နိုင်တဲ့၊ ငွေသိန်းသန်းချီ ရင်းနှီးမြှုတ်နှံပြီး၊ လူရာပေါင်းများစွာကနေ၊ ထောင်သောင်းထိ ပါဝင်လည်ပါတ်တဲ့ လုပ်ငန်းကြီးတွေရဲ့ လုပ်ငန်းလည်ပါတ်ပုံကို သိရှိရခြင်းပဲ ဖြစ်ပါတယ်။ ဒီလုပ်ငန်းတွေမှာ ရှိတတ်တဲ့ပြဿနာတွေ၊ ဖြေရှင်းကြတဲ့ Solution တွေ၊ အသုံးပြုနေကြတဲ့ Tools တွေ Package တွေ Service တွေနဲ့ ဒါတွေကို ကိုင်တွယ်ခွင့်ရရှိခြင်းတို့ဟာ အပြင်လူအတွက် သင်ယူဖို့ မဖြစ်နိုင်တဲ့ ကိစ္စတွေပါပဲ။ ပညာလိုလားသူ၊ လေ့လာအားကောင်းသူ၊ အလုပ်ကြိုးစားသူဆိုရင်ပေါ့။ လုပ်နေတာတော့ လုပ်ငန်းကြီးမှာပဲ၊ ဘာမှတော့ မသိဘူး ဆိုသူများလည်း ရှိနိုင်ပါတယ်။ ကောင်းတဲ့အချက်အနေနဲ့ အခုလို အပြင်လူမသိနိုင်တဲ့ လုပ်ငန်းဗဟုသုတတွေပေါ်မူတည်ပြီး တစ်ဆင့်ပြီးတစ်ဆင့် တက်လှမ်းနိုင်တဲ့ ခိုင်မာတဲ့ Career တစ်ခုကို တည်ထောင်နိုင်သွားမှာပါ။ ကိုယ့်နေရာကို အပြင်လူ ဝင်ယူဖို့ဆိုတာကို စိတ်ပူနေဖို့မလိုဘဲ ကိုယ်နဲ့လုပ်ငန်းတူ ပြိုင်ဘက်တွေကိုသာ စိတ်ပူရမှာပါ။ ဒီဗဟုသုတတွေကို အပြင်ထွက် အသုံးချပြီး လုပ်ငန်းတည်ထောင် သွားသူတွေ ရှိကြသလို ဒီထဲမှာပဲ မြုပ်သွားပြီး၊ ဆက်နေချင်လည်းနေ၊ မနေချင်လည်းနေရသူတွေလည်း ရှိကြတာပါပဲ။ ဒါကတော့ ဆိုးတဲ့အချက်တစ်ခုအနေနဲ့ သတိပြုရမှာပါ။ ပြင်ပမှာ ရပ်တည်တဲ့ Developer တွေအနေနဲ့လည်း ကန်ထရိုက်လုပ်ရင်းလုပ်ရင်းနဲ့ လုပ်ငန်းကြီးတွေအကြောင်းကို တစ်ဖြည်းဖြည်း သိရနိုင်ပေမယ့်၊ တစ်ကယ့် လုပ်ငန်းထဲကလူလိုတော့ ထဲထဲဝင်ဝင်နဲ့ ပြည့်ပြည့်စုံစုံသိရဖို့ သိပ်မလွယ်ပါဘူး။ ဒါကြောင့်လည်း လုပ်ငန်းကြီးသုံး Solution ကဏ္ဍမှာဆိုရင် နေရာရပြီးသား ပါတနာလုပ်ငန်းကြီးတွေကသာ ကြီးစိုးထားလေ့ရှိပြီး ပြင်ပမှာ ရပ်တည်တဲ့ Developer တွေကတော့ တစ်ဆင့်ကျလာတဲ့ ကန်ထရိုက်တစ်ချို့နဲ့အတူ အလယ်အလတ်အဆင့် လုပ်ငန်းတွေ၊ လုပ်ငန်းလေးတွေမှာ ပိုအာရုံစိုက်ကြရမှာဖြစ်ပြီး၊ အများသုံး Consumer Product တွေဘက်မှာ အထူးသဖြင့် အဓိကထားရမှာ ဖြစ်ပါတယ်။ ၃။ အသစ်တီထွင်မှု (Innovation) လုပ်ငန်းခွင်ထဲ ရောက်သွားတဲ့သူတွေရဲ့ အားအနည်းဆုံးအချက်ကတော့ ဒီ Innovation ဘက်ပိုင်းဖြစ်နိုင်ပါတယ်။ တီထွင်ဉာဏ်ရှိကြပေမယ့် အထိခိုက်မခံတဲ့ ဧရာမ Solution တွေနဲ့အတူ စီးမြောနေရတဲ့အတွက် အဆင့်ဆင့် ချမှတ်ထားတဲ့ သတ်မှတ်ချက်ဘောင်ထဲမှာသာ အလုပ်လုပ်ရတဲ့အခါ စိတ်ရှိတိုင်း ဆန်းသစ်ချင်လို့တော့ မရနိုင်တော့ပါဘူး။ နောက်တစ်ခါ၊ ဒီ ဧရာမ Solution ကြီးမှာ ကိုယ့်အချိန်တွေကို မြှုတ်နှံထားရတဲ့အတွက် ပြင်ပမှာဖြစ်ပေါ်နေတဲ့ မြန်ဆန်လှတဲ့ အပြောင်းအလဲတွေမှာ နောက်ကျနေတတ်တာမျိုးလည်း ဖြစ်နိုင်ပါသေးတယ်။ အာရုံစိုက် ပြုလုပ်တဲ့ အသစ်တီထွင်မှုတွေကလည်း အများပြည်သူကို ရိုက်ခတ်တဲ့ဟာမျိုးတွေထက် ဒီ Solution ကို ပိုကောင်းအောင်၊ ဒီ Solution ကြီးပေါ်မှာပဲ ရိုက်ခတ်တတဲ့ တီထွင်မှုမျိုးတွေ ဖြစ်နေနိုင်ပါတယ်။ ကောင်းတဲ့အချက်ကတော့ အပြင်က အသစ်အဆန်းတွေမှာသာ နည်းနည်းနောက်ကျနေတာ၊ အပြင်လူတွေ အနားကပ်ဖို့တောင် မဖြစ်နိုင်တဲ့ ဒီ Solution ကြီးကိုတော့ ခရေစေ့တွင်းကျ အကုန်သိရှိကျွမ်းကျင်တယ်ဆိုတာမျိုး ဖြစ်နေပါလိမ့်မယ်။ ပြင်ပမှာ ရပ်တည်တဲ့ Developer တွေကတော့ အရှိန်အဟုန်နဲ့ ပြောင်းလဲနေတဲ့ နည်းပညာနောက်ကို အမြဲလိုက်နေနိုင်မှာ ဖြစ်သလို၊ စမ်းသပ်အသုံးချမှုတွေကိုလည်း ရဲရဲလုပ်လို့ရတဲ့အတွက် ဆန်းသစ်တီထွင်မှုပိုင်းမှာ ပိုအားသာနေတာမျိုး ဖြစ်နိုင်ပါတယ်။ ကောင်းတဲ့အချက်အနေနဲ့ ပြုလုပ်လိုက်တဲ့ ဆန်းသစ်တီထွင်မှုကလည်း လုပ်ငန်းတစ်ခု၊ Solution တစ်ခုအတွက် မဟုတ်ဘဲ အများနဲ့ထိတွေ့နေမှာဖြစ်လို့ ပိုကျယ်ပြန့်တဲ့ သက်ရောက်မှုတွေရှိတဲ့ တီထွင်မှုတွေ ဖြစ်နေနိုင်သလို၊ ဆိုးတဲ့အချက်အနေနဲ့ ထွင်တော့ထွင်နေတာပဲ လိုအပ်တဲ့ Traction တို့ Adoption တို့မရှိလို့ ဘာမှဖြစ်မလာတာ မျိုးတွေလည်း ရှိနိုင်တာပါပဲ။ —– အားလုံး တစ်ယောက်နဲ့တစ်ယောက် ဝါသနာတွေ အားသာချက်တွေ မတူကြပါဘူး။ တစ်ချို့က လုပ်ငန်းကြီးတွေမှာ အလုပ်လုပ်ရတဲ့ ခိုင်မာတဲ့ Career တစ်ခုကို တည်ဆောက်ချင်ပြီး၊ တစ်ချို့ကတော့ လွပ်လွပ်လပ်လပ် ကိုယ့်စိတ်နဲ့ကိုယ် ရပ်တည်ချင်ကြပါတယ်။ တစ်ချို့က ခိုင်မာတဲ့ စနစ်ဘောင်ထဲမှာ တိတိကျကျ လုပ်ရတာကို နှစ်သက်ပြီး တစ်ချို့က အကန့်အသတ်တွေမရှိဘဲ စိတ်လွတ်လက်လွတ် ဖန်တီးရတာမျိုးကို နှစ်သက်နိုင်ပါတယ်။ ဒါကြောင့် ဘယ်လမ်းကိုလျှောက်လျှောက် မမှားပါဘူး။ နောက်ဆုံးဆင့် စိတ်ပါလို့ လမ်းနှစ်ခုလုံးကို တစ်လှည့်စီ လျှောက်မယ်ဆိုလည်း ရပါသေးတယ်။ အရေးကြီးတာက “ကိုယ်လျှောက်နေတဲ့လမ်းကို ကိုယ်သိဖို့” ပါပဲ။ လုပ်ငန်းခွင်ထဲကလူက အပြင်လူတွေ အသစ်အဆန်း လုပ်နေတာကြည့်ပြီး စိတ်ဓာတ်ကျနေလို့ မရသလို၊ အပြင်ကလူကလဲ သူ့လုပ်ငန်းမှာ သုံးနေတဲ့ ဧရာမ Solution အကြောင်းကို မသိလို့ပါဆိုပြီး စိတ်ဆင်းရဲနေစရာ မလိုပါဘူး။ လျှောက်နေတဲ့ လမ်းကို မကြိုက်ရင် ပြောင်းလို့ရပါတယ်။ မပြောင်းချင်ရင်တော့ ကိုယ်လျှောက်တဲ့လမ်းကိုပဲ အာရုံပြုပြီး ဆက်လျှောက်ရမှာ ဖြစ်ပါတယ်။

Written on June 26, 2023