තනියම ඉගෙන ගෙන Software engineer කෙනෙක් වෙන්න පුලුවන්ද?

dewmal nilanka

Well-known member
  • Oct 25, 2011
    1,327
    1,292
    113
    ඔව් පුළුවං

    සහ මේක හිතන තරම් අමාරු වැඩක් නෙවෙයි තමගෙ උනන්දුව තියෙනව නන්. හැබැයි හොදටම මතක තියාගන්න ඕනි මේක එහෙන් මෙහෙන් පොඩ්ඩ පොඩ්ඩ කරල නන් කරන්න පුළුවන් දෙයක් නෙවෙයි. සමහර කොටස් තියෙනව මාරම කම්මැලියි ඉගෙන ගන්න ඒ කොටස් ඉගෙන ගන්නකොට හිතෙනව ඇයි මේක මොකටද Software Engineer කෙනෙක් වෙන්න මේකෙන් මොනවත් සම්බන්ධයක් නෑනෙ කියලත්. ඒ උනාට ඒක එහෙම නෑ.



    Software engineer කෙනෙක් කියන්නෙ ප්‍රයෝගික ගැටලුවකට Software එකක් භාවිතයෙන් විසදුමක් නිර්මාණය කරන කෙනෙක්ට. ඔයාල දන්නව විසදුමක් නිර්මාණය කරන්න නන් අනිවායෙන්ම අපිට ඒ ගැටලු සම්බන්ධව හොද අවබෝධයක් තියෙන්න ඕනි සහ එම ගැටලුව විසදන්න භාවිතා කලයුතු තාක්ෂණික ක්‍රමවේද ගැන අවබෝධයක් තියෙන්න ඕනි කියල. එතකොට ගැටලුවක් එන වෙලාවට අපිට සමහර කොටස් අලුතෙන් ඉගෙන ගන්න බෑ. එතකොට අපි ඒව කලින් ඉගෙන ගෙන ඉන්න ඕනි. හැම එකම අපිට ඉගෙන ගන්න බෑ ඒ උනාට අපි ඉගෙන ගන්න වෙලාවට සමහර මූලික කාරණා ඉගෙන ගෙන ඉන්න එක වැදගත්. මේ ගැන ටිකක් දීර්ඝ ලිපියක් මම කලින් ලියල තිබ්බ මෙතනින් ඒකත් බලන්න පුළුවන්. (Link)


    මේක බොහෝ විට ලිපි රාශියකට පළවෙනි ලිපිය වෙයි. ලැබෙන ප්‍රතිචාර ඉල්ලීම් එක්ක මම හිතාගෙන් ඉන්නවට වඩා ලිපිත් ලියන්න වෙයි. කොහොම උනත් මගෙ මෝටිවේශන් එක මේක කාට හරි වැදගත් වෙයි කියන එක. මුලින්ම අපේ මාර්තුකාව වෙන්නෙ “Software engineer කෙනෙක් කියන්නෙ කවුද කියන එක සහ එයාගෙ වගකීම් මොනවද කියන එක”. මේක කොටස් තුනකට තමා ලියන්න බලාපොරොත්තු වෙන්නෙ.


    මුලින්ම අපි බලමු Software engineer කෙනෙක් කියන Position එකේදී Company එක පැත්තෙන් මොනවද බලපොරොත්තු වෙන්නෙ කියන එක. මේක අපිට Technical සහ Non Technical කියල කොටස් දෙකකට බෙදන්න පුලුවන්.

    technical කියන්නෙ අපි Software එකක් හදන්න ගියාම අවශ්‍යය වන දේවල් සහ Non Technical කියන්නෙ Software එකක් හදන්න ඕනි කරන දේවල් එකතු කරගන්න කලයුතු වැඩ සම්බන්ධයෙන් තියෙන හැකියාව. ඕකෙන් Interview එකකින් බලන්න පුළුවන් වැඩි පුරම technical හැකියාව විතරයි. Non Technical ඒව ගැන අදහසක් ගන්න පුළුවන් උනාට හරියටම දැනගන්න වෙන්නෙ මාසයක් දෙකක් වැඩ කරලම තමා. මේක නිසා සමහර වෙලාවට Company වලින් ජොබ් එක ස්ථිර කරන්න මාස දෙක තුනක් ගන්නව.


    මොනවද මේ Technical Responsibilities.


    Design and Development


    Software engineer කෙනෙක් විදියට මෙතනදි වෙන්නෙ ඔයා ගැටලුවට software වලින් විසදුමක් ඉදිරිපත් කරන එක. මේක හරියට කරන්න බැරි නන් අනික් දෙවල් ගැන කතා කරන එකත් තේරුමක් නෑ. Software එකක Code වලින් කරන්න තියෙන්නෙ ඇත්තටම 40%ක් වගේ ඉතුරු 60% වෙන්නෙ තමන් විසදුම නිර්මාණය කරන විදිය.


    මුලින්ම අපි දැනගන්න ඕනි අපි මේ Software එක හදල දෙන්නෙ කාටද කියන එක සහ එයා මොනවටද මේක භාවිතා කරන්නෙ කියන එක. මේ දේවල් වලට ගොඩක් වෙලාවට මේ වෙනකොට Company ඇතුලෙ Job role එකක් තියෙනව Business Analyst (BA) කියල මෙතනදි වෙන්නෙ හරියටම Client ඉල්ලන දේවල් පිළුවලකට එකතු කරගෙන ඒව Software engineer කෙනෙක්ට ගැලපෙන විදියට හදාගන්න එක. ඊට පස්සෙ මේ එකතු කරගත්ත දේවල් වලින් තමා අපි හදන්න ඕනි මොකද්ද කියන එක ගැන අදහසක් ගන්නෙ.


    අපි එකතු කරගත්ත Requirement එකත් එක්ක දැන් අපි බලන්න ඕනි හරියටම මේ කියන දේවල් කොහොමද හදන්නෙ කියන එක. අපි හදන software එකේ මොනවද inputs output වෙන්නෙ සහ Process එක මොකද්ද කියන එක හරියටම අපි තේරුම් ගත්තොත් අපිට මේ වැඩේ ලේසියි. මේක අපිට ෆීල්ඩ් එකට ආව ගමන්ම පුළුවන් වෙන දෙයක් නෙවෙයි. මේක හරියටම තේරුම් ගන්න නන් අඩුම අවුරුදු 3,4කවත් එක්ස්පීරියන්ස් එකක් ඕනි. ඒක හදිසි වෙලා ගන්න පුළුවන් එකකුත් නෙවෙයි වැඩ කරගෙන ගිහින්ම තමා ගන්න පුළුවන්. එතකොට මේ කොටසට ගොඩක් Company වල සම්බන්ධ වෙන්නෙ Software Architecture, Project Manage, Senior Software engineer වගේ Job Roles එකක් හෝ කිහිපයක්. ඔතනදි හැදෙනව Document ගොඩක් ඒව සමහර ඒව අපි ආපහු Client ට දීල එයාගෙ අවසර ගන්නව සමහර ඒව Client ට දෙන්නෙ නෑ ඒව අපි ඇතුලෙ Software එක Develop කරන අයට Software එක ටෙස්ට් කරන QA ලට වගේ දෙනව.


    ඔය Stage එකෙන් පස්සෙ තමා අපිට හරියටම code කරන්න පටන් ගන්න පුළුවන් වෙන්නෙ මේ වෙනකොට අපි Software එක හදන්න ඕනි Language, Framework, Platform වගේ දෙවල් සාකච්චා කරල තීරණය කරගෙන ඉවරයි. දැන් තියෙන්නෙ ටික ටික අපි අපේ විසදුම හදාගෙන යන එක.



    මේ කොටසෙදි මුලදි සමහරවිට අපිට කරන්න වෙන්නෙ ගොඩක් අය එකතු වෙලා හදපු විසදුමක Code එක ලියන කොටස විතරක් වෙන්න පුළුවන්. එහෙම වෙන්න හේතුව තමා මේ කොටස තමා තියෙන වැදගත්ම කොටස අපි දෙන Software Solution එකේ. ඉතින් ඒක හරියට කරන්න නන් අපිට ඕනිම වෙන දෙයක් තමා Experience. Industry එකට ගිය ගමන්ම අපිට නැත්තෙත් ඕකනෙ.


    ඔයා ෆීල්ඩ් එකට අලුත් නන් මේ කොටසදි වෙන හැම දෙයක්ම හොදට සිහියෙන් බලාගෙන ඉන්න. නොදන්න දේවල් තිබ්බොත් මුලින්ම් Search කරල බලන්න ඊට පස්සෙත් තේරෙන්නෙ නැත්තන් ChatGPT/Google Gemini වගේ AI එකකින් බලන්න එත් තේරෙන්නෙ නැත්තන් තමන්ගෙ Senior කෙනෙක්ගෙන් අහන්න. මේ කියපු ෆ්ලෝ එක හරිම වැදගත් අපේ දියුණුවට.


    අපිට ඉක්මනට ගැටලුවක් විසදගන්න පුළුවන් ඒ සම්බන්ධයෙන් අත්දැකීම් තියෙන කෙනෙක්ගෙන් ඒක ඇහුවම. හැබයි එයාට ඒ අත්දැකීම් ආපු විදිය ඔයාට ඉගෙන ගන්න බෑ. IT Field එකේ වැදගත්මක කොටස තමා ඔයා ඇයි ඒ විසදුමට ආවෙ කියන එක. ඔයාට ඕනි තැනක ගිහින් කියන්න පුළුවන් වෙන්න ඕනි ඇයි මම එහෙම කරේ මොකද්ද ඒ ගත්ත තීරණය පිටිපස්සෙ තියෙන Logic එක කියන එක. මේ කොටස අහල ඉගෙනගන්න බෑ ඒකට ඔයත් ඒ පාරෙම යන්න ඕනි. ඔය මම කිව්වෙ ඒක ඉගෙන ගන්න යන පාර. සමහර වෙලාවට අපිට ඉක්මනට විසදගන්න ඕනි වෙලාවට Senior කෙනෙක්ගෙන් අහන්නත් වෙලාව තියෙනව නන් ඔය කිව්ව විදියට කරන එකත් තීරණය කරන්න ඕනි තමන් තමා. හිර වෙලා තියෙන වැඩක් අස්සෙ ඕක තනියම කරන්න යනව කියන එක ටීම් එකටම බලපාන්න පුළුවන් දෙයක් නිසා ඒව ගැනත් සැලකිලිමත් වෙලා ඔය වැඩේ කරන්න.


    ඇත්තටම ෆීලඩ් එකට අලුත් වෙන්න ඕනිම නෑ මම උනත් මේ කොටසෙදි තාම අලුත් දේවල් ඉගෙන ගන්නව අපි එක්ක වැඩ කරන Inten ලගෙන් පවා. බය නැතුව තමන්ට තේරුන් නැත්තන් මොන්ටිසෝරි බබෙක්ගෙන් උනත් කොහොමද ඒක කරේ කියන එක අහල ඉගෙන ගන්න. ප්‍රශ්නයක් අහල ඉගෙන ගන්න පුළුවන් වෙනව කියන එක හැම වෙලේම ලැබෙන අවස්ථාවක් නෙවෙයි ගොඩක් අයට. ඒ නිසා ලැබෙන චාන්ස් එකෙන් උපරිම ප්‍රයෝජන ගන්න.


    Part 2

    Post in thread 'තනියම ඉගෙන ගෙන Software engineer කෙනෙක් වෙන්න පුලුවන්ද?' https://elakiri.com/threads/තනියම-ඉ...r-කෙනෙක්-වෙන්න-පුලුවන්ද.2160365/post-29894279
     
    Last edited:

    nevermindNevergiveup

    Well-known member
  • Jul 28, 2017
    28,450
    36,378
    113
    මැදමහනුවර
    හොඳ portfolio එකක් හදාගන්න
    LinkedIn profile එක maintain කරන්න
    communication හදාගන්න
    හොඳ GitHub projects ටිකකට contribute කරන්න
    Stackoverflow එකේ rep ටිකක් ගන්න ට්‍රයි කරන්න
    ඉන්ටව් එක එකේදි confidence පිට කතාකරන්න

    ලොකු කමකට කියනවා නෙවෙයි මචං
    මට දැන් වයස 27 (1997)
    O/L A1, B1, C3, S3, W1
    A/L තුන්පාරක් කරා languages වලින් තුන්පාරම පේල් (CSF,SFF,SSF)
    වයස 21 න් Tour Consultant ජොබකට ඉන්ටව් ගියා
    එතන MD මගෙන් උන්ගෙ වෙබ් සයිට් එක හදන්න පුළුවන්ද ඇහුවා
    එහෙම්ම එතන web developer & Social media executive වුනා
    ඊට පස්සේ jr. frontend dev විදියට SaaS කම්පනියකට ගියා
    ඊටපස්සේ SE විදිහට Financial Services කම්පනියකට ගියා
    දැන් SSE කෙනෙක් තවම ඩිග්‍රි එකක් නෑ

    @shenat @SLK_sri @FALL3N @gamerlk @sliit_kolla @Nadun26
     

    dewmal nilanka

    Well-known member
  • Oct 25, 2011
    1,327
    1,292
    113
    meeta awuruddakata withara kalinuth damma neda patan ganna hati:D:D
    ඒ ලින්ක් එකත් ඕකෙම ඇති. ඒ දැම්මේ කෝස් එකක් තෝරාගන්නවා නන් කොහොමද තෝරාගන්නේ කියලා. දැන් ගොඩක් අයට ඕනි තනියම කරගන්න විදිය.
     

    dewmal nilanka

    Well-known member
  • Oct 25, 2011
    1,327
    1,292
    113
    Software Engineer. it field එකේ engineersla ඉන්නේ කොහොමද ඕයි🤭.
    ඉන්නවා මල්ලි 😂. Software කියන්නේ it වල sub topic එකක් නේ.

    Engineer කියන්නේ ඇයි ස් කියන එකත් ඕකෙම ඇති තව ලිපියක් ඒක බලන්න.
     
    Last edited:

    Honda.putha

    Well-known member
  • Dec 26, 2017
    17,242
    29,827
    113
    ඔයාට ඕනි තැනක ගිහින් කියන්න පුළුවන් වෙන්න ඕනි ඇයි මම එහෙම කරේ මොකද්ද ඒ ගත්ත තීරණය පිටිපස්සෙ තියෙන Logic එක කියන එක.
    මම කට්ටියව ඉන්ටර්වීව් කරද්දි අහන්නෙම මේක. මේක කන්ෆිඩන්ස් පිට ඩිපෙන්ඩ් කරන්න බෑ කියන්නෙම වැඩක් නෑ.

    මට සමහර එවුන් හම්බෙලා තියෙනවා නමට ප්‍රෝග්‍රැමින් උනාට මෙලෝ දෙයක් බැරි. ඇනලයිස් කිරිල්ලවත් කෝඩින්වත්. හැබැයි විභාග ටික පාස්වෙලා තියෙනවා.

    තව සමහරු හම්බෙලා තියෙනවා එක ලැන්ග්වේජ් එකක සින්ටැක්ස් එහෙම මූ කාලද කියලා හිතෙන තරම්ම කෝඩින්ග් පුලුවන්. හැබැයි ප්‍රශ්නයක් ඇනලයිස් කරගන්න බෑ. මෙහෙම මෙහෙම කරපන් කිව්වොත් විනාඩියෙන් දෙකෙන් මාර කෝඩ් ගැහිල්ලක් ගහන්නෙ. මම හිතන්නෙ ඒ කන්සෙප්ට් ඉගෙන ගන්නෙ නැතුව ලැන්ග්වේජ් ටියුටෝරියල් ෆලොව් කරපු කට්ටිය.

    කන්සෙප්ට් දන්න එකාට ලැන්ග්වේජ් අතර මාරු වෙන්න හරිම ලේසි.

    තව මට හම්බෙලා තියෙනවා ආසාවට කෝඩින් ඉගෙනගත්තු එවුන්. ඒ කියන්නෙ ප්‍රෝගැමින්ග් සම්බන්ධ දෙයකට කැම්පස් තේරුනේ නැති උනත් පිසිකල් තේරිලා අමතරව ඉගෙනගත්තු එවුන්. උන් නම් මාර සාර්ථකයි. සමහර වෙලේට ප්‍රෝග්‍රැමින්ග් ඩිග්‍රි තියෙන උන්ට වඩා. එකෙක් ඒ ලෙවල් කොමර්ස් කරලා තියෙන්නෙ. ඒත් ඌට හොඳට පුලුවන්.
     

    dewmal nilanka

    Well-known member
  • Oct 25, 2011
    1,327
    1,292
    113
    මම කට්ටියව ඉන්ටර්වීව් කරද්දි අහන්නෙම මේක. මේක කන්ෆිඩන්ස් පිට ඩිපෙන්ඩ් කරන්න බෑ කියන්නෙම වැඩක් නෑ.

    මට සමහර එවුන් හම්බෙලා තියෙනවා නමට ප්‍රෝග්‍රැමින් උනාට මෙලෝ දෙයක් බැරි. ඇනලයිස් කිරිල්ලවත් කෝඩින්වත්. හැබැයි විභාග ටික පාස්වෙලා තියෙනවා.

    තව සමහරු හම්බෙලා තියෙනවා එක ලැන්ග්වේජ් එකක සින්ටැක්ස් එහෙම මූ කාලද කියලා හිතෙන තරම්ම කෝඩින්ග් පුලුවන්. හැබැයි ප්‍රශ්නයක් ඇනලයිස් කරගන්න බෑ. මෙහෙම මෙහෙම කරපන් කිව්වොත් විනාඩියෙන් දෙකෙන් මාර කෝඩ් ගැහිල්ලක් ගහන්නෙ. මම හිතන්නෙ ඒ කන්සෙප්ට් ඉගෙන ගන්නෙ නැතුව ලැන්ග්වේජ් ටියුටෝරියල් ෆලොව් කරපු කට්ටිය.

    කන්සෙප්ට් දන්න එකාට ලැන්ග්වේජ් අතර මාරු වෙන්න හරිම ලේසි.

    තව මට හම්බෙලා තියෙනවා ආසාවට කෝඩින් ඉගෙනගත්තු එවුන්. ඒ කියන්නෙ ප්‍රෝගැමින්ග් සම්බන්ධ දෙයකට කැම්පස් තේරුනේ නැති උනත් පිසිකල් තේරිලා අමතරව ඉගෙනගත්තු එවුන්. උන් නම් මාර සාර්ථකයි. සමහර වෙලේට ප්‍රෝග්‍රැමින්ග් ඩිග්‍රි තියෙන උන්ට වඩා. එකෙක් ඒ ලෙවල් කොමර්ස් කරලා තියෙන්නෙ. ඒත් ඌට හොඳට පුලුවන්.
    ♥️♥️
     
    • Like
    Reactions: KSPathirana

    Solo Rider

    Well-known member
  • Sep 4, 2020
    35,924
    1
    157,342
    113
    98
    හෝමාගම
    මම නන් මෙ වගෙ එවා දානවට කැමති නැ
    හැම එකාම අයි ටී කරන්න ආවොත්, අපිට පාරට බහින්න වෙන්නෙ
    මේ ෆිල්ඩ් එකට එන්න එපා, මෙක හරි අමාරුයි, උබල වෙනද වගෙ ඔය පොඩි කෝපරේට් ජොබක් කරගෙන ඉදපල්ල



    මේක නිසා සමහර වෙලාවට Company වලින් ජොබ් එක ස්ථිර කරන්න මාස දෙක තුනක් ගන්නව.

    Non Technical කීවම attitudes, communication, tolerance සැහෙන්න වැදගත් වෙනව
    අදාල පුද්ගලය කොච්චර වැඩ්ඩෙක් උනත් , ටීම් එහෙක වැඩ කරන්න බැරි නන් ඌව කැපෙනව
    Non Technical නැත්නන් එවා හදාගන්න වෙනව

    Ex
    react hooks දන්නෙ නැති උනාට කමක් නැ, ඒක උගන්නන්න පුලුවන්
    එත් පොඩ්ඩ ඇත්නන් මල පනින එකෙක් එක්ක ටීම් එකෙ අනිත් එවුන් ඉන්න කැමති නැනෙ

    Software engineer කෙනෙක් විදියට මෙතනදි වෙන්නෙ ඔයා ගැටලුවට software වලින් විසදුමක් ඉදිරිපත් කරන එක. මේක හරියට කරන්න බැරි නන් අනික් දෙවල් ගැන කතා කරන එකත් තේරුමක් නෑ. Software එකක Code වලින් කරන්න තියෙන්නෙ ඇත්තටම 40%ක් වගේ ඉතුරු 60% වෙන්නෙ තමන් විසදුම නිර්මාණය කරන විදිය.

    software bass ගෙන් engineer වෙනස් වෙන්න ඕන
    දැන් හිතන්න customer මොකක් හරි ෆීච් එකක් ඉල්ලනව, එක ටෙක්නිකලි නෑ තමන් කරන framework එකෙ

    හැබැයි engineer කියන එක ඒකට solusion එකක් දෙන්න ඕන
    ප්‍රොපෝස් කරන්න ඕන
    ඒකට ඕන කරන budget, resources නැති වෙන්න පුලුවන්
    ඒක කමක් නැ
    මොනව කරලවත් බැරි නන්, ඒකට alternative විදියක් හරි දෙන්න ඔන

    නිකම්ම මේක බැහ් කියල හර්‍රියන්නෙ නැ
    ඒක තමයි උගෙ ජොබ් එක , නැතුව just code එක නෙවෙ

    අපිට ඉක්මනට ගැටලුවක් විසදගන්න පුළුවන් ඒ සම්බන්ධයෙන් අත්දැකීම් තියෙන කෙනෙක්ගෙන් ඒක ඇහුවම. හැබයි එයාට ඒ අත්දැකීම් ආපු විදිය ඔයාට ඉගෙන ගන්න බෑ. IT Field එකේ වැදගත්මක කොටස තමා ඔයා ඇයි ඒ විසදුමට ආවෙ කියන එක. ඔයාට ඕනි තැනක ගිහින් කියන්න පුළුවන් වෙන්න ඕනි ඇයි මම එහෙම කරේ මොකද්ද ඒ ගත්ත තීරණය පිටිපස්සෙ තියෙන Logic එක කියන එක. මේ කොටස අහල ඉගෙනගන්න බෑ ඒකට ඔයත් ඒ පාරෙම යන්න ඕනි. ඔය මම කිව්වෙ ඒක ඉගෙන ගන්න යන පාර. සමහර වෙලාවට අපිට ඉක්මනට විසදගන්න ඕනි වෙලාවට Senior කෙනෙක්ගෙන් අහන්නත් වෙලාව තියෙනව නන් ඔය කිව්ව විදියට කරන එකත් තීරණය කරන්න ඕනි තමන් තමා. හිර වෙලා තියෙන වැඩක් අස්සෙ ඕක තනියම කරන්න යනව කියන එක ටීම් එකටම බලපාන්න පුළුවන් දෙයක් නිසා ඒව ගැනත් සැලකිලිමත් වෙලා ඔය වැඩේ කරන්න.

    මේක හරි
    ego නන් නැති කරගන්නම වෙනව