“SeattleDataGuy” nikli bloger öz “Medium”-dakı səhifəsində yaxşı proqramçının malik olmalı yeddi bacarığından danışdı.
1. Başqasının kodunu oxumaq bacarığı
Sizdən başqa hamı kodu bərbad yazır. Buna görə də sizə ancaq fayda verəcək əla bacarıq başqasının kodunu oxumağı öyrənməkdir. Onun nə dərəcədə səliqəsiz və düşünülməmiş görünməsi vacib deyil, siz yenə də onu başa düşməlisiniz. Ən nəhayət, bu, sizin işinizdir.
Nəyə görə bu faydalı bacarıqdır? Birincisi, başqasının kodunu anlamaq bacarığı pis layihələndirmənin nə demək olduğunu görmək üçün əla imkandır. Başqasının işini təhlil edərək, siz nəyin alınıb-alınmadığını anlayırsınız. Bundan başqa, siz digər tərtibatçıların hansı kodu daha rahat başa düşdüklərini, hansılarını isə, əksinə, anlamadıqlarını dərk edirsiniz.
Nizamsız kodu oxuma bacarığı, lazım olduğu halda, yenilənmələrin yaradılması prossesini də sadələşdirir.
2. Pis layihələri duyma qabiliyyəti
Daha bir vacib bacarıq hansı layihələrin inkişaf edilməsinin mənasız olduğunu anlamaqdır. İri şirkətlərdə həmişə çoxlu layihə tərtib edilir, onların əksəriyyəti sonacan aparılmır. Biznes planında mənasız layihələr, yaxud sadəcə pis rəhbərliklə olan layihələr olur. Əlbəttə, bu, o demək deyil ki, ideya ilə razılaşmadığınız təqdirdə, dərhal layihədən imtina etməlisiniz. Lakin əgər rəhbərlik yekun nəticə ilə nə edəcəklərini normal izah edə bilmirsə, ola bilər ki, onun təklifinə güc sərf etməyə dəyməz.
Həmçinin bəzi layihələr bəzən həllin deyil, texnologiya üzərində fokuslanırlar ki, bu da lap ilk başdan onların uğurlu olmayacaqlarını anlamağa imkan verir . Bu bacarığı inkişaf etdirmək üçün pis layihələrdə ustalaşmaq lazımdır – ancaq onda siz onları seçə biləcəksiniz.
3. İclaslardan yan qaçmaq
Sizin kim olduğunuz – tərtibatçı və ya verilənlər analitiki – fərq etməz, iclaslar və görüşlər zərurətdir, çünki sizə menecerlər, yekun istifadəçilər və müştərilərlə “bir dalğada” olmağınız lazımdır. Buna baxmayaraq, belə iclasların sizin iş qrafikinizi zəbt etmək tendensiyası var. Buna görə də onlardan bəzilərindən yan gəzməyi öyrənmək vacibdir.
Ən yayılmış metod hər gün cədvəldəki iclasa ayrılan iki saatı bloklamaqdır. Daha bir üsul sakitlik və səssizlikdə işi çatdırmaq və diqqətin yayınmaması üçün hamıdan tez işə gəlməkdir.
4. “Github”dan istifadə etmək bacarığı
İnformatikanın bəzi tələbələri “GitHub”dan az qala bələkdən istifadə etməyə başlayıblar. Digərləri “GitHub”la ilk işlərində qarşılaşırlar. Onlara o, qəribə komandalar və prossesləri olan qaranlıq məsələ kimi görünür. Onlar heç vaxt etdiklərinə 100% əmin olmurlar.
Şirkətinizin hansı sistemdən istifadə etməsindən asılı olmayaraq, onu yanlış istifadə etdikdə, o, böyük əngələ çevrilir. Sadə “push” və ya “commit” çox saylı branç və forklardan ibarət tordan saatlarla çıxmağa cəhd etdiyinizə gətirib çıxara bilər. Buna əlavə olaraq, əgər “pull” komandasını unutsanız və repozitorininin son versiyasını yeniləməsəniz, maraqlı məşğuliyyət adlandıra bilməyəcəyimiz müxtəlif birləşmə münaqişələrini həll etmək məcburiyyətində olacaqsınız.
5. Sadə işlək kod yazmaq bacarığı
Gənc mühəndislər arasında bir tendensiya var – bildikləri hər şeyi bir həldə implementasiya etmək. Lakin bunu etməyə dəyməz, siz sadəcə bununla əlavə və lazımsız çətinlik yaradırsınız.
Layihələndirmənin qəliz konsepsiyaları və sadə kod arasında balans var. Layihələndirmə şablonları və obyektə səmtləndirilmiş layihələndirmə işlərin ümumi sxemində kodu sadələşdirməlidir. Lakin prosses nə qədər çox abstraksiya edir və qara qutuya yerləşdirilirsə, onu qaydaya salmaq bir o qədər çətinləşir.
6. “Yox” demək və prioritetləri düzmək bacarığı
Əslində bu, istənilən vəzifəyə aiddir. Lakin xüsusilə texniki sahə əməkdaşlarından hamıya həmişə nəsə lazım olduğu görünür.
Prioritetləşdirmə və “yox” demək bacarığı bir-birilə sıx bağlı olan bacarıqlardır. Prioritetləri düzmək şirkətə böyük təsir göstərəcək məsələlərə vaxt ayırmaq deməkdir. “Yox” demək isə digər komandanın etməli olduğu işdən qaçmaqdır.
Bu bacarığa yiyələnmək olduqca çətindir, ələlxüsus, əgər siz univeristetdən yeni məzun olmusunuzsa. Heç kəsin xətrinə dəymək istəmirsiniz, ona görə də üzərinizə artıq öhdəliklər götürürsünüz. Lakin, buna baxmayaraq, iş həmişə çoxdur və “yox” deməyi öyrənmək lazımdır.
7. Dizayn-düşüncə
Müsahibə zamanı test edilməsi qəliz və univeristetdə öyrənilməsi çətin olan bacarıq yekun istifadəçinin softunuzu necə yanlış istifadə edə biləcəyini anlamaq bacarığıdır.
Məsələn, proqramlaşdırmanın əsas hissəsi işin saxlanılması olduğu üçün, bu o deməkdir ki, çox vaxt dolaşmış kodu digəri ilə əvəz etməli olursan. Hətta sadə dəyişdirmə də obyekt, metod və/və ya API –yə hər mümkün istinadın izlənməsini tələb edir. Əks halda, siz təsadüfən mövcudluğu barədə bilmədiyiniz calanmış modulları sındıra bilərsiniz.
Daha qəliz hallarda, sizin yeni modullar və ya mikrosrvisləri tərtib etdiyiniz vaxt, tərtib etdiyinizin əməliyyat ssenarilərini xırdalığına kimi düşünmək vacibdir.
Samirə Məmmədova