Programmer is a....

ပရိုဂရမ်မာ ဆိုတာ...

ရုပ်ရှင်တွေထဲမှာ ကျွန်မတို့လို အိုင်တီသမားတွေနဲ့ ပရိုဂရမ်မာတွေကို ပြပြီဆိုရင်... ဆံပင်စုတ်ဖွား၊ အူကြောင်ကြောင် ပုံစံကြီးတွေနဲ့ပဲ အမြဲပြကြတာ။ ကြည့်ရင်းနဲ့ တကယ်မခံစားနိုင်တော့လို့ နည်းနည်းလောက်တော့ ပွားချင်တာများ။

enter image description here

လုပ်ငန်းပေါင်းစုံမှာ နည်းပညာတွေနဲ့ လည်ပတ်လာတဲ့ ဒီခေတ်မှာ ပရိုဂရမ်မာတစ်ယောက် မှားသွားခဲ့ရင် ငွေကြေးစနစ်တွေ၊ သယ်ယူပို့ဆောင်ရေး စနစ်တွေ၊ ကျန်းမာရေး စနစ်တွေ စတဲ့ ယန္တရား‌တွေ ရပ်သွားနိုင်တဲ့အတွက် ပရိုဂရမ်မာ တစ်ယောက်အနေနဲ့ သူလုပ်နေတဲ့ အလုပ်အပေါ် ရာနှုန်းပြည့် အာရုံထားရပါတယ်။ "စိတ်ရှုပ်နေလား... Software Engineer လုပ်ခိုင်းလိုက်၊ အဲဒီစိတ်ရှုပ်စရာထက် ပိုတာနဲ့ တွေ့ရင် သက်သာသွားလိမ့်မယ်" ဆိုသလိုပါပဲ။

အဲဒီလို တာဝန်ကြီးလှတဲ့ ပရိုဂရမ်မာတစ်ယောက် ဖြစ်ဖို့ဆိုတာ ကိုယ်တည်ဆောက်မယ့် စနစ်အကြောင်းကို အတွင်းသိအပြင်သိ နားလည်ထားတဲ့ ‘Domain Knowledge’ (လုပ်ငန်းခွင်ဗဟုသုတ) ရှိဖို့ လိုပါတယ်။ ရုပ်ရှင်ထဲကလို ကွန်ပျူတာရှေ့မှာ တစ်ယောက်တည်း စကားမပြောဘဲ ထိုင်နေလို့မရပါဘူး။ အလုပ်အပ်တဲ့သူ၊ တကယ်သုံးမယ့်သူတွေနဲ့ လုပ်ငန်းလည်ပတ်နေတဲ့သူတွေ (Stakeholders) အားလုံးနဲ့ စကားပြောအဆင်ပြေဖို့ လူမှုဆက်ဆံရေး (Communication Skill) ကလည်း ကောင်းမှဖြစ်မှာပါ။

လုပ်ငန်းလိုအပ်ချက်တွေကို တာဝန်ရှိသူတွေက လာရှင်းပြတဲ့အခါမှာလည်း သူတို့ကိုယ်တိုင် မေ့နေပြီး မမြင်သာတဲ့အချက်တွေကို မြင်အောင် ဆွဲထုတ်နိုင်တဲ့ မျက်စိရှင်ရှင် (Keen ဖြစ်ဖို့) လည်း လိုပါသေးတယ်။ နောက်ပြီး စနစ်တစ်ခုလုံး မှန်မှန်ကန်ကန် လည်ပတ်နိုင်ဖို့အတွက် ‘Logical Thinking’ (ယုတ္တိရှိရှိ တွေးခေါ်မြော်မြင်မှု) ကောင်းကောင်းနဲ့ စဉ်းစားတွေးခေါ်နိုင်ဖို့ကတော့ အဓိက သော့ချက်ပါပဲ။

ကိုယ့် Client တွေကို အကောင်းဆုံး ဝန်ဆောင်မှုတွေ ပေးနိုင်ဖို့ဆိုရင် နေ့တိုင်း ‘Up-to-date’ ဖြစ်ပြီး ပြောင်းလဲနေတဲ့ နည်းပညာအသစ်တွေကို အမြဲမျက်ခြေမပြတ် လေ့လာနေရပါတယ်။ ခက်တာက အဆင့်မြင့်နည်းပညာနဲ့ ပတ်သက်တဲ့ စာပေအများစုက မြန်မာလို ရှာရခက် (မရှိသလောက်) မို့လို့ အင်္ဂလိပ်စာကို ကောင်းကောင်း ဖတ်နိုင်ဖို့က မရှိမဖြစ်ပါပဲ။ ပိုဆိုးတာက ကိုယ့် Client ကသာ နိုင်ငံတကာ (International) ဖြစ်နေပြီဆိုရင်တော့ စနစ်တစ်ခုလုံးကို အချိတ်အဆက်မိမိ ထိုးထွင်းနားလည်နိုင်ဖို့ English စာ Listening, Speaking, Writing အကုန်လုံး ကျွမ်းကျင်နေဖို့ လိုပါတယ်။ ပြောရရင် လိုအပ်လာရင် အင်္ဂလိပ်လို ‘ရန်ဖြစ်နိုင်တဲ့အထိ’ ကို နှုတ်လျှာစွမ်းထက်နေဖို့ လိုပါတယ်နော်။

ဒါ့အပြင် လုပ်ငန်းတွေအတွက် စနစ်တွေ (Systems) တည်ဆောက်ပေးရတဲ့အခါ အဲဒီလုပ်ငန်းရဲ့ အတွင်းရေး အချက်အလက်တွေကို အသေးစိတ် လေ့လာရတာမျိုးပါ။ ဒါကြောင့် Client ဘက်က တောင်းဆိုလို့ ‘NDA’ (Non-Disclosure Agreement) ဆိုတဲ့ လျှို့ဝှက်ချက်ထိန်းသိမ်းမှု သဘောတူစာချုပ် မထိုးထားရရင်တောင်မှ တစ်ဖက်လုပ်ငန်းရဲ့ ကုန်သွယ်မှုလျှို့ဝှက်ချက် (Industrial Secret) ကို မပေါက်ကြားအောင် သိက္ခာရှိရှိ ထိန်းသိမ်းပေးရပါတယ်။

နောက်ပြီး ကိုယ့်အပေါ် ယုံကြည်မှုရစေဖို့ အလုပ်အပ်တဲ့အခါ သတ်မှတ်ထားတဲ့ ‘Milestones’ တွေ၊ ‘Time Table’ တွေအတိုင်း အချိန်မီပြီးစီးအောင် အချိန်ကို စနစ်တကျ စီမံခန့်ခွဲနိုင်ဖို့ (Time Management) ကလည်း အရေးကြီးလှပါတယ်။ သတ်မှတ်ထားတဲ့ ရက်မှာ အလုပ်မအပ်နိုင်ရင် ရက်အလိုက် % နဲ့ တွက်ပြီး ပြန်လျော်ပေးရမယ်ဆိုတဲ့ စာချုပ်ချုပ်တဲ့ Client မျိုးနဲ့တောင် ကျွန်မကိုယ်တိုင် ကြုံဖူးပါသေးတယ်။

စနစ်တွေကို တည်ဆောက်ပြီး သုံးနေကြတဲ့ အချိန်မှာလည်း ပေါ်လာတဲ့ အခက်အခဲ (Bugs) တွေကို အချိန်မဆိုင်းဘဲ ချက်ချင်းဖြေရှင်းပေးနိုင်ဖို့ ပြင်ဆင်ထားရပါတယ်။ လုပ်ငန်းအတွက် အရေးကြီးတဲ့ Programs တွေ၊ Data တွေဆိုတာ ဘာအကြောင်းကြောင့်မှ မပျက်စီးသွားရအောင် ‘Backup & Restore Procedure’ တွေတင်မကဘဲ Plan A, Plan B တွေပါ စနစ်တကျ ရှိနေရတာပါ။ (ရုပ်ရှင်တစ်ခုမှာ ကွန်ပျူတာ ရေစိုသွားလို့ ရေးထားတဲ့ Software မပြနိုင်ဘဲ ဖြစ်သွားတဲ့ အခန်းမျိုး တွေ့လိုက်ရလို့ အပြင်က ပရိုဂရမ်မာတိုင်းမှာ GitHub တွေ၊ တခြား Cloud Backups တွေ ရှိပြီးသားမို့လို့ အဲဒီလောက်ကြီးတော့ လာမနောက်ပါနဲ့လို့ ပြောချင်ပါတယ်နော်။

နောက်တချက်က အရေးကြီးရင် ကြီးသလို Client Site မှာ Stand by နေပေးရတာတွေ၊ Trouble Shooting လုပ်တဲ့ အချိန်မှာ ၂၄ နာရီ မက ဆက်တိုက်ဖြေရှင်းရတာတွေ၊ Deadline အမီ ရေးနေရတဲ့ အချိန်မှာ မထင်မှတ်တဲ့ ပြဿနာတွေ တွေ့လာရင် နည်းလမ်းပေါင်းစုံရှာရတာတွေ စတဲ့ Under Pressure (ဖိအား) အများကြီးကြားမှာ အလုပ်လုပ်ရတာဖြစ်တဲ့အတွက် ပရိုဂရမ်မာတစ်ယောက်အနေနဲ့ စိတ်ပိုင်းဆိုင်ရာ၊ ရုပ်ပိုင်းဆိုင်ရာ ကျန်းမာနေဖို့ကလဲ လိုအပ်ပါသေးတယ်။

ပြောရမယ်ဆိုရင်တော့ ပရိုဂရမ်မာတွေရဲ့ လုပ်ဆောင်ချက်တွေက အများကြီး ကျန်ပါသေးတယ်။ ဒါပေမဲ့ နောက်ဆုံးနဲ့ အရေးကြီးဆုံး အချက်လေးတစ်ခုနဲ့ပဲ ပိတ်လိုက်ပါတော့မယ်။ ကိုယ့်ကို အလုပ်အပ်တဲ့သူတွေက သူတို့ လုပ်ငန်းတစ်ခုလုံးကို ယုံကြည်ပြီး လာအပ်ကြတာ ဖြစ်တဲ့အတွက် ကိုယ့်ဘက်ကလည်း သူတို့ ယုံကြည်စိတ်ချရမယ့် ‘Personality’ (ကိုယ်ရည်ကိုယ်သွေး) မျိုး ရှိဖို့ လိုပါတယ်။ ရုပ်လှတာမလှတာထက် လူပုံစံက သပ်ရပ် Smart ကျနေမှ ဖြစ်မှာပါ။ ခေါင်းစုတ်ဖွား၊ အိပ်ရေးမဝတဲ့ ရုပ်ကြီးနဲ့ သွားတွေ့လို့တော့ ဘယ်ဖြစ်မလဲနော်။

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